Computação em Nuvem - IoT - Ambientes Inteligentes
Cloud Computing — Fog Computing — Edge Computing
Computação em nuvem (cloud computing), de maneira bastante resumida, pode ser considerada "TI como serviço", mas a definição padrão foi cunhada pelo NIST (National Institute of Standards and Technology) e pode ser lida em inglês neste link e em português aqui no site em definição e resumo do modelo de arquitetura de nuvem. No site do NIST há também uma lista de publicações relacionadas e apresentações relacionadas.
A apresentação a seguir traz os principais conceitos de cloud computing, ou computação em nuvem. O download está disponível no final desta página. O texto continua abaixo.
Em verdade, é desconcertante para
os homens o
trabalho das nuvens.
Elas não trabalham
acima das cidades: quando
há nuvens não há
cidades: as nuvens ignoram
se deslizam por sobre
nossa cabeça: nós é que sabemos que
deslizamos sob elas: as
nuvens cintilam, mas não é para
o coração dos homens.
_____________________
Ferreira Gullar
Trecho de "O trabalho das nuvens"
Os principais provedores globais de nuvem pública hoje, tanto nos segmentos IaaS como PaaS, são a Amazon AWS e a Microsoft Azure. Além deles IBM, Google e Oracle também possuem suas clouds. Em seus respectivos sites há material de treinamento, calculadora de custos e uma boa descrição do catálogo de serviços.
Para a implementação de nuvens IaaS, os principais projetos open source disponíveis hoje, em ordem de utilização no mercado, são o OpenStack, o Apache CloudStack e o OpenNebula. Eles são essencialmente middlewares, ou "sistemas operacionais", de nuvem e permitem a criação de nuvens privadas e públicas. Para nuvens PaaS o projeto open source mais usado é o Cloud Foundry, normalmente implementado sobre OpenStack ou outra plataforma de IaaS. Essas soluções open source também possuem versões especiais pagas customizadas e ampliadas por empresas como VMware, HPE e IBM. A Cloud Native Computing Foundation é a "casa" de muitas iniciativas abertas na área.
Há no mercado uma série de nuvens especializadas como, por exemplo, a Cloud9 (adquirida pela AWS) e a Codeanywhere que provem ambientes de desenvolvimento completos e customizados para diversas linguagens de programação, ou plataformas PaaS focadas em desenvolvedores como Heroku e Firebase (adquirida pela Google). Há até soluções de nuvem para se instalar em casa ou em SOHO, como a antsle, um servidor de nuvem privada para desenvolvedores; soluções open source de nuvem SaaS que podem substituir o Google Gsuite, ou o Office 365, para uso pessoal, familiar ou corporativo, tais como Nextcloud, ownCloud e Cozy Cloud, que podem ser instalados desde um servidor caseiro com pequenos computadores ARM (p.ex. RaspBerry Pi) até em data centers de nuvem pública. Aliás, por falar em servidor caseiro, para uma nuvem pessoal e personalizada há opções como Cosmos Cloud, Umbrel e Casa OS. Você pode conferir mais sobre Software como Serviço (SaaS) nesta apresentação.
Além da computação em nuvem, mais recentemente foram desenvolvidas a computação em borda (edge computing) e a computação em névoa (fog computing), impulsionadas pelas necessidades de redução da latência, diminuição de tráfego e aumento de disponibilidade trazidas pela Internet das Coisas (IoT), ambientes inteligentes, serviços de streaming e 5G. Leia mais sobre Fog & Edge Computing aqui no site.
Referências adicionais:
Além do material do NIST e das referências que constam na apresentação e no texto, um bom referencial teórico pode ser obtido no artigo "Cloud computing: state-of-the-art and research challenges", que foi publicado no Journal of Internet Services and Applications, um periódico de acesso livre (open access) da SBC — Sociedade Brasileira de Computação. Outro bom artigo de livre acesso é "A view of cloud computing" de Michael Armbrust "et al".
A Microsoft oferece gratuitamente o curso Conceitos de nuvem – Princípios da computação em nuvem com cerca de uma hora entre leitura e vídeos.
A IBM possui bastante material disponível em https://www.ibm.com/topics. A AWS fornece diversos cursos gratuitos através da AWS Academy caso você seja estudante de uma instituição participante.
Há mais referências sobre tópicos específicos a seguir.
Prática com nuvem
Esta seção ainda está em desenvolvimento, mas você já encontra as seguintes práticas aqui no site...
PaaS — O Microtutorial de Containers Docker inclui a ativação dos serviços na nuvem Microsoft Azure, no modelo PaaS.
IaaS — O Tutorial - Servidor Linux básico na nuvem Microsoft Azure inclui a ativação dos serviços na nuvem Microsoft Azure, no modelo IaaS.
IoT e Ambientes Inteligentes — Smart Cities, Indústria 4.0, Smart Farms, etc.
FIWARE: Plataforma europeia para Internet do Futuro em especial o desenvolvimento de soluções para Smart Cities e Smart Environments.
A melhor maneira de começar seu projeto utilizando o FIWARE é usar o FIWARE Descomplicado, do prof. Fábio Cabrini.
O FIWARE Descomplicado é uma "ferramenta para a instanciação dos principais GEs (Generic Enablers) destinados a operação como back-end para aplicações de IoT (Internet of Things) com persistência de dados. O FIWARE Descomplicado é destinado exclusivamente para atividades de pesquisa e desenvolvimento de PoCs (Proof of Concepts) que implementam soluções baseadas no processamento de informações de contexto que utilizam o NGSIv2 (Next Generation Service Interfaces)."
Helix é uma plataforma brasileira open source focada no desenvolvimento de soluções para ambientes inteligentes, baseada no FIWARE. Ela foi desenvolvida tendo em mente startups e empresas que querem desenvolver PoCs e MVPs, além do uso didático e de pesquisa acadêmica em IoT e smart environments. Vale a pena conhecer! A versão focada para uso educacional e para testes é a Helix Sandbox NG.
Veja o artigo Helix SandBox: An Open Platform to Fast Prototype Smart Environments Applications, publicado no evento "2019 IEEE 1st Sustainable Cities Latin America Conference (SCLA)" pelo prof Fábio Cabrini, criador e ex-CEO do Helix, com vários co-autores, inclusive este professor.
E também Arquiteturas de Fog Computing para Internet das Coisas nas Plataformas Fiware e Helix publicado por mim e pelo Prof. Fábio Cabrini no FTT Journal of Engineering and Business em 2019. Leia mais sobre Fog & Edge Computing aqui no site.
Aprenda a utilizar a plataforma Helix Sandbox através da documentação repleta de atividades práticas disponível no Github do Helix Sandbox NG.
Microsoft Azure: site sobre IoT em português, site sobre IoT em inglês, Azure IoT Suite (case studies), demo do sistema de elevadores da ThyssenKrupp.
IEEE Xplore Readings in Smart Cities: publicação online mensal gratuita do IEEE sobre Smart Cities. Todo mês há um tema específico e durante 30 dias há acesso gratuito aos papers indicados. Basta o cadastro gratuito para o recebimento do boletim mensal por e-mail.
IEEE Xplore Digital Library Courses on IoT [link via portal Capes]: série de cursos online sobre IoT, em inglês, com acesso disponível somente através de assinatura institucional, portanto, o modo mais prático de acessar no Brasil é através de uma instituição com acesso ao Portal Capes.
Embarcados - artigos sobre Internet das Coisas no Embarcados.
JISA - Journal of Internet Services and Applications - esse journal da SBC é publicado pela Springer na modalidade open access. Confira as coleções de artigos sobre Smart Cities, IoT e Middleware para IoT.
Industrial Internet Consortium, que também absorveu as atividades do OpenFog Consortium, fomentando a adoção de fog computing e industrial IoT (IIoT).
Data centers e HPC — High Performance Computing
Livros:
O livro The Datacenter as a Computer: Designing Warehouse-Scale Machines, Third Edition está disponível gratuita e legalmente. A autoria é de Luiz André Barroso, brasileiro, atual VP de engenharia do Google e que ganhou o ACM Eckert Mauchly Award de 2020. Completam a lista de autores Urs Hölzle e Parthasarathy Ranganathan, também da Google.
O livro Building a Modern Data Center Principles and Strategies of Design, de Scott D. Lowe, James Green e David Davis, também está disponível gratuitamente no site da ActualTech Media.
Vídeos, fotos, whitepapers, etc.:
Equinix: Vídeo do Tour no data center IBX SP3 da Equinix na grande São Paulo. Um dos maiores data centers da América Latina. Ou na versão mais curta e um pouco mais antiga. Veja também o Vídeo Tour - IBX SP4 e o álbum de fotos interativo do data center SP4, bem como o Vídeo Tour - IBX SP2. A seção de recursos do site da Equinix também é bastante rica em conteúdo.
Google Data Centers (inglês): página principal, conhecendo um data center do Google com o Street View - guia em vídeo, conhecendo um data center do Google com o Street View, artigo na revista wired, galerias de fotos, Google Environment - questões ambientais e de eficiência energética. E também o novo projeto The Data Center Mural Project: Home of "The Cloud" que visa levar um pouco de arte aos data centers e também um vídeo e outro vídeo que mostram um pouco dos data center por dentro. E se quiser ver um vídeo em 360º, que fica ainda melhor com um óculos de realidade virtual, confira o vídeo Google Data Center 360º Tour.
Microsoft data center Tour - Site da Microsoft sobre seus data centers e nuvem.
Open Compute Project - Projeto criado pelo Facebook para um projeto aberto de data center, que atualmente inclui outros projetos também.
HPC — Computação de alto desempenho:
Top500.org - lista dos 500 mais poderosos supercomputadores.
Green500.org - lista dos 500 supercomputadores mais eficientes do ponto de vista do consumo de energia (integrado ao Top500).
HPCG - High Performance Conjugate Gradients é um conjunto de benchmarks e um ranking para computação de alto desempenho complementar ao Top500. Seu ranking também pode ser acessado através do Top500.
Graph500 - Complemento ao Top500 voltado a aplicações com uso de dados intensivo.
Storage:
SNIA - Storage Networking Industry Association e SNIA Brasil - Site internacional e brasileiro da Associação da Indústria de Redes de Armazenamento.
Temas Relacionados
Máquinas Virtuais e Containers, Microtutorial de Containers LXC/LXD e Tutorial de Containers Docker.