Você está na página 1de 26

Profissional cloud

Diferença entre Cloud e virtualização:


A virtualização é, basicamente a criação de infraestruturas virtuais a partir de uma
estrutura física, é o particionamento de um servidor físico em vários servidores lógicos, é
uma camada de abstração que é colocada entre o hardware e software (Sistema
operacional), virtualização é um produto, um software os hypervisors.

Computação em nuvem é uma filosofia, um conceito que reúne vários softwares e também
utiliza da virtualização. Uma estrutura para ser considerada nuvem precisa ter algumas
características específicas que são:
Autoserviço sob demanda, amplo acesso a rede, pool de recursos, rápida elasticidade e
serviços mensuráveis.
Eu vou explicar o que é cada uma destas características mais para frente.
O que você precisa saber agora é que virtualização não é cloud computing, então se você
está utilizando na sua rede 1000 máquinas virtuais, você não tem uma nuvem, se você tem
uma VPS contratada em um provedor, isso também não é cloud ou se você pega o seu
servidor físico e hospeda em um provedor qualquer, você não está levando seu servidor
para nuvem, isso é apenas um colocation.

Definições de cloud:
Existem algumas definições para o que é cloud, aqui vou mostrar algumas delas de
diferentes entidades:

NIST: A computação em nuvem é um modelo para habilitar o acesso por rede ubíquo,
conveniente e sob demanda a um conjunto compartilhado de recursos de computação
(como redes, servidores, armazenamento, aplicações e serviços) que possam ser
rapidamente provisionados e liberados com o mínimo de esforço de gerenciamento ou
interação com o provedor de serviços.

ABNT NBR ISO/IEC 17788:2015: A Computação em nuvem é um paradigma para habilitar


o acesso, via rede, a um grupo escalável e elástica de recursos, físicos ou virtuais, com
autoprovisionamento e administração sob demanda.

Gartner: Define a computação em nuvem como um estilo de computação em que os


recursos escaláveis e elásticos de TI são fornecidos como um serviço usando tecnologias da
Internet.

Para a prova da comptia o conceito que você deve considerar é o do NIST.

Características cloud:
Estas entidades também definem algumas características essenciais para uma estrutura ser
considerada cloud, destas a que é levada em consideração para prova da comptia são as
características apresentados pelo NIST.
Segundo o NIST as características essenciais são:

Auto-serviço sob demanda: O consumidor pode provisionar por conta própria recursos de
computação, como tempo de servidor e armazenamento em rede, automaticamente e
conforme necessário, sem necessitar intervenção humana dos provedores de serviços.

Amplo acesso por rede: Os recursos estão disponíveis através da rede e são acessados
através de mecanismos padronizados que promovem o uso por dispositivos, clientes leves
ou ricos de diversas plataformas (como smartphones, tablets, laptops ou desktops).

Agrupamento de recursos: Os recursos de computação do provedor são agrupados para


atender a múltiplos consumidores em modalidade multi-inquilinos, com recursos físicos e
virtuais diferentes dinamicamente atribuídos e reatribuídos conforme a demanda dos
consumidores. Há uma certa independência de localização geográfica, uma vez que o
consumidor em geral não controla ou conhece a localização exata dos recursos fornecidos
(como armazenamento, processamento, memória e comunicação de rede), mas pode ser
capaz de especificar a localização em um nível de abstração mais alto (como país, estado
ou datacenter).

Elasticidade rápida: Os recursos podem ser provisionados e liberados elasticamente, em


alguns casos automaticamente, para rapidamente aumentar ou diminuir de acordo com a
demanda. Para o consumidor, os recursos disponíveis para provisionamento muitas vezes
parecem ser ilimitados e podem ser alocados em qualquer quantidade e a qualquer tempo.

Serviço mensurado: Os sistemas na nuvem automaticamente controlam e otimizam o uso


dos recursos através de medições em um nível de abstração apropriado para o tipo de
serviço (como armazenamento, processamento, comunicação de rede e contas de usuário
ativas). A utilização de recursos pode ser monitorada, controlada e informada, gerando
transparência tanto para o fornecedor como para o consumidor do serviço utilizado.

A ABNT coloca uma característica a mais e descreve algumas delas de forma diferente:

Acesso amplo via rede: Característica na qual os recursos físicos ou virtuais estão
disponíveis através de uma rede e são acessíveis através de mecanismos-padrão que
permitam seu uso por plataformas de cliente heterogêneas. O foco desta característica-
chave é mostrar que a computação em nuvem oferece um alto nível de conveniência,
através da qual os usuários podem acessar os recursos físicos ou virtuais onde há
necessidade de uso, desde que a rede seja acessível por uma variedade de dispositivos,
como telefones móveis, tablets, laptops e estações de trabalho.
Serviço mensurado: Característica na qual a mensuração dos serviços de nuvem é tal que
sua utilização possa ser monitorada, controlada, relatada e cobrada. Esta é uma
característica importante e necessária para otimizar e validar o serviço de nuvem entregue.
O foco desta característica-chave é permitir que o cliente pague somente por aquilo que use.
Na perspectiva do cliente, a computação em nuvem oferece valor aos usuários ao permitir
uma troca do modelo de negócios de baixa eficiência na utilização de recursos para um
modelo de alta eficiência.

Multi-inquilinato: Característica na qual os recursos físicos ou virtuais são alocados de


forma a isolar a computação e os dados de múltiplos inquilinos, tornando-os inacessíveis a
outros. Tipicamente, dentro do contexto de multi-inquilinato, o grupo de usuários de serviço
de nuvem que compõe um inquilino, pertence à mesma organização de cliente de serviço de
nuvem. Podem existir casos em que o grupo de usuários de serviço de nuvem envolva
usuários de clientes do serviço de nuvem diversos, particularmente no caso de nuvens
públicas e nuvens comunitárias. Uma determinada organização de cliente de serviço de
nuvem, porém, pode ter vários inquilinatos entre um único provedor do serviço de nuvem,
representando grupos diversos dentro da organização.

Autosserviço sob demanda: Característica na qual um cliente do serviço de nuvem pode


provisionar capacidades de computação, quando necessário, de forma automática ou com
interação mínima com o provedor do serviço de nuvem. O foco desta característica-chave é
demonstrar que a computação em nuvem oferece aos usuários uma redução relativa nos
custos, tempo e esforços necessários para realizar uma ação, já que concede ao usuário a
habilidade de fazer o que precisa, quando precisa, sem que sejam necessárias interações
humanas adicionais ou sobrecarga.

Elasticidade e escalabilidade rápidas: Característica na qual recursos físicos ou virtuais


podem ser ajustados, rápida e elasticamente, muitas vezes automaticamente, para aumentar
ou reduzir recursos. Para o cliente do serviço de nuvem, os recursos físicos ou virtuais
disponíveis para provisionamento normalmente aparecem como sendo ilimitados e podem
ser adquiridos em qualquer quantidade, a qualquer tempo, automaticamente, sujeitos às
restrições do acordo de serviços. O foco desta característica é, portanto, demonstrar que a
computação em nuvem implica que o usuário não mais necessita se preocupar com
recursos limitados e pode não se preocupar com planejamento de capacidade.

Agrupamento de recursos: Característica na qual os recursos físicos ou virtuais de um


provedor do serviço de nuvem podem ser agregados de modo a servir a um ou mais clientes
do serviço de nuvem. O foco desta característica-chave é demonstrar que os provedores do
serviço de nuvem podem suportar o multi-inquilinato enquanto, simultaneamente, usam
abstrações para mascarar para os clientes a complexidade do processo. Do ponto de vista
do cliente, tudo o que se sabe é que o serviço funciona, embora não se tenha controle ou
conhecimento sobre como os recursos estão sendo oferecidos ou onde estão localizados.
Isso libera parte da carga de trabalho do cliente, como requisitos de manutenção, para o
provedor. Mesmo com este nível de abstração,
convém apontar que os usuários podem ainda ser capazes de especificar a localização em
um nível de abstração maior (por exemplo, país, estado ou centro de processamento de
dados).

Os Papéis e Atividades do Profissional cloud

Na computação em nuvem é necessário diferenciar os requisitos de determinadas partes.


Essas partes são entidades que incorporam os papéis, os papéis por sua vez são conjuntos
de atividades. Todas as atividades relacionadas a computação em nuvem podem ser
divididas em três grandes grupos segunda a ABNT e cinco grupos segundo o NIST
Eu prefiro a definição da ABNT, mas para a prova da comptia você deve considerar o NIST
sempre.

Para o NIST

Consumidor de nuvem: Um consumidor em nuvem representa uma pessoa ou


organização que mantém uma relação comercial com o fornecedor da nuvem, e usa o
serviço. Um consumidor de nuvem procura o catálogo de serviços de um provedor de
nuvem, solicita o serviço apropriado, configura contratos de serviço com o provedor da
nuvem e usa o serviço. O consumidor em nuvem pode ser cobrado pelo serviço fornecido e
precisa organizar os pagamentos de acordo. Dependendo dos serviços solicitados, as
atividades e os cenários de uso podem ser diferentes entre os consumidores da nuvem.

Provedor de nuvem: Um provedor de nuvem pode ser uma pessoa, uma


organização ou uma entidade responsável por disponibilizar um serviço aos consumidores
de nuvem. Um provedor de nuvem cria o software / plataforma / serviços de infraestrutura
solicitados, gerencia a infraestrutura técnica necessária para fornecer os serviços,
providencia os acordos de níveis de serviço (SLA) e protege a segurança e a privacidade
dos serviços.

Broker de nuvem: Uma entidade que gerencia o uso, o desempenho e a entrega de


serviços na nuvem e negocia relações entre o provedor de nuvem e consumidor de nuvem.

Auditor: Um auditor de nuvem é uma parte que pode realizar uma avaliação
independente de serviços na nuvem, informações de sistemas operacionais, desempenho e
segurança de uma implementação de computação em nuvem. Um auditor da nuvem pode
avaliar os serviços fornecidos por um provedor de nuvem em termos de controles de
segurança, impacto de privacidade, desempenho e aderência aos parâmetros do acordo de
nível de serviço (SLA).

Operadora de nuvem: Uma operadora de nuvem atua como um intermediário que


fornece conectividade e transporte de serviços na nuvem entre consumidores de nuvem e
provedores de nuvem. As operadoras da nuvem fornecem acesso aos consumidores
através de redes, telecomunicações e outros dispositivos de acesso. Por exemplo, os
consumidores em nuvem podem obter serviços em nuvem através de dispositivos de
acesso à rede, como computadores, laptops, telefones celulares, etc. A distribuição de
serviços na nuvem é normalmente fornecida por operadoras de rede e telecomunicações ou
por um agente de transporte.

Segundo a ABNT

Cliente do serviço de nuvem: Uma parte, pertencente a uma relação de negócios, cujo
objetivo é a utilização de serviços de nuvem. A relação de negócios é estabelecida com um
provedor do serviço de nuvem ou um parceiro de serviço de nuvem. As atividades-chave de
um cliente do serviço de nuvem incluem, mas não estão limitadas a, usar serviços de
nuvem, realizar a administração de negócios e administrar a utilização dos serviços de
nuvem.

Parceiro de serviço de nuvem: Uma parte engajada no suporte a, ou auxílio a, atividades


exercidas tanto pelo provedor do serviço de nuvem quanto pelo cliente do serviço de nuvem,
ou ambos. As atividades de um parceiro de serviços de nuvem são variadas, dependendo
do tipo de parceiro e de sua relação com o provedor do serviço de nuvem e o cliente do
serviço de nuvem. Exemplos de parceiros de serviço de nuvem incluem o auditor de nuvem
e o agente de serviço de nuvem.

Provedor do serviço de nuvem: Uma parte que disponibiliza os serviços de nuvem. O


provedor do serviço de nuvem foca nas atividades necessárias à provisão de serviços de
nuvem e nas atividades necessárias para garantir sua entrega ao cliente do serviço de
nuvem, assim como a manutenção dos serviços de nuvem. O provedor do serviço de nuvem
executa um conjunto extenso de atividades (por exemplo, provisão de serviços, implantação
e monitoração dos serviços, gestão do plano de negócios, fornecimento de dados para
auditoria, etc.), assim como incorpora inúmeros subpapéis (por exemplo, gerente de
negócios, gerente de serviços, provedor de rede, gerente de segurança e risco, etc.)

Tipos de Nuvem

Infraestrutura como Serviço (IaaS – Infrastructure as a Service): O recurso fornecido ao


consumidor é provisionar processamento, armazenamento, comunicação de rede e outros
recursos de computação fundamentais nos quais o consumidor pode instalar e executar
softwares em geral, incluindo sistemas operacionais e aplicativos. O consumidor não
gerencia nem controla a infraestrutura na nuvem subjacente mas tem controle sobre os
sistemas operacionais, armazenamento, e aplicativos instalados, e possivelmente um
controle limitado de alguns componentes de rede (como firewalls).

Software como Serviço (SaaS – Software as a Service): O recurso fornecido ao


consumidor é o uso de aplicações do fornecedor executando em uma infraestrutura na
nuvem. As aplicações podem ser acessadas por vários dispositivos clientes através de
interfaces leves ou ricas, tais como um navegador web (como em e-mail baseado na web),
ou por uma interface de programação. O consumidor não gerencia nem controla a
infraestrutura na nuvem subjacente, incluindo rede, servidores, sistemas operacionais,
armazenamento, ou mesmo recursos individuais da aplicação, com a possível exceção de
configurações limitadas por usuário.

Plataforma como Serviço (PaaS – Platform as a Service): O recurso fornecido ao


consumidor é instalar na infraestrutura na nuvem aplicativos criados ou adquiridos pelo
consumidor, desenvolvidos com linguagens de programação, bibliotecas, serviços e
ferramentas suportados pelo fornecedor ou compatíveis. O consumidor não gerencia nem
controla a infraestrutura na nuvem subjacente incluindo rede, servidores, sistema
operacional ou armazenamento, mas tem controle sobre as aplicações instaladas e
possivelmente configurações do ambiente de hospedagem de aplicações.

Categorias de Serviços de nuvem

Comunicação como serviço (CaaS): uma categoria de serviço de nuvem na qual as


capacidades oferecidas ao cliente do serviço de nuvem são a interação e a colaboração em
tempo real.
Computação como serviço (CompaaS): uma categoria de serviço de nuvem na qual
as capacidades oferecidas ao cliente do serviço de nuvem são a provisão e o uso de
recursos de processamento necessários à implantação e execução de softwares.
Armazenamento de dados como serviço (DSaaS): uma categoria de serviço de nuvem na
qual as capacidades oferecidas ao cliente do serviço de nuvem são a provisão e o uso de
armazenamento de dados e suas capacidades relacionadas.
Rede como serviço (NaaS): uma categoria de serviço de nuvem na qual as capacidades
oferecidas ao cliente do serviço de nuvem são a conectividade para o transporte e as
capacidades relacionadas à rede.
Banco de dados como serviço (DBaaS): uma categoria que oferece a funcionalidade de
um banco de dados semelhante ao que é encontrado em sistemas de gerenciamento de
banco de dados.

Essa categorias podem estar em mais de um tipo de nuvem, como por exemplo o
armazenamento, que pode ser como SaaS ex dropbox, google drive, ou IaaS que é o caso
do EBS da AWS.

Tipo Serviço Exemplos

Rede virtualizada AWS VPC, azure virtual network

Iaas Armazenamento de dados AWS S3, Google cloud storage

Servidores virtuais AWS EC2, azure virtual machines


Infraestrutura para desenvolvimento, Heroku, Google App Engine
implantação e execução de aplicativos
PaaS
Plataforma testes e gerenciamento de AWS Elastic Beanstalk
aplicações

Armazenamento Dados DropBox, Google Drive

SaaS Editor de textos e planilha Gsuite e Office 365

Sistema de Gestão de banco de dados AWS RDS, Google Cloud SQL

Modelos de Implantação de Nuvem

O NIST descreve quatro formas de implementação de nuvem, nuvem pública, nuvem


privada, nuvem híbrida e nuvem comunitária
Segundo o NIST:

Nuvem pública: A infraestrutura na nuvem é provisionada para uso aberto ao público em


geral. A sua propriedade, gerenciamento e operação podem ser de uma empresa, uma
instituição acadêmica, uma organização do governo, ou de uma combinação mista. Ela fica
nas instalações do fornecedor.
Dar exemplos

Nuvem privada: A infraestrutura na nuvem é provisionada para uso exclusivo por uma única
organização composta de diversos consumidores (como unidades de negócio). A sua
propriedade, gerenciamento e operação podem ser da organização, de terceiros ou de uma
combinação mista, e pode estar dentro ou fora das instalações da organização.
Nuvem privada não é virtualização e ela não precisa estar instalada localmente.
Dar exemplos

Nuvem híbrida: A infraestrutura na nuvem é uma composição de duas ou mais


infraestruturas na nuvem (privadas, comunitárias ou públicas) que permanecem entidades
distintas, mas são interligadas por tecnologia padronizada ou proprietária que permite a
comunicação de dados e portabilidade de aplicações (como transferência de processamento
para a nuvem para balanceamento de carga entre nuvens)
Dar exemplos

Nuvem comunitária: A infraestrutura na nuvem é provisionada para uso exclusivo por uma
determinada comunidade de consumidores de organizações que têm interesses em comum
(de missão, requisitos de segurança, políticas, observância de regulamentações). A sua
propriedade, gerenciamento e operação podem ser de uma ou mais organizações da
comunidade, de terceiros ou de uma combinação mista, e pode estar dentro ou fora das
instalações das organizações participantes.
Dar exemplos
*Diferenças entre nuvem privada e nuvem pública

A nuvem privada é utilizada por uma única organização, ela pode ser gerenciada pela
própria organização ou por terceiros e não precisa estar localmente na organização, pode
estar em datacenter de terceiros. Os serviços que utilizam esta nuvem são para uso
exclusivo da organização.
Segurança e arquitetura, tanto hardware como software nesta casa são mais fáceis de
serem tratados.
Exemplo nuvem privada

Na nuvem pública o serviço é oferecido por provedores, que compartilham recursos com
diferentes usuários e organizações, os provedores devem suportar uma arquitetura
multitenancy, no qual todos os usuários e aplicativos utilizam uma mesma arquitetura.
Se você criar uma estrutura com servidores redes e vários outros recursos, por exemplo na
nuvem da Amazon e configurar esse ambiente para ser acessado apenas de dentro da rede
da sua organização através de uma VPN ou até mesmo conexão direta, isso continua sendo
uma nuvem pública porque você está utilizando recursos compartilhados.

Técnicas e Métodos de distribuição de computação em nuvem


Existem técnicas e métodos de distribuição de computação em nuvem, essas técnicas são
muito importantes para quem quer realmente ser um profissional cloud.

Rede
O conceito utilizado em redes locais é o mesmo da nuvem, porém na nuvem a camada de
rede é disponibilizada como serviço, mas o endereçamento de rede que você utiliza na rede
local pode ser mantido ao migrar para nuvem, configurações de redes e sub-redes são
exatamente iguais, apenas no momento de configurar uma sub-rede você não irá precisar
configurar VLANs em switch, configurar roteadores físicos, tudo isso é abstraído como
software.
Com esse método é possível você criar nuvens híbridas sem precisar fazer qualquer
alteração na sua rede local, criando uma extensão da sua rede local na nuvem pública.

Automação ou self-service
A capacidade do provedor tem de disponibilizar recursos e serviços para o usuário sem que
o usuário precise solicitar este recurso ao provedor de serviços, de forma que tudo ocorra
automaticamente, isso serve para adicionar e remover recursos.

Rápida Elasticidade
A elasticidade rápida só é possível por causa da automação, isso significa que quando um
sistema exigir mais recurso computacional, este recurso será disponibilizado rapidamente e
de forma automatizada, e no momento que este recurso não for mais necessário ele será
devolvido ao provedor de serviços.
Um exemplo é o auto-scaling da AWS que permite esta escala automaticamente.
Federação
A federação de identidades permite que clientes da nuvem usem suas identidades
(usuários) para ter acesso seguro aos recursos da nuvem, um exemplo é a integração com o
Active director da microsoft, assim os usuários do AD podem logar na nuvem e receber suas
permissões de acesso conforme for definida pelo administrador da nuvem, isso também é
conhecido como single sign-on (SSO), o SSO representa para os usuários um número
menor de credênciais para controlar aumentando assim a segurança.

Desafios técnicos e Riscos


Do parecer técnico existem grandes desafios e riscos na utilização da computação em
nuvem, dentre eles os principais são:
Falta de interoperabilidade e aprisionamento: O desafio de escolher um provedor de
nuvem e ficar dependente dele é muito grande por parte da maioria dos usuários, porém
existem diversas técnicas para não ficar preso a um provedor de nuvem, uma delas é a
utilização de containers e a utilização de multi cloud.

Incompatibilidade entre aplicações: Muitos aplicativos legados se torna inviável de serem


migrados para nuvem ou muitas vezes acabam não utilizando o melhor que a nuvem
disponibiliza.

Dificuldade em obedecer normas regulatórias: Muitas organizações têm dificuldades em


migrar seus sistemas para nuvens públicas devido a normas e contratos que limitam o uso
da computação em nuvem, uma saída para isso pode ser o uso de nuvens privadas.

Segurança inadequada: Para muitos a segurança pode ser um problema para adoção da
computação em nuvem, mas hoje, os grandes provedores de nuvem tem as maiores
certificações de segurança na área, algumas delas praticamente impossíveis de se ter nos
datacenters da maioria das empresas.

Para a maioria das organizações envolvidos com projetos de computação em nuvem, os


desafios técnicos devem ser superados naturalmente, não basta ter desafios técnicos, temos
que comunicar como será a integração da organização com a nuvem. Os desafios técnicos
devem ser vencidos pelos provedores.

Mitigar riscos

Alguns cuidados devem ser tomados na hora adquirir serviços de um provedor de


computação em nuvem:
● Saber como é feito o acesso dos usuários.
● Ver se o provedor obedece às normas de regulação.
● Saber como os dados são distribuídos.
● Qual o processo para recuperação.
● Quais os níveis de suporte oferecidos.
● Entender a disponibilidade do provedor a longo prazo.
Muitos riscos precisam ser mitigados, vou reforçar algumas áreas como Armazenamento,
Desempenho, Integração de dados e Segurança.

Armazenamento
Grande parte dos provedores de nuvem pública disponibilizam para fazer upload e download
de dados para os storages por meio de SSL, você ainda pode utilizar sua própria biblioteca
de criptografia ou ainda criptografar os dados com tecnologias dos próprios provedores de
nuvem.
Eles oferecem ainda suporte a autenticação de usuários, grupos e APIs para controlar os
acessos aos dados com ACLs para conceder diferentes permissões de acesso e a geração
de logs que mostram tudo que aconteceu com os seus dados pode ser muito útil para
auditoria.
A agilidade na transferência dos dados por meio de API, console de linha de comando e
interfaces gráficas, significa que você pode disponibilizar soluções de recuperação de
desastres rapidamente e até utilizar soluções híbridas.

Desempenho
A obtenção de recursos em larga escala é um desafio para qualquer organização,
principalmente para acesso de baixa latência a grandes volumes de dados, grande parte dos
provedores de nuvem já disponibilizam unidades de estado sólido (SSD) para
armazenamento que oferecem tempo de resposta muito mais rápidos que as mídias
tradicionais.
Se você precisar distribuir um conteúdo globalmente, como vídeo, atualização de software,
sites, imagens ou outro conteúdo em grande escala, você pode contar com um serviço de
entrega de conteúdo (CDN) que oferece uma boa experiência com baixa latência para seus
usuários.
Para garantir o desempenho dos seus serviços, você deve distribuir a carga utilizando o
serviço de balanceamento com escalabilidade e gerenciamento automático aumentando
muito o desempenho e garantir a disponibilidade dos seus serviços.

Integração de dados
Grandes volumes de dados são muito difíceis de serem gerenciados e analisados, porém a
maioria dos provedores de nuvem pública já oferecem serviços de bancos de dados, tanto
relacionais com não relacionais.
Para bancos de dados relacionais, eles disponibilizam cópias de réplicas para grandes
análises de dados, não comprometendo assim o desempenho da sua aplicação, e ainda
recurso de espelhamento distribuído em diferentes pontos para aumentar a disponibilidade e
segurança dos dados.

Segurança

Qualquer sistema baseado em computação precisa de algum nível de segurança, alguns


requisitos básicos de segurança devem ser cumpridos, que são eles, confidencialidade,
disponibilidade, autenticidade, integridade e não repúdio.
Para aplicativos que armazenam, processam e transmitem informações financeiras e
cartões de crédito, a conformidade do provedor é muito importante, algumas normas ajudam
na implantação desses aplicativos em nuvem, a PCI DSS nível 1 é uma delas.É possível se
adequar a essas normas em provedores de nuvem pública.

Arquitetura de Aplicações

Para um melhor aproveitamento da computação em nuvem uma aplicação deve ser multi-
tenancy ou multi-inquilino e o que é uma aplicação multi-tenancy.
Vou falar sobre o que exatamente é arquitetura Multi-tenant e Single Tenants:
Multi-tenant é uma arquitetura onde várias empresas compartilham a mesma instância para
armazenar seus dados. Esta instância geralmente está dividida (ou particionada) para evitar
que as empresas acessem as informações da outra. Isto é como um prédio alto, onde as
plantas de chão geralmente são iguais, mas pequenas mudanças estéticas podem ser feitas
para as unidades individuais. Mudança significativa tem um custo muito maior.
Single Tenants é uma arquitetura onde cada empresa possui sua própria instância do
aplicativo e infra-estrutura. Pense nisso como uma comunidade de bairro desenvolvida pelo
mesmo arquiteto e engenheiro onde cada família tem a capacidade de mudar e personalizar
sua propriedade conforme desejado. Ao ter uma única instância hospedada, o comprador
pode ajustar e personalizar o software para atender às suas necessidades.
Agora, temos uma definição exata com o exemplo do edifício alto e da comunidade
individual, podemos comparar imediatamente todos os benefícios e desvantagens com
nossos desafios em tempo real.

Benefícios da arquitetura Multi-tenant


Hardware e economia de energia - Um grande benefício para multi-inquilino é do lado do
custo. Com o agrupamento de recursos, existem economias consideráveis em hardware e
energia. Com arrendamento único, uma máquina física ou virtual separada precisa ser
"girada" para cada cliente.
Esforço para atualizar - Multi-tenancy forçou as atualizações a serem perfeitas, pois as
atualizações não podem exigir qualquer nível de intervenção por cliente quando milhares de
clientes são atualizados simultaneamente.
Backups e Redundância - Criar esse nível de redundância seria muito mais tecnicamente
desafiador se dezenas de milhares de clientes tiveram seu próprio servidor virtual em cada
um dos dois centros de dados.

Desvantagens da arquitetura Multi-tenant

Menos customização: como resultado de vários inquilinos executando seus negócios fora do
mesmo código e banco de dados, as empresas individuais não têm praticamente nenhuma
capacidade de personalizar o software para suas necessidades específicas.
Menos Autorização e Atraso de Tempo: as mudanças no aplicativo de software podem ser
feitas e implantada em sua empresa sem autorização, pois você está confiando na mesma
base de código que os outros inquilinos (potencialmente maiores).Além disso, os recursos e
funcionalidades futuras podem ser adiados ou removidos do roteiro do produto, pois os
provedores SaaS multi-tenant normalmente se concentram nas solicitações de recursos (e
bugs) enviadas pelos seus maiores clientes

Benefícios da arquitetura single-tenant

Máxima privacidade: há apenas uma instância para um usuário, há menos risco de outra
empresa acidentalmente ou através de espionagem corporativa obterem dados que não lhes
pertencem.
É impossível afetar as tarefas de outra pessoa. As soluções de inquilino único são mais
populares entre as empresas.
Os trabalhos com requisitos de computação intensiva podem fazer uso pleno do sistema.

Desvantagens da arquitetura single-tenant

Se o Cliente decidir executar a nuvem na premissa, eles devem suportar os custos de todo o
sistema sozinho.
Um sistema de inquilino único geralmente é mais caro do que uma solução multi-inquilino.
Um sistema de inquilino único geralmente não é o uso mais eficiente dos recursos, a menos
que seja totalmente carregado. Para cada instância, o software subjacente, como o sistema
operacional e as bibliotecas de tempo de execução, deve ser atualizado.

Segundo Cezar Taurion essa arquitetura é classificada em alguns modelos que ele chama
de inquilino isolada e multi inquilino.

Inquilino isolado: Neste modelo, cada inquilino tem seu próprio stack de tecnologia, não
havendo compartilhamento de recursos. Na prática, embora o usuário sinta a experiência de
multi-inquilino, pois a aplicação é oferecida a múltiplos clientes a partir do mesmo data
center, este modelo não é multi-inquilino. É similar ao modelo tradicional de hosting
(hospedagem), no qual cada usuário tem seu próprio conjunto de recursos computacionais e
sua própria instância da aplicação. Para uma oferta SaaS, este modelo carece de agilidade
e de elasticidade, porque adicionar um novo inquilino requer o provisionamento de sua
própria instância de hardware e de software. Também não permite economia de escala. Os
provedores que comercializam softwares no modelo tradicional podem oferecer esta opção,
sem alterar sua aplicação. Embora não seja verdadeiramente Computação em Nuvem, é um
passo nessa direção, oferecendo como atrativo a facilidade de uma rápida oferta para SaaS.

Multi-inquilino via hardware compartilhado (virtualização): Neste modelo, cada inquilino


tem seu próprio stack de tecnologia, mas o hardware é alocado dinamicamente a partir de
um pool de recursos, via mecanismos de virtualização. Bastante similar ao modelo anterior,
mas permitindo elasticidade na camada do hardware. Elasticidade é fundamental ao modelo
de Computação em Nuvem, que demanda mecanismos de alocação e liberação de recursos
de forma dinâmica. Este modelo permite uma entrada rápida na Computação em Nuvem,
principalmente por provedores de aplicações e de infraestrutura, porque não demanda
redesenho da aplicação. Entretanto, apresenta limitações, pois a unidade de alocação e
liberação de recursos é a máquina virtual onde aplicação vai operar.

Multi-inquilino via container: Neste modelo, vários inquilinos são executados na mesma
instância de um container de aplicação (um servidor de aplicações), mas cada inquilino está
associado a uma instância separada do software de banco de dados. O ambiente de
execução é compartilhado entre vários inquilinos, mas a plataforma de dados é a mesma. A
premissa do modelo é que o isolamento do banco de dados garante integridade dos dados
dos inquilinos, ao mesmo tempo em que o container de execução, por ser compartilhado,
oferece as vantagens de elasticidade e de customização. Para garantir o isolamento dos
inquilinos dentro de uma única instância do container ou servidor de aplicações, este deve
ser desenhado com funcionalidade para gerenciar a alocação de recursos aos seus
inquilinos.

Multi-inquilino via todo o stack de software compartilhado: É uma evolução do modelo


anterior, agora com todo o stack de software sendo compartilhado. Neste modelo, além do
container da aplicação, também uma única instância do banco de dados é compartilhada por
todos os inquilinos.

Tem um vídeo que eu gosto muito que explica essa arquitetura, se você quer se aprofundar
coloquei ele aqui neste módulo.

https://www.youtube.com/watch?v=S9_K1jwjo1U

Padronizações

IEEE - Institute of Electrical and Electronic Engineers colabora no incremento da


prosperidade mundial, promovendo a engenharia de criação, desenvolvimento, integração,
compartilhamento e o conhecimento aplicado no que se refere à ciência e tecnologias da
eletricidade e da informação, em benefício da humanidade e da profissão.

NIST - National Institute of Standards and Technology, em português, Instituto Nacional de


Padrões e Tecnologia, anteriormente conhecido como The National Bureau of Standards, é
uma agência governamental não regulatória da administração de tecnologia do
Departamento de Comércio dos Estados Unidos. A missão do instituto é promover a
inovação e a competitividade industrial dos Estados Unidos, promovendo a metrologia, os
padrões e a tecnologia de forma que ampliem a segurança econômica e melhorem a
qualidade de vida.

ABNT/ISO - Associação Brasileira de Normas Técnicas, um órgão privado e sem fins-


lucrativos que se destina a padronizar as técnicas de produção feitas no país.A
normalização técnica dos produtos científicos e tecnológicos documentais é fundamental
para a total e ampla compreensão e identificação dos mesmos.
A ISO tem como objetivo principal aprovar normas internacionais em todos os campos
técnicos, como normas técnicas, classificações de países, normas de procedimentos e
processos, e etc. No Brasil, a ISO é representada pela ABNT.

Cloud Security Alliance - É a organização sem fins lucrativos dedicada a definir e


conscientizar com as melhores práticas de segurança para ajudar a garantir um ambiente de
computação em nuvem mais seguro.

Perspectivas da nuvem e o valor para o negócio


Empresas que se beneficiam com a nuvem

Pequenas e médias empresas se beneficiam da computação em nuvem, porque muitas


vezes o empresário não tem recursos financeiros para os investimentos necessários em
tecnologia da informação, baseando-se na compra de hardware e software. Muitas delas
podem utilizar sistemas mais flexíveis e pagos conforme o uso, um exemplo de software é o
contaazul, a empresa não precisa comprar servidores, licença de sistema operacional, e do
software de gestão e ainda pagar por manutenções, no contaazul, você paga por número de
usuários que vão utilizar o sistema.

Grandes empresas se beneficiam da computação em nuvem otimizando o uso de recursos


computacionais, compartilhando estes recursos com outras unidades através de nuvens
privadas ou até mesmo nuvens híbridas, utilizando infraestrutura da nuvem para expandir
seus datacenters ou até mesmo substituição do datacenter local por 100% em nuvem
Como exemplo temos o netflix que hoje está 100% na Amazon Web Service.

O governo pode otimizar o uso de recursos como processamento e armazenamento,


compartilhando esses recursos com diferentes órgãos utilizando o conceito de computação
em nuvem, algumas vezes órgão diferentes possuem demandas diferentes, por exemplo a
receita federal precisa muito mais recurso em épocas de imposto de renda, depois esses
recursos podem ser compartilhados com outros órgãos.

Com a computação em nuvem, recursos de capital (CAPEX) são substituídos por despesas
operacionais (OPEX).
Então qual é a diferença entre CAPEX e OPEX?
CAPEX São despesas de capital ou investimento em bens de capital , significa um montante
de dinheiro utilizado para aquisição de bens para empresa.
É você pegar por exemplo R$ 50.000,00 e investir em um servidor para um determinado
sistema ou aplicação.

OPEX é o custo associado à manutenção de equipamentos, gastos com consumíveis e


outras despesas operacionais necessárias para o funcionamento do negócio ou sistema.

Com a computação em nuvem você não precisa de CAPEX, você utiliza apenas OPEX,
assim você gasta conforme a sua necessidade.

Sua empresa precisa migrar para Nuvem?

A Empresa

As empresas utilizam a TI para reduzir custos, aumentar a eficiência e melhorar a agilidade


organizacional com o objetivo de deixar o negócio melhor e mais lucrativo.

A Nuvem

Com a computação em nuvem este retorno é muito maior, com um custo benefício muito
melhor, fazendo com que o setor de TI seja visto como uma parceira de negócios e não um
centro de custos.
A computação em nuvem faz uso da economia em escala, neste modelo quanto maior a
produção menor o custo por unidade, a computação em nuvem altera do custo capital para o
custo operacional.

O Provedor

E também faz uso de recursos compartilhados, do ponto de vista do provedor de nuvem é


possível distribuir o custo entre os clientes que fazem uso do recurso e entregar um poder
computacional muito maior do que se o cliente tivesse adquirido um servidor dedicado para
ele.

Uma coisa muito importante é que ir para nuvem não significa colocar todo seu datacenter
na nuvem mas fazer uso das cinco características essenciais da computação em nuvem
para melhorar o seu negócio.

Para Iniciar um projeto

Na hora de iniciar um novo projeto, com o modelo de computação tradicional, você vai ter
um custo de aquisição de hardware às vezes até mesmo sistema operacional para
implementar esse no projeto e isso pode inviabilizar o seu projeto, já com a computação em
nuvem isso não é necessário, se a empresa utilizar nuvem pública basta alocar novos
recurso e pagar apenas pelo que for utilizado.
Caso a empresa adote o modelo de nuvem privada, o conceito é o mesmo, pois será
necessário alocar recursos do pool de recursos disponíveis na nuvem privada para iniciar o
seu projeto.
Um exemplo de menor custo de manutenção de hardware e sistema operacional é a
utilização de SaaS, onde o provedor de serviços é responsável por isso.

Maior escala e maior eficiência.

Hoje o grande negócio é a eficiência, muitos negócios surgem e têm crescimentos


gigantescos em apenas alguns dias, e se o seu negócio não for capaz de escalar
rapidamente vai perder a eficiência, e você vai ficar para trás.
Existem duas características da computação em nuvem que vão trazer esta escalabilidade
e forma eficaz, a flexibilidade e a elasticidade.

Com estas características você pode expandir os recursos conforme a necessidade e


também diminuir estes recursos quando não forem mais necessários.
Esta escala pode ocorrer de duas formas, escala horizontal e vertical.

Escala vertical: é a adição de recursos com memória, disco, processamento e outros.


Isso é fazer um upgrade de recursos em uma única instância onde está a sua aplicação.
Isso é menos utilizado na computação em nuvem por ser mais trabalhoso e mais caro.

Escala horizontal: é a adição de novas instâncias ao cluster, muito mais rápida e barata,
pois quando não estiver utilizando você pode rapidamente excluir esta instância e pagará
apenas o tempo que foi utilizada.

Destas duas formas a empresa obtém a capacidade de rapidamente expandir o seu poder
computacional a escalabilidade, a computação em nuvem permite a adição e remoção de
servidores, armazenamento e poder computacional

Agilidade do negócio

Ao adotar o modelo de nuvem a empresa naturalmente vai aumentar a sua agilidade


principalmente para se adaptar às alterações do mercado.
Com essa adoção a empresa vai conseguir focar mais no negócio e assim ter como reagir
às mudanças do mercado tirando proveito das oportunidades que aparecem.
Isso já vem acontecendo com o outsourcing de TI, mas é muito importante que você não
confunda outsourcing com computação em nuvem, principalmente para a prova da comptia.

Uma grande diferença é a forma de contratação destes serviços, normalmente no


outsourcing você tem um contrato com validade mínima de até 2 a 3 anos, já a computação
em nuvem você paga apenas pelo recurso que utilizou sem contratos amarrados, e isso é
um grande diferencial na hora de tomar essa decisão, a escalabilidade também é um ponto
que deve ser considerado, pois no outsourcing esta escalabilidade é mais complexa do que
na computação em nuvem.

Existem alguns outros cenários que também podem tirar proveito da computação em
nuvem, como por exemplo:

Redução do tempo de provisionamento de serviços: Para ambientes que precisam


lançar novos serviços rapidamente no mercado e sem gerar grandes custos de implantação
com a aquisição de hardwares , a computação em nuvem fornece agilidade e escalabilidade
para provisionar serviços e liberar sob demanda.

Agilidade para testar soluções: A computação em nuvem agiliza muito os ambientes de


testes e homologação porque para muitas empresas é muito difícil manter um ambiente
parecido com o ambiente de produção apenas para desenvolvimento e homologação, e com
a computação em nuvem você pode fazer isso com um custo muito baixo.

Mobilidade: Para muitas empresas manter uma estrutura para dar mobilidade com VPNs e
outros recurso se torna muito cara, porém com a nuvem você pode disponibilizar suas
aplicações globalmente de forma mais simples e barata.

Pontos importantes a considerar para migração.

Apesar de ter citado vários benefícios da computação em nuvem existem alguns pontos a
considerar na hora de avaliar se vale ou não a pena migrar uma aplicação para nuvem,
principalmente para uma nuvem pública.

O custo real: Você deve verificar se o modelo atual usado pela empresa tem um custo mais
alto do que o modelo de computação em nuvem.

Confiabilidade: É muito importante avaliar a reputação do provedor de nuvem, e também


as políticas de segurança desse provedor.

Legalidade: Nem todas as empresas podem mover suas aplicações para nuvens públicas,
e um dos motivos são os fatores legais, regulamentações do tipo de negócio ou país que a
empresa opera, que não permitem que os dados estejam localizados fora do país.

Estes 3 aspectos precisam ser levados em consideração na hora de criar um projeto de


nuvem, mas confiabilidade e legalidade são mais simples de se chegar a uma conclusão
porém o custo real é mais complexo, precisamos calcular o custo direto e o custo indireto.
Você deve saber:
Quanto de armazenamento será necessário.
Qual o poder computacional vai precisar como processamento e outros.
Quanto de tráfego vai utilizar.
O valor de licença de software.
Se vai precisar contratar pessoal para desenvolver aplicações para nuvem ou apenas
capacitar a equipe.
Se vai precisar investir dinheiro em certificações e para se adaptar às regulamentações da
empresa.

E também calcular alguns custos inesperados como customização de aplicações,


transferência de dados e custos de validação e outros, após somar tudo isso certifique que o
ROI (retorno sobre o investimento) seja favorável para a migração.

Qual o modelo ideal


Até agora eu falei vários conceitos e expliquei os modelos de nuvem, existem principalmente
pública, privada e híbrida.
Então qual o modelo ideal para o seu negócio, a escolha do modelo certo é essencial para o
sucesso da sua migração.
Eu vou falar alguns fatores de decisão e qual o modelo deve ser utilizado em cada um dos
casos.
Se você quer reduzir custos operacionais de atualização, manutenção e licenciamento de
software ou se você tem uma empresa pequena ou de médio porte mas não tem pessoal
suficiente para manter a TI mas precisa de tecnologia de ponta, ou se a empresa não dispõe
de recursos para investir em infraestrutura e precisa de tecnologia de ponta o modelo ideal é
a nuvem pública.
Mas se a empresa quer ter o controle de todo o datacenter, servidores, softwares, segurança
ou por questões legais não pode hospedar seus serviços fora da empresa aí você deve
utilizar nuvem privada.
Mas tem um outro caso que é a empresa que gosta de manter o controle dos dados locais
mas também gostaria de oferecer alguns serviços que estão disponíveis em nuvem pública,
neste caso você utiliza uma estrutura com nuvem híbrida, e isso é o que vem acontecendo
com a maioria das empresas .

Existirão outros cenários que vão aparecer para você e você deve avaliar qual o melhor
modelo a utilizar, não existe um modelo certo, depende muito do seu negócio.
E não é porque você começou em um modelo que depois não poderá mudar, existem casos
de empresas que decidiram utilizar apenas nuvem privada mas depois resolveram utilizar
alguns recursos de nuvem pública como por exemplo uma CDN, ou até mesmo ao contrário.
Também é importante lembrar que algumas empresas podem não se beneficiar migrando
seus dados para nuvem, por exemplo.

Empresas que o custo do investimento para a migração é muito alto comparado a


quantidade de benefícios.
Empresas onde a internet é muito lenta e com isso não vão consumir com eficiência os
recursos da nuvem, e isso no Brasil ainda é muito comum.

E muitos outros casos.


Objetivo da empresa

Uma empresa não vai migrar para nuvem simplesmente porque você vai chegar lá para o
seu chefe ou sócio e falar que a computação em nuvem é linda, que é tudo uma maravilha.
A empresa só vai migrar para nuvem se os objetivos organizacionais da empresa, o negócio
e os benefícios vierem em primeiro lugar.
Por isso é muito importante mapear os objetivos da empresa em primeiro lugar e verificar
qual é o modelo de serviço de nuvem ideal para a organização.

Alguns tipos de mapeamento destes objetivos são por exemplo:

Uma organização que quer reduzir custos na infraestrutura de TI e otimizar os recursos


atuais de TI através da redução da manutenção dos serviços como atualização de software
upgrade de versão, essa organização poderia migrar para um modelo SaaS.
Uma empresa que adota SaaS está abstraindo completamente o gerenciamento do
software, um exemplo é o office 365 ou o Gsuite, com eles a empresa não se preocupa mais
com atualização de software, licenciamento, instalação e distribuição dos aplicativos.

Se o objetivo é reduzir custos de infraestrutura e agilizar e otimizar o desenvolvimento de


aplicações o ideal é utilizar PaaS.

Mas se o objetivo é reduzir custos, manter o controle sobre os servidores e sistemas


operacionais e também manter o controle sobre o desenvolvimento, a solução é IaaS.

Isso é apenas uma mapeamento inicial apenas para saber o modelo de nuvem a ser
adotado e não a forma, se pública, privada ou híbrida.
Vale também lembrar que a responsabilidade por gerenciamento de roteadores, switches
físicos é responsabilidade do provedor de nuvem independente se for SaaS, PaaS ou IaaS.

Provedor de nuvem ideal

Isso é o que todo mundo quer saber, mas não existe um provedor de nuvem ideal, tudo
depende do serviço que você vai utilizar, o modelo de nuvem escolhido.
Alguns aspectos devem ser levados em consideração, como o histórico do provedor, o
feedback dos usuários, o ranking do provedor em estudos e pesquisas, verificar a
disponibilidade dos serviços do provedor também é muito importante, mas não esqueça todo
o provedor vai ter momentos que alguns serviços ou todos irão ficar fora, então veja o SLA
que o provedor oferece.
Outra coisa são as tecnologias utilizadas e oferecidas por este provedor, isso conta muito,
pois você não vai migrar sua estrutura para um provedor que utiliza equipamentos
ultrapassados e sucateados.

Vou falar alguns pontos que julgo importante verificar na hora de escolher um provedor:
Responsabilidade do provedor: Você precisa ler o contrato que o provedor disponibiliza,
ninguém faz isso, mas é lá que está escrito qual é o nível de responsabilidade do provedor.
Segurança dos dados: O que é responsabilidade do provedor e o que é sua
responsabilidade, na maioria das vezes a segurança é compartilhado, o provedor
disponibiliza as ferramentas, mas você precisa utilizá-las, conhecer as certificações que o
provedor tem na área de segurança também é muito importante.
Recuperação contra desastre: Saber se o provedor tem um plano de contingência em
caso de falha do serviço principal, isso vale mais para SaaS.
Modelo de adoção suportados pelo provedor: Verificar, e se o provedor suporta a
integração da nuvem pública com a sua nuvem privada para poder criar uma nuvem híbrida.
Modelo de controle de identidade: pesquisar os tipos de controle de acesso fornecidos
pela nuvem, saber se é possível fazer a integração de seus usuário locais com os usuários
na nuvem, utilizando o mesmo modelo de autenticação.
Manutenção dos serviços: Na hora que o provedor for fazer alguma manutenção nos
serviços como você será afetado, você precisa saber como são os procedimentos de
manutenção, e isso serve para qualquer modelo de nuvem.
Visão futura: É muito importante você saber quais são os projetos do provedor para o futuro
pois assim você já pode planejar a sua estrutura para isso, saber se tem algo que eles não
ofereçam hoje mas vão oferecer no futuro, pois essa é uma parceria de longo prazo, não
pense só no presente.
Flexibilidade: Você deve saber se o seu provedor tem flexibilidade de customização, isso é
muito importante principalmente para o modelo SaaS e também flexibilidade nos termos
contratuais, isso pode tornar a negociação menos complicada.
Desempenho: Na maioria das vezes você não sabe se a capacidade do provedor vai
satisfazer a suas necessidades, por isso muitos provedores disponibilizam um período para
você fazer testes e validar se o desempenho satisfaz as suas necessidades.
Segurança física: É muito importante procurar documentações e conhecer as certificações
que provem a segurança física dos datacenters dos provedores.

Esses pontos vão ajudar você a escolher o provedor de nuvem ideal para sua necessidade.

Adoção e os Processos da empresa

A adoção da computação em nuvem quebra o paradigma que muitas empresas têm, que se
você não tem acesso físico a infraestrutura você não é dono. Muitas empresas nasceram e
vivem a anos com essa ideia.
As empresas usam o departamento de TI muito mais de forma reativa do que de forma
proativa, precisam ver e saber o nome do técnico que vem fazer manutenção no sistema, e
isso se torna totalmente diferente quando lidamos com a computação em nuvem, é uma
mudança de paradigma, de cultura para as empresas e seus gestores.
Essa mudança de cultura é muito difícil e afeta não só os gestores, mas toda a empresa,
uma empresa com os processos bem alinhados terá uma dificuldade menor de fazer esta
mudança.
Durante essa mudança a revisão dos processos deve ser vista junto com o departamento
jurídico e administrativo, pois algumas cláusulas contratuais possivelmente tenham que ser
alteradas independente do modelo de nuvem a ser utilizado.
Neste processo alguns riscos podem ser definidos por tipos conforme a tabela.

Tipo de riscos definições exemplos

Negocio Probabilidade de perda nas operações que O provedor de nuvem fica indisponível
possa impactar o retorno do investimento causando uma perda direta no negócio
do cliente

Técnico Mudança de tecnologia que possa impactar O provedor não previu direito o
o negócio ou causar perda durante a crescimento de um inquilino que acaba
execução de um processo técnico usando todo recurso da nuvem

Legal Perda da reputação causada por uma ação Vazamento de dados do cliente causado
legal, como falha de cumprir o contrato pelo provedor

Estes riscos devem ser previstos na adoção da nuvem e previstos em contrato.

SLA

O SLA (Service Level Agreement) acordo de nível de serviço é utilizado pelas empresas a
muito tempo. e na computação em nuvem não é diferente e deve ser muito bem analisado
antes de você escolher qual o provedor de nuvem vai utilizar.
Nos provedores de nuvem pública o SLA é definido por serviço a ser utilizado, por exemplo
a AWS tem SLA para S3, outro para RDS outro para EC2 assim como a microsoft, a google,
todas estas têm diferentes SLAs para diferentes serviços,
Vou mostrar alguns exemplos de SLA da AWS e da Microsoft.

https://aws.amazon.com/pt/rds/sla/
https://aws.amazon.com/pt/ec2/sla/
https://aws.amazon.com/pt/s3/sla/

https://azure.microsoft.com/pt-br/support/legal/sla/virtual-machines/v1_6/
https://azure.microsoft.com/pt-br/support/legal/sla/storage/v1_2/

https://contaazul.com/termos/

Alguns pontos devem ser observados no SLA:

Descrição dos serviços


Custo do serviço
A responsabilidade do contratante e da contratada
Termos legais
O plano de recuperação de desastre
Descrição de onde os dados estão armazenados geograficamente
Política de segurança.
Portabilidade entre plataformas
Descrição do processo de saída do provedor

Estas são apenas alguns exemplos de itens a ser analisados em um SLA.

O que muda na empresa

Muitas empresas pensam que estão prontas para migrar suas aplicações para a nuvem,
mas é muito importante avaliar o cenário atual da empresa, principalmente a infraestrutura
de redes, servidores, estações de trabalho, treinamento de funcionários e sistema de
segurança.
Vou mostrar uma topologia simples de uma empresa que hoje utiliza o sistema em um
servidor local e está pretendendo migrar para nuvem.
Vou apontar alguns pontos de falha que devem ser analisados para essa mudança.

Uma simples topologia que aparentemente parece estar pronta para migrar para nuvem
pode ter muitos pontos de falha, muitas vezes as empresas exigem uma alta disponibilidade
dos provedores mas o maior ponto de falha está dentro da própria empresa.

Processo de validação

Um piloto sempre deve ser realizado após a empresa identificar o modelo de nuvem que vai
utilizar, para fazer uma validação o mais proxima possível da realidade.
Durante a fase de piloto, seleciona aplicações fáceis de migrar mas que tenham valor para o
negócio, não é recomendado fazer piloto com aplicações de alto risco ou aplicações de
legado.
Para saber por onde iniciar um piloto devemos considerar alguns aspectos:
Identificar os segmentos da empresa que mais vão tirar proveito da migração.
Identificar as aplicações para validar na nuvem.
identificar quem são os usuários que vão utilizar essas aplicações para fazer a validação.
Identificar os recursos TI que serão usados na migração.
Identificar os recursos financeiros que serão necessários para fazer este piloto.

Após a realização do piloto é importante documentar todos os passos e anotar os pontos


positivos e negativos, verificar o que funcionou e o que não funcionou, e tomar as
providências para resolver os problemas.

Aplicações para nuvem

Nem toda a aplicação justifica ser migrada para nuvem, um dos principais pontos é a
capacidade de elasticidade e escala horizontal, é muito importante que a empresa que vai
adotar a nuvem considere todo o ecossistema da nuvem para desenvolver sua aplicação,
tendo assim um maior proveito da escalabilidade e elasticidade que a computação em
nuvem oferece e garantindo um maior desempenho da aplicação.
A elasticidade é uma das principais características da computação em nuvem, portanto para
garantir esta elasticidade precisamos considerar alguns padrões.
Capacidade de crescimento: Para a computação em nuvem uma aplicação precisa ter a
capacidade de começar pequena e crescer conforme a sua demanda adicionando assim
mais recursos de infraestrutura.
Capacidade de demanda em momentos de pico: Uma aplicação para nuvem tem que ser
capaz de suportar picos de demanda, previsíveis ou não previsíveis sem sofrer com isso.
Um exemplo clássico de pico de demanda é a black friday para os ecommerces, essas
aplicações recebem picos de mais de 10x a quantidade de acessos que estão acostumadas
no dia-a-dia. As aplicações de nuvem são preparadas para isso devido a capacidade de
elasticidade e alocação de recursos dinâmicos.
Capacidade de Processamento Periódico: Muitas aplicações são utilizadas em apenas
um determinado período, um exemplo é o imposto de renda que recebe uma quantidade
enorme de acessos durante um período e depois fica praticamente parado, com aplicações
baseadas em nuvem, todo este poder computacional que foi utilizado durante este período,
depois pode tranquilamente ser realocado para outra demanda.

Desenvolvimento de aplicações para nuvem

Uma aplicação desenvolvida para nuvem, que quer aproveitar ao máximo os recursos da
computação em nuvem deve ser não statefull, porque uma aplicação statefull mantém a
conexão com o servidor, como na nuvem utilizamos no mínimo 2 servidores para manter a
disponibilidade e se utilizarmos escalonamento automático, não podemos garantir que o
servidor que vai responder a requisição será sempre o mesmo.
Caso a empresa opte por escolher o modelo PaaS e utilizar as APIs do provedor deve saber
que essas APIs são proprietários e dificilmente serão migradas para outro provedor sem
precisar fazer alterações no código, por esse motivo muitas empresas acabam utilizando o
modelo IaaS.
Caso a empresa escolha trabalhar no modelo IaaS, alguns aspectos devem ser analisados.
Preço e forma de pagamento: A maioria dos provedores oferece o serviço de pagar
somente pelo que for utilizado, e isso é uma grande vantagem, principalmente para quem
está iniciando.
SLA: Como falei nas aulas anteriores, o SLA deve ser muito bem analisado.
Custo de transferência: Muitas pessoas esquecem de considerar este custo na hora de
fazer o levantamento inicial, cada provedor cobra de uma forma diferente, alguns cobram
transferência de entrada outros de saída.
Suporte: Verificar os níveis de suporte que são oferecidos pelos provedores
Monitoramento: Verificar qual o nível de monitoramento é disponibilizado.

Segurança na nuvem.

Um dos temas mais polêmicos da computação em nuvem é a segurança.


Na computação em nuvem, principalmente se tratando de IaaS a responsabilidade da
segurança é compartilhada, vou mostrar alguns pontos que são de responsabilidades do
provedor e o que é responsabilidade do cliente de nuvem.
Responsabilidade do provedor:
É de proteger a infraestrutura que executa todos os serviços oferecidos pelo provedor de
nuvem. Esta infraestrutura é composta por hardware, software, redes e instalações onde
funcionam os serviços do provedor. Normalmente não é permitida entrada de clientes nos
datacenters e são fornecidos vários relatórios de auditores terceiros que confirmaram a
conformidade com uma variedade de normas e regulamentos de segurança de
computadores. Em IaaS o provedor não se responsabiliza por Sistema Operacional das
instâncias ou qualquer software que seja instalado na instância, nem mesmo configurações
de firewall.
Os provedores que fornecem SaaS ou PaaS, são responsáveis pela configuração de seus
produtos que são considerados serviços, com por exemplo DBaaS, DSaaS e vários outros
serviços. Estes serviços oferecem escalabilidade e alta disponibilidade, para estes serviços
o provedor é responsável por Sistema Operacional, correções de erro, bancos de dados,
configuração de firewall e recuperação de desastres.
Responsabilidade do cliente:
Utilizando IaaS o usuário vai provisionar servidores virtuais, armazenamento, bancos de
dados e até desktops.
Produtos que se enquadram na categoria de Infraestrutura como Serviço (IaaS) estão
completamente sob o controle do usuário e exigem que seja executada todas as tarefas de
configuração e gerenciamento de segurança necessárias.
Por exemplo em uma instância o cliente é responsável pela gestão do sistema operacional
(incluindo atualizações e patches de segurança), qualquer software ou utilitários de instalar
nas instâncias e a configuração do firewall. Estas são basicamente as mesmas tarefas de
segurança que são executadas, não importa onde os servidores estejam localizados.
Estes firewall são disponibilizados como serviços pelos provedores de nuvem.
É de responsabilidade do cliente corrigir qualquer bug de segurança que tenha a sua
aplicação que foi migrada para nuvem, isso não é responsabilidade do provedor, apesar de
muitos provedores oferecem ferramentas para aumentar essa segurança, como por exemplo
o WAF (Web Application Firewall) da AWS
Já no serviços de SaaS o cliente não precisa se preocupar com o criação e manutenção de
instâncias, aplicação de patches do sistema operacional, o provedor de nuvem cuida de
tudo isso.
Em qualquer dos tipos de serviço, o cliente é responsável por proteger suas credenciais de
acesso a conta, e para isso os provedores oferecem várias formas de aumentar a
segurança, como autenticação em multi-fator e tambem responsavel pelos dados que são
inseridos no software.

Licenciamento

Licenciamento de software é um tema muito complexo na TI tradicional, e muitas empresas


pensam que migrando para a nuvem vão ter todo o custo de licenciamento novamente,
porém na computação em nuvem existem basicamente duas formas de licenciamento de
software.
Provedor é responsável por licenciar o software: Esta é a forma mais comum, onde o
provedor de nuvem licencia o software e cobra do cliente conforme a utilização, onde este
valor está incluso no valor cobrado, neste modelo você não precisa adquirir uma licença
separadamente.
Traga sua licença: Este tipo de licença permite que você traga a licença que você já
adquiriu para a nuvem, dessa forma você acaba pagando menos pela nuvem, assim fica
mais fácil viabilizar algum projeto, isso se aplica a diversos softwares como por exemplo
oracle, windows e outros

Você também pode gostar