AWS

A AWS ou Amazon Web Services é a pioneira em serviços de computação em Nuvem (Cloud Computing) sendo atualmente a maior ou uma das maiores empresas deste segmento.

Dentre os inúmeros serviços disponíveis é possível que o seu cliente possa criar máquinas virtuais (conhecidas também como instâncias), usando o serviço EC2, armazenar dados e arquivos nas diversas modalidades do serviço EFS e S3, ou criar bancos de dados de alta performance com apenas alguns cliques no serviço chamado RDS e até mesmo microsserviços em contêineres ECS e Fargate entre inúmeras outras possibilidades.

Trabalhar com computação em nuvem tem alguns benefícios, entre eles destaco os seguintes:

Grande oferta de serviços disponíveis

A AWS oferece cerca de 200 serviços, alguns aparentemente redundantes, outros necessários para complementar um segundo ou terceiro serviço e outros essenciais.

Por exemplo se você precisa manter um site com conteúdo estático, você pode implantar um servidor instância EC2), instalar o seu serviço WEB e então disponibilizar as páginas.

Ou se preferir, usar o serviço de armazenamento e objetos AWS S3, e diretamente nele gerar uma URL de acesso WEB.

Se ambas as opções forem insuficientes, você ainda pode ativar um CloudFront ou mesmo Load Balance a frente destes serviços para melhorar a disponibilidade do seu site e ainda a segurança.

Se isso ainda for pouco, experimente usar o “Amplify” que facilita a entrega dos seus arquivos estáticos no S3.

Se você tem uma equipe de desenvolvimento (ou mesmo desenvolva sozinho) certamente vai querer conhecer os recursos DevOps da AWS como CodePipeline, CodeBuild, CodeDeploy, Code Commit, CodeStar, Code9 etc que permitem que você tenha, de forma centralizada, todas as ferramentas para integração continua, compilação, deploy e até um editor de códigos ao estilo “Visual Code” integrando tudo a uma máquina de desenvolvimento que só será cobrada durante o momento em que ela estiver ligada.

Serviços gerenciados

Dentro deste imenso leque de opções que a AWS disponibiliza você pode inventar a sua forma de trabalhar da forma que melhor te agrade ou melhor atenda aos requisitos de sua empresa.

Tomando a implantação de um site em WordPress como exemplo, nós temos infinitas possibilidades de colocar um serviço deste no ar.

Você pode usar o modo tradicional com uma instância EC2 com “LAMP”, que trata-se de apenas um servidor Linux com Apache, MySQL e PHP hospedando todas as partes do seu sistema e toda a administração sob sua responsabilidade, ou então …

Criar uma instância de banco de dados RDS MySQL com redundância, replicação, backups automáticos etc; a aplicação em um volume EFS para poderem ser distribuídos de forma segura e sem necessidade de altos custos de armazenamento; um bucket S3 para manter os arquivos estáticos com custo ainda mais baixo; um serviço WEB em uma instância EC2 de baixa capacidade porém gerenciada pelo serviço de AutoScaling que fará o trabalho de clonar sua instância tantas vezes quanto necessário (e permitido) para aguentar a carga de trabalho; e tudo por trás de um ELB (Elastic Load Balance) que fará o trabalho de escolher a melhor instância disponível para o seu cliente acessar, seja por IPv4 ou IPv6, já com um certificado SSL válido.

E eu só sugeri o “trivial”. Há muitos outros serviços gerenciados da AWS que poderiam ser usados em uma implantação destas de acordo com o projeto. Backup, Conteineres, Cache, recursos para DevOps entre outros.

Certamente o esforço para implantar cada “pedacinho” usando as ferramentas nativas da cloud serão maior, mas se você tem uma aplicação crítica, tenho certeza que você não vai se arrepender deste esforço inicial.

Global

Atualmente a Nuvem AWS abrange 102 zonas de disponibilidade em 32 regiões geográficas por todo o mundo (e crescendo com ao menos outras 4 regiões e 12 zonas sendo preparadas).

Embora isso pareça irrelevante para muitas pequenas empresas, em alguns casos você pode ter restrições contratuais com relação a ao território onde os dados do seu cliente devem estar e sendo assim,

Se você não puder usar a região de Pequim, porque sua empresa tem algum problema com o governo Chinês, você pode alocar sua estrutura em Osaka, JP, ou talvez na Melborne, AU, São Paulo, BR, Oregon, US entre outras.

E mesmo que você não tenha restrições com relação a região, essa imensa rede global permite que você possa manter seus dados próximos aos seus clientes sem complexidade.

Por exemplo seu serviço de vídeos e imagens pode estar implantado na região “Irlanda” e no entanto você ativa um serviço de CDN que fará um cache destes seus dados nas regiões mais próximas do seus clientes, independente deles estarem no Brasil, França ou qualquer outra região.

Pague pelo que consumir

Eu creio que o maior benefício do Cloud Computing é o conhecido “pague pelo que usar”.

Por exemplo você não precisa reservar 100GB nem 100TB de espaço para armazenar seus arquivos. Você apenas ativa o serviço de armazenamento adequado a sua necessidade e começa a enviar os seus arquivos. Se até o fechamento da sua fatura você só tiver 1GB armazenado, você pagará apenas por 1GB e não por 100GB.

Quando estamos implantando algum serviço, normalmente nós usamos menos recursos do que usaremos quando ele estiver em produção, então digamos que você precisa de uma máquina virtual (instância EC2) com 72 processadores. Talvez durante a instalação, configuração e até a homologação você só necessite de 8 processadores, então para que pagar por tudo de uma vez!?

Por isso que o serviço se chama EC2 (“Elastic Cloud Computing”) ou Computação em Nuvem Elástica. Você ajusta os recursos necessários e junto com eles o custo também.

Você inicia a instância com 8 vcpus, pagando apenas por eles, e quando estiver tudo pronto para o lançamento você aumenta a sua capacidade. Se em determinado momento você perceber que não precisa mais daqueles 72 processadores novamente, é só reduzir outra vez voltando a pagar menos, sem qualquer ressentimento por parte da AWS e nenhuma preocupação com quebra de contrato etc.

Freetier

Freetier é como a AWS chama o “nível gratuito” e há diversos serviços ofertados nesta modalidade.

Há aqueles com teste gratuito por um prazo curto ou , como por exemplo:

  • Amazon SageMaker – Machine learning para cada desenvolvedor e cientista de dados – grátis por 2 meses
  • Amazon LightSail – Servidores privados virtuais simplificados – grátis 3 meses
  • Amazon Workspaces – Desktops virtuais na nuvem totalmente gerenciados e seguros – grátis por 40h de uso
  • Amazon DocumentDB – O Amazon DocumentDB é um serviço de banco de dados escalável, altamente durável e totalmente gerenciado para a operação de workloads essenciais do MongoDB – grátis por 750 horas
  • Amazon EC2 – Capacidade computacional redimensionável na nuvem – grátis 750 horas
  • Amazon RDS – Serviço de banco de dados relacional gerenciado para MySQL, PostgreSQL, MariaDB ou SQL Server. – grátis 750 horas

Tem aqueles gratuitos com limitação de cota, como:

  • AWS S3 – Infraestrutura de armazenamento de objetos segura, durável e escalável – 5GB gratuitos
  • AWS EFS – Serviço de armazenamento de arquivos simples, escalável e compartilhado para instâncias do Amazon EC2 – 5GB gratuitos
  • Amazon API Gateway – Publicação, manutenção, monitoramento e segurança de APIs em qualquer escala – 1 milhão de requisições

Tem ainda alguns que são sempre gratuitos desde que você nunca ultrapasse a cota padrão:

  • Amazon CloudFront – Serviço Web para distribuição de conteúdo a usuários finais com baixa latência e altas velocidades de transferência – 1TB de transferência grátis
  • Amazon SES – Serviço econômico de e-mails na nuvem – 62mil e-mails gratuitos

E a lista não acaba ai, há muitos outros serviços que você pode testar e usar ao custo zero após criar a sua conta.

Monitoramento e Controle

Dentre as centenas de recursos, a AWS oferece inúmeras formas de monitoramento do seu ambiente e controle não só das aplicações quanto dos gastos.

Você pode direcionar os registros (logs) de suas aplicações para um ambiente centralizado e facilmente navegável como o CloudWatch,ou acompanhar as variações do uso do seu ambiente com o TrustAdvisor, manter a configuração do ambiente padronizada com OpsWorks, monitorar vulnerabilidades com Amazon Inspector e até mesmo ser notificado de variações nos custos através do AWS Budgets e olha que eu não falei nem de um décimo das funcionalidades e recursos disponíveis.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Além do mundo real