Tutorial de computação em nuvem para iniciantes: O que é & Arquitetura

O que é Cloud Computing?

Cloud Computing é definido como armazenamento e acesso de dados e serviços de computação pela Internet. Não armazena nenhum dado no seu computador pessoal. É a disponibilidade sob demanda de serviços de computador, como servidores, armazenamento de dados, rede, bancos de dados, etc. O principal objetivo da computação em nuvem é dar acesso a centros de dados para muitos usuários. Os usuários também podem acessar dados de um servidor remoto.

Exemplos de serviços de computação em nuvem: AWS, Azure, Google Cloud

Vamos aprender noções básicas de computação em nuvem com um exemplo -

Sempre que você viajar de ônibus ou trem, você pega uma passagem para o seu destino e fica sentado até chegar ao seu destino. Da mesma forma, outros passageiros também pegam a passagem e viajam no mesmo ônibus com você e isso dificilmente incomoda aonde vão. Quando sua parada chega, você desce do ônibus e agradece ao motorista. A computação em nuvem é como aquele ônibus, transportando dados e informações para diversos usuários e permite utilizar seu serviço com custo mínimo.

Neste tutorial de computação em nuvem, você aprenderá

  • Tipos de Nuvens
  • Serviços de computação em nuvem
  • Arquitetura de computação em nuvem
  • Virtualização e computação em nuvem:
  • Grid Computing Vs Cloud Computing
  • Grid Computing e Utility Computing
  • Preocupações de segurança e modelo de segurança proposto para a computação em nuvem do futuro
  • Preocupação com a privacidade
  • Estudo de caso de computação em nuvem - Royal Mail

Por que a nuvem de nomes?

O termo “nuvem” veio de um projeto de rede que foi usado por engenheiros de rede para representar a localização de vários dispositivos de rede e sua interconexão. A forma desse projeto de rede era como uma nuvem.

Por que Cloud Computing?

Com o aumento do computador e do usuário móvel, o armazenamento de dados se tornou uma prioridade em todos os campos. Hoje, as empresas de grande e pequena escala prosperam com seus dados e gastam uma grande quantidade de dinheiro para manter esses dados. Requer um forte suporte de TI e um hub de armazenamento. Nem todas as empresas podem pagar um alto custo de infraestrutura de TI interna e serviços de suporte de backup. Para eles, Cloud Computing é uma solução mais barata. Talvez sua eficiência no armazenamento de dados, computação e menor custo de manutenção tenha conseguido atrair empresas ainda maiores também.

A computação em nuvem diminui a demanda de hardware e software do lado do usuário. A única coisa que o usuário deve ser capaz de executar é o software de interface de sistemas de computação em nuvem, que pode ser tão simples quanto um navegador da Web, e a rede em nuvem cuida do resto. Todos nós já experimentamos a computação em nuvem em algum momento, alguns dos serviços em nuvem populares que usamos ou que ainda usamos são serviços de e-mail como gmail, hotmail ou yahoo, etc.

Ao acessar o serviço de e-mail, nossos dados são armazenados no servidor em nuvem e não em nosso computador. A tecnologia e a infraestrutura por trás da nuvem são invisíveis. É menos importante se os serviços em nuvem são baseados em HTTP, XML, Ruby, PHP ou outras tecnologias específicas, desde que sejam fáceis de usar e funcionais. Um usuário individual pode se conectar ao sistema em nuvem de seus próprios dispositivos, como desktop, laptop ou celular.

A computação em nuvem aproveita as pequenas empresas de forma eficaz com recursos limitados, dá às pequenas empresas acesso às tecnologias que antes estavam fora de seu alcance. A computação em nuvem ajuda as pequenas empresas a converter seu custo de manutenção em lucro. Vamos ver como?

Em um servidor de TI interno, você deve prestar muita atenção e garantir que não haja falhas no sistema para que ele funcione sem problemas. E no caso de qualquer falha técnica você é totalmente responsável; exigirá muita atenção, tempo e dinheiro para conserto. Já na computação em nuvem, o provedor de serviços assume total responsabilidade pela complicação e pelas falhas técnicas.

Benefícios da computação em nuvem

O potencial de economia de custos é o principal motivo da adoção de serviços em nuvem por muitas organizações. A computação em nuvem dá a liberdade de usar os serviços de acordo com a exigência e pagar apenas pelo que usar. Devido à computação em nuvem, tornou-se possível executar as operações de TI como uma unidade terceirizada sem muitos recursos internos.

Agora, neste tutorial de computação em nuvem, aprenderemos os benefícios da computação em nuvem. A seguir estão os benefícios da computação em nuvem:

  1. Menores custos de infraestrutura de TI e computador para os usuários
  2. Performance melhorada
  3. Menos problemas de manutenção
  4. Atualizações instantâneas de software
  5. Compatibilidade aprimorada entre sistemas operacionais
  6. Restaurar e recuperar
  7. Desempenho e escalabilidade
  8. Maior capacidade de armazenamento
  9. Aumente a segurança dos dados

Tipos de Nuvens

Existem quatro modelos de nuvem diferentes que você pode assinar de acordo com as necessidades do negócio. A seguir estão os diferentes tipos de nuvens:

Tipos de Nuvens
  1. Nuvem privada: aqui , os recursos de computação são implantados para uma organização específica. Este método é mais usado para interações dentro da empresa. Onde os recursos de computação podem ser controlados, pertencentes e operados pela mesma organização.
  2. Nuvem da comunidade: aqui , os recursos de computação são fornecidos para uma comunidade e organizações.
  3. Nuvem pública: este tipo de nuvem é usado geralmente para interações do tipo B2C (Business to Consumer). Aqui, o recurso de computação pertence, é administrado e operado pelo governo, uma organização acadêmica ou empresarial.
  4. Nuvem Híbrida: Este tipo de nuvem pode ser utilizado para os dois tipos de interação - B2B (Business to Business) ou B2C (Business to Consumer). Este método de implantação é chamado de nuvem híbrida, pois os recursos de computação são unidos por diferentes nuvens.

Serviços de computação em nuvem

As três principais ofertas de computação em nuvem são

  • Software as a Service (SaaS)
  • Plataforma como serviço (PaaS)
  • Infraestrutura como serviço (IaaS)

Empresas diferentes usam alguns ou todos esses componentes de acordo com seus requisitos.

SaaS (software como serviço)

SaaS ou software como serviço é um modelo de distribuição de software no qual os aplicativos são hospedados por um fornecedor ou provedor de serviços e disponibilizados aos clientes por meio de uma rede (Internet). SaaS está se tornando um modelo de entrega cada vez mais predominante como tecnologias subjacentes que suportam Arquitetura Orientada a Serviços (SOA) ou Web Services . Por meio da internet, esse serviço está disponível para usuários em qualquer parte do mundo.

Tradicionalmente, o aplicativo de software precisava ser adquirido antecipadamente e, em seguida, instalado em seu computador. Os usuários de SaaS, por outro lado, em vez de comprar o software, o assinam, geralmente mensalmente pela Internet.

Qualquer pessoa que precise de acesso a um determinado software pode se inscrever como usuário, seja uma ou duas pessoas ou a cada milhares de funcionários em uma empresa. O SaaS é compatível com todos os dispositivos habilitados para internet.

Muitas tarefas importantes como contabilidade, vendas, faturamento e planejamento podem ser executadas usando SaaS.

PaaS (plataforma como serviço)

A plataforma como serviço, conhecida como PaaS, fornece uma plataforma e um ambiente para permitir que os desenvolvedores criem aplicativos e serviços. Este serviço é hospedado na nuvem e acessado pelos usuários via internet.

Para entender em termos simples, vamos comparar isso com pintar um quadro, onde você recebe cores de tintas, diferentes pincéis e papel de seu professor da escola e você só precisa fazer um belo desenho usando essas ferramentas.

Os serviços de PaaS são constantemente atualizados e novos recursos são adicionados. Desenvolvedores de software, desenvolvedores da web e negócios podem se beneficiar do PaaS. Ele fornece plataforma para suportar o desenvolvimento de aplicativos. Inclui suporte de software e serviços de gerenciamento, armazenamento, rede, implantação, teste, colaboração, hospedagem e manutenção de aplicativos.

IaaS (infraestrutura como serviço)

IaaS (Infraestrutura como serviço) é um dos modelos de serviço fundamentais da computação em nuvem ao lado de PaaS (plataforma como serviço). Ele fornece acesso a recursos de computação em um ambiente virtualizado “a nuvem” na Internet. Ele fornece infraestrutura de computação como espaço de servidor virtual, conexões de rede, largura de banda, balanceadores de carga e endereços IP. O pool de recursos de hardware é extraído de vários servidores e redes geralmente distribuídos em vários datacenters. Isso fornece redundância e confiabilidade para IaaS.

IaaS (Infraestrutura como serviço) é um pacote completo para computação. Para empresas de pequeno porte que buscam cortar custos em infraestrutura de TI, o IaaS é uma das soluções. Anualmente, muito dinheiro é gasto em manutenção e compra de novos componentes, como discos rígidos, conexões de rede, dispositivo de armazenamento externo, etc., que um empresário poderia ter economizado para outras despesas usando IaaS.

O que é arquitetura de computação em nuvem?

A arquitetura de computação em nuvem é uma combinação de componentes necessários para um serviço de computação em nuvem. Uma arquitetura de computação em nuvem consiste em vários componentes, como uma plataforma front-end, uma plataforma back-end ou servidores, uma rede ou serviço de Internet e um serviço de entrega baseado em nuvem.

Vamos dar uma olhada na computação em nuvem e ver do que é feita a computação em nuvem. A computação em nuvem é composta por dois componentes front-end e back-end. O front end consiste em parte do cliente do sistema de computação em nuvem. É composto por interfaces e aplicativos necessários para acessar a plataforma de Cloud Computing ou Cloud Programming.

Arquitetura de computação em nuvem

Embora o back-end se refira à própria nuvem, ele compreende os recursos necessários para os serviços de computação em nuvem. É composto por máquinas virtuais, servidores, armazenamento de dados, mecanismo de segurança etc. Está sob o controle dos provedores.

A computação em nuvem distribui o sistema de arquivos que se espalha por vários discos rígidos e máquinas. Os dados nunca são armazenados em um único lugar e, no caso de uma unidade falhar, a outra assumirá o controle automaticamente. O espaço em disco do usuário é alocado no sistema de arquivos distribuído, enquanto outro componente importante é o algoritmo para alocação de recursos. A computação em nuvem é um ambiente distribuído forte e depende muito de um algoritmo forte.

Virtualização e computação em nuvem

A principal tecnologia de capacitação para Cloud Computing é a virtualização. A virtualização é um particionamento de um único servidor físico em vários servidores lógicos. Depois que o servidor físico é dividido, cada servidor lógico se comporta como um servidor físico e pode executar um sistema operacional e aplicativos de forma independente. Muitas empresas populares como VmWare e Microsoft fornecem serviços de virtualização, onde em vez de usar seu PC pessoal para armazenamento e computação, você usa seu servidor virtual. Eles são rápidos, econômicos e consomem menos tempo.

Para desenvolvedores de software e testadores, a virtualização é muito útil, pois permite ao desenvolvedor escrever código que é executado em muitos ambientes diferentes e, mais importante, testar esse código.

A virtualização é usada principalmente para três finalidades principais 1) Virtualização de rede 2) Virtualização de servidor 3) Virtualização de armazenamento

Virtualização de rede : é um método de combinar os recursos disponíveis em uma rede, dividindo a largura de banda disponível em canais, cada um dos quais é independente dos outros e cada canal é independente dos outros e pode ser atribuído a um servidor ou dispositivo específico em tempo real.

Virtualização de armazenamento: é o agrupamento de armazenamento físico de vários dispositivos de armazenamento de rede no que parece ser um único dispositivo de armazenamento gerenciado a partir de um console central. A virtualização de armazenamento é comumente usada em redes de área de armazenamento (SANs).

Virtualização de servidor: a virtualização de servidor é o mascaramento dos recursos do servidor, como processadores, RAM, sistema operacional, etc., dos usuários do servidor. A intenção da virtualização de servidor é aumentar o compartilhamento de recursos e reduzir a carga e a complexidade de computação dos usuários.

A virtualização é a chave para desbloquear o sistema em nuvem, o que torna a virtualização tão importante para a nuvem é que ela separa o software do hardware. Por exemplo, os PCs podem usar memória virtual para emprestar memória extra do disco rígido. Normalmente, o disco rígido tem muito mais espaço do que memória. Embora os discos virtuais sejam mais lentos do que a memória real, se gerenciados corretamente, a substituição funciona perfeitamente. Da mesma forma, existe um software que pode imitar um computador inteiro, o que significa que 1 computador pode realizar as funções igual a 20 computadores.

Grid Computing Vs Cloud Computing

Quando ligamos a ventoinha ou qualquer dispositivo elétrico, ficamos menos preocupados com o fornecimento de energia de onde vem e como é gerado. O fornecimento de energia ou eletricidade que recebemos em nossa casa viaja por uma cadeia de rede, que inclui usinas, transformadores, linhas de transmissão e estações de transmissão. Esses componentes juntos formam uma 'rede elétrica'. Da mesma forma, 'Grid Computing' é uma infraestrutura que conecta recursos de computação como PCs, servidores, estações de trabalho e elementos de armazenamento e fornece o mecanismo necessário para acessá-los.

Grid Computing é um middle ware para coordenar recursos de TI díspares em uma rede, permitindo que funcionem como um todo. É mais frequentemente usado em pesquisas científicas e em universidades para fins educacionais. Por exemplo, um grupo de estudantes de arquitetura trabalhando em um projeto diferente requer uma ferramenta de design específica e um software para fins de design, mas apenas alguns deles tiveram acesso a esta ferramenta de design, o problema é como eles podem disponibilizar essa ferramenta para o resto do alunos. Para disponibilizar para outros alunos eles colocarão esta ferramenta de design na rede do campus, agora a grade irá conectar todos esses computadores na rede do campus e permitir que o aluno use a ferramenta de design necessária para seu projeto de qualquer lugar.

A computação em nuvem e a computação em grade costumam ser confundidas, embora as funções sejam quase semelhantes, mas a abordagem de sua funcionalidade é diferente. Vamos ver como eles operam

Computação em Nuvem

Grid Computing

  • A computação em nuvem funciona mais como um provedor de serviços para a utilização de recursos do computador
  • A computação em grade usa o recurso disponível e os sistemas de computador interconectados para atingir um objetivo comum
  • A computação em nuvem é um modelo centralizado
  • A computação em grade é um modelo descentralizado, onde a computação pode ocorrer em muitos modelos administrativos
  • A nuvem é um conjunto de computadores geralmente pertencentes a uma única parte.
  • Uma grade é um conjunto de computadores pertencentes a várias partes em vários locais e conectados entre si para que os usuários possam compartilhar o poder combinado dos recursos
  • A nuvem oferece mais serviços, quase todos os serviços, como hospedagem na web, suporte de banco de dados (banco de dados) e muito mais
  • Grid fornece serviços limitados
  • A computação em nuvem é normalmente fornecida dentro de uma única organização (por exemplo: Amazon)
  • A computação em grade agrupa os recursos localizados em diferentes organizações.

Utility Computing Vs Cloud Computing

Em nossa conversa anterior em “Grid Computing”, vimos como a eletricidade é fornecida para nossa casa, também sabemos que para manter o fornecimento de eletricidade temos que pagar a conta. Utility Computing é assim mesmo, nós usamos eletricidade em casa de acordo com nossa exigência e pagamos a conta de acordo da mesma forma que você usará os serviços de computação e pagará de acordo com o uso que é conhecido como 'Utility Computing'. A computação utilitária é uma boa fonte para uso em pequena escala, pode ser feita em qualquer ambiente de servidor e requer computação em nuvem.

A computação utilitária é o processo de prestação de serviços por meio de um método de cobrança sob demanda e pagamento por uso. O cliente ou cliente tem acesso a um fornecimento virtualmente ilimitado de soluções de computação em uma rede privada virtual ou na Internet, que pode ser adquirida e usada sempre que necessário. Com base no conceito de computação utilitária, baseiam-se em computação em grade, computação em nuvem e serviços gerenciados de TI.

Por meio da computação utilitária, pequenas empresas com orçamento limitado podem usar facilmente softwares como CRM (Customer Relationship Management) sem investir pesadamente em infraestrutura para manter sua base de clientes.

Utility computing Computação em Nuvem
  • A computação utilitária se refere à capacidade de cobrar os serviços oferecidos e cobrar dos clientes pelo uso exato
  • A computação em nuvem também funciona como computação utilitária, você paga apenas pelo que usa, mas a computação em nuvem pode ser mais barata, como tal, o aplicativo baseado em nuvem pode estar instalado e funcionando em dias ou semanas.
  • Os usuários de utilitários de computação desejam ter o controle da localização geográfica da infraestrutura
  • Na computação em nuvem, o provedor tem controle total dos serviços e infraestrutura de computação em nuvem
  • A computação utilitária é mais favorável quando o desempenho e a infraestrutura de seleção são essenciais
  • A computação em nuvem é ótima e fácil de usar quando a seleção de infraestrutura e desempenho não é crítica
  • A computação utilitária é uma boa escolha para menos demandas de recursos
  • A computação em nuvem é uma boa escolha para alta demanda de recursos
  • A computação utilitária se refere a um modelo de negócios
  • A computação em nuvem se refere à arquitetura de TI subjacente

Preocupações de segurança para computação em nuvem

Ao usar a computação em nuvem, a principal questão que preocupa os usuários é a segurança.

Uma preocupação é que os próprios provedores de nuvem possam ter acesso aos dados não criptografados do cliente - seja no disco, na memória ou transmitidos pela rede.

O governo de alguns países pode decidir pesquisar dados sem necessariamente notificar o proprietário dos dados, dependendo de onde os dados residem, o que não é apreciado e é considerado uma violação de privacidade (Exemplo de programa Prism dos EUA).

Para fornecer segurança para sistemas, redes e provedores de serviços de computação em nuvem de dados juntaram-se ao TCG (Trusted Computing Group), uma organização sem fins lucrativos que lança regularmente um conjunto de especificações para proteger o hardware, criar unidades de autocriptografia e melhorar a segurança da rede. Ele protege os dados de root kits e malware.

Como a computação se expandiu para diferentes dispositivos, como unidades de disco rígido e telefones celulares, TCG estendeu as medidas de segurança para incluir esses dispositivos. Ele fornece a capacidade de criar uma política de proteção de dados unificada em todas as nuvens.

Alguns dos serviços de nuvem confiáveis ​​são Amazon, Box.net, Gmail e muitos outros.

Preocupação com privacidade e computação em nuvem

A privacidade apresenta uma forte barreira para os usuários se adaptarem aos sistemas de computação em nuvem

Existem certas medidas que podem melhorar a privacidade na computação em nuvem.

  1. A equipe administrativa do serviço de computação em nuvem poderia, teoricamente, monitorar os dados que se movem na memória antes de serem armazenados em disco. Para manter a confidencialidade dos dados, controles administrativos e legais devem evitar que isso aconteça.
  2. A outra forma de aumentar a privacidade é manter os dados criptografados no site de armazenamento em nuvem, evitando o acesso não autorizado pela internet; mesmo o fornecedor da nuvem também não pode acessar os dados.

Estudo de caso de computação em nuvem - Royal Mail

  • Assunto do estudo de caso: Usando Cloud Computing para comunicação eficaz entre a equipe.
  • Motivo do uso de Cloud Computing: Reduzir o custo realizado após a comunicação para 28.000 funcionários e fornecer recursos avançados e interface de serviços de e-mail aos seus funcionários.

O Royal Mail Group, um serviço postal do Reino Unido, é a única organização governamental do Reino Unido que atende a mais de 24 milhões de clientes por meio de 12.000 agências de correio e 3.000 locais de processamento separados. Seus sistemas de logística e encomendas em todo o mundo processam cerca de 404 milhões de pacotes por ano. E para fazer isso, eles precisam de um meio de comunicação eficaz. Eles reconheceram a vantagem da computação em nuvem e a implementaram em seu sistema. Tem mostrado um excelente desempenho na intercomunicação.

Antes de passar para o sistema Cloud, a organização estava lutando com o software desatualizado e devido ao qual a eficiência operacional estava sendo comprometida. Assim que a organização mudou para o Cloud System, 28.000 funcionários receberam seu novo pacote de colaboração, dando-lhes acesso a ferramentas como mensagens instantâneas e reconhecimento de presença. Os funcionários têm mais espaço de armazenamento do que no servidor local. Os funcionários se tornaram muito mais produtivos.

Olhando para o sucesso da Computação em Nuvem em serviços de e-mail e comunicação. A segunda jogada estratégica do Grupo Royal Mail, foi migrar de servidores físicos para servidores virtuais, até 400 servidores para criar uma nuvem privada baseada em Microsoft hyper V. Isso iria dar uma nova aparência e espaço adicional à área de trabalho de seus funcionários e também fornecer o ambiente de troca mais moderno.

Estima-se que o projeto hyper V da RMG (Royal Mail Group) economize cerca de 1,8 milhões de libras para eles no futuro e aumentará a eficiência do sistema interno de TI da organização.

Arquiteto de soluções certificado pela AWS - associado 2018

O tutorial de computação em nuvem acima cobre todas as notas básicas de computação em nuvem e os exemplos de computação em nuvem que ajudam você a entender todos os fundamentos de computação em nuvem.

Artigos interessantes...