SQL Server em RDS: As diferenças do serviço gerenciado da AWS

Bom, se você está lendo este artigo, provavelmente está querendo saber as vantagens de usar o RDS da AWS para sua engine do SQL SERVER. Para começar, caso você não saiba o que é RDS, vamos explicar seu conceito: o Amazon Relational Database Service (RDS), facilita a configuração, operação e escalabilidade de banco de dados relacionais na nuvem. Até aqui já temos bons motivos para usar o RDS para hospedar seu banco de dados. Igualmente às instâncias EC2, o RDS também possui diversos tipos de instâncias, com otimização de memória, performance ou E/S. Oferecendo seis mecanismos de banco de dados comuns: o Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle e o SQL Server.

Veja alguns benefícios para utilizar o RDS em seu SQL Server:

Fácil administração:

O Amazon RDS facilita a transição da concepção do projeto para a implantação. Assim, em poucos passos, é possível acessar recursos de um banco de dados em produção, apenas usando o console da própria AWS. Podendo ser o AWS CLI ou até mesmo a API para o RDS que a AWS disponibiliza.

Altamente escalável:

Você consegue alterar os recursos do seu RDS em apenas alguns cliques, sendo via console ou com chamadas via API. Ou seja, é possível aumentar de forma rápida e centralizada o tamanho da memória, a performance da CPU ou até mesmo o tamanho de disco, por exemplo. E o melhor de tudo, é que em muitas das vezes sem necessidade de tempo de inatividade. Também é possível executar uma ou mais réplicas de leitura no seu RDS para redirecionar o tráfego de leitura que é feito na máquina primária.

Disponibilidade e resiliência:

Atualmente, essas duas palavras vem cada vez mais ganhando importância nas estruturas em cloud. A Amazon garante que seu RDS seja executado em uma infraestrutura altamente confiável. Para este tópico, a AWS disponibiliza a configuração do seu servidor RDS em Multi-AZ. Ou seja, ela replica os dados de forma síncrona para uma instância em espera em uma zona de disponibilidade (AZ) diferente. Além disso, outros recursos que melhoram a confiabilidade do seu RDS, incluindo backups automatizados, snapshots e substituição automática de hosts no caso de uma falha de hardware.

Segurança:

Uma das vantagens de se utilizar o RDS é a facilidade no controle de acesso ao seu banco de dados pela rede. Você roda seu recurso RDS em sua Amazon Virtual Private Cloud (Amazon VPC), possibilitando isolar as instâncias de banco de dados e conectá-las à sua infraestrutura atual de forma local ou por meio de uma VPN IPsec criptografada padrão no mercado.

Custo:

Para utilização de todos esses recursos e funcionalidades citados acima o custo é baixo. E você paga apenas o que utilizar. Modelo similar ao do uso das instâncias EC2. Alguns dos benefícios de preços sob demanda, é não ter a necessidade de firmar compromissos antecipados ou de longo prazo. Algo que é mais utilizado em banco de dados de testes, podendo ser interrompidos e iniciados a qualquer momento. Ou mesmo com taxas reduzidas, fazendo uso das instâncias para seu banco de dados de forma reservada.

Falta de Gerência

É preciso também ressaltar que o RDS tem alguns poréns. Mas nada que atrapalhe o seu uso, muito pelo contrário. Isso ocorre devido a facilidade na utilização do serviço. Com isso, você não tem gerência direta do sistema operacional do banco de dados. Isso é fechado e administrado pela AWS. Ocasionando a indisponibilidade de integração de algumas features. Mas caso tenha uma licença de SQL, a AWS te disponibiliza a opção de utilizá-la no seu SQL Server, desde que ele seja configurado em uma EC2 instance. Assim, você terá gerencia total do seu banco de dados na AWS. Mas isso fica para outro artigo…

Bom, um dos recursos mais atrativos para se utilizar o SQL Server na AWS é o suporte ao modelo de licenciamento “licença inclusa”. Ou seja, não é necessário adquirir licenças do Microsoft SQL Server separadamente. O que convenhamos, tira parte da burocracia na instalação de um banco de dados, não é mesmo!? Mas caso você já tenha uma licença e queira utilizar na AWS, também há esta possibilidade.

Se você chegou até aqui, tenho certeza de que você achou uma boa ideia migrar o seu banco de dados SQL Server para o Amazon RDS, certo? E como isso é feito? Bom, nós da Darede, somos parceiros Advanced AWS e fazemos esse tipo de serviço, com toda garantia e segurança no procedimento. Ou caso você seja um aventureiro, pode usar o AWS Database Migration Service. Ele te ajuda a migrar seu banco de dados para a AWS de forma mais segura e rápida.

Então, hands on! Obrigado pela leitura!

Fique ligado em mais artigos técnicos em nosso blog!

Novidades da Semana AWS 27/07 a 31/07

Todos os dias a AWS lança uma série novidades e atualizações em seus produtos que visam melhorar a vida de seus usuários. E reunimos algumas delas que fazem mais sentido para nosso mercado e que certamente aplicaremos em nosso dia a dia. Confira!

Governança e Segurança

AWS Firewall Manager: Logs centralizados

O AWS Firewall Manager é um serviço de gerenciamento de segurança que permite a configuração e o gerenciamento centralizado de regras do firewall em todas as contas e aplicativos na organização AWS. O serviço agora permite a centralização dos logs de WAF. Ou seja, agora é possível ativar o log nas ACLs da web e ter os logs centralizados em uma única conta de forma simples.

AWS ECR: Integração com KMS

O Amazon Elastic Container Registry (ECR) é um registro de containers do Docker gerenciado permitindo o armazenamento a implantação e o gerenciamento de imagens de contêineres do Docker. Essa semana o serviço anunciou o suporte para encriptação com KMS. A criptografia de dados em repouso já era suportada peloa ECR. Porém com o uso do KMS, o serviço passa a atender requisitos como de segurança e compliance como PCI e FIPs.

AWS Security Hub: Novas Automatizações

O AWS Security Hub oferece uma visão abrangente dos alertas de segurança de alta prioridade e do status de conformidade nas contas da AWS. O serviço lançou novos controles automatizados compatíveis com PCI. Entre os serviços analisados estão AWS GuardDuty, VPC Flow, entre outros .

AWS Detective: Melhoras na Analise do VPC Flow Logs

O Amazon Detective facilita a análise, a investigação e a identificação rápidas da causa raiz de potenciais problemas de segurança ou atividades suspeitas. O serviço agora traz uma melhoria na análise de VPC Flow logs. O que permite fazer drill down em investigações e responder perguntas como: “Qual era o tráfego nesse recurso no momento ‘x’”.

Computação e Rede

AWS EFS: Integração com Kubernetes

O Amazon Elastic File System (Amazon EFS) é um sistema de arquivos NFS elástico, simples, escalável e totalmente gerenciado para uso com os serviços de nuvem AWS e locais. O serviço agora possui um driver CSI. Ele simplifica a configuração do armazenamento elástico de arquivos para os clusters EKS e Kubernetes. Isso pode acelerar a subida de microserviços efêmeros. Uma vez que o EFS “emula” um disco local para o container.

AWS Lightsail: Compativel com cPanel

O Amazon Lightsail é uma plataforma de cloud fácil de usar que oferece tudo o que você precisa para criar um aplicativo ou site. Além de um plano mensal de baixo custo. A novidade desse serviço é o suporte a cPanel e WHM, expandindo sua seleção com stacks pré-configurados. Assim facilitando a simplificação e automatização das tarefas de gerenciamento de servidor. Agora além do Plesk, você pode subir um cPanel na AWS em poucos minutos.

AWS VPC e VPN: Suporte à Tags na Criação e Permissão mais Granular

A Amazon Virtual Private Cloud (Amazon VPC) é serviço de redes virtuais na AWS, e incluem subserviços como VPN Site-to-Site gerenciada. Os serviços agora permitem a adição de tags no momento da criação do próprio serviço de forma a simplificar o processo. O AWS VPN agora possui permissionamento mais granular. Sendo possível conceder permissões mais especificas usando as tags.

AWS EC2: Novos Tipos de Instância com CPU “Amazon”

O Amazon Elastic Compute Cloud (Amazon EC2) é o serviço mais tradicional de computação na nuvem da AWS. O serviço anunciou novas instâncias com os processadores Graviton (desenvolvidos pela própria AWS) otimizadas para disco (m6gd, c6gd e r6gd). Com maior performance do que os processadores Intel, eles oferecem também menor custo. Os novos membros da família também são otimizados para performance de discos e possuem Instance Store (discos efêmeros de alto desempenho).

AWS Data Sync: Sincroniza Dados de Ambientes onPremise com Serviços AWS

O AWS Data Sync é o serviço de sincronização entre storages. Agora é possível automatizar e acelerar transferências de dados on-line entre storages de objetos em compartilhamentos onPremise (SMB/CIFS e NFS) e serviços AWS (S3, EFS, FSx for Windows).

AWS CloudFront: Identifica Cidade, Estado e Coordenadas de Origem de Requisições

O Amazon CloudFront, a CDN da AWS anunciou suporte de novos headers de Geolocation. Ou seja, agora é possível configurar a aplicação para geolocation headers adicionais fornecendo mais granularidade, estão disponíveis por exemplo: cidade, estado e coordenadas. Antes apenas o pais era disponível. Abaixo todos novos headers disponíveis:

Integração e Devops

AWS ActiveMQ: Suporta Autenticação LDAP

O Amazon MQ é um serviço gerenciado de mensageria compativel o Apache ActiveMQ. O serviço agora suporta LDAP (Lightweight Directory Access Protocol). O que permite autenticar e autorizar usuários do Amazon ActiveMQ usando serviços de diretório como o Microsoft Active Directory.

AWS S3 e CloudWatch Logs: Podem ser acessados via Visual Studio Code

O S3 e o CloudWatch Logs agora pode ser facilmente acessados pelo Visual Studio Code, usando a extensão AWS Toolkit. Você pode usar por exemplo o S3 como repositório de seus arquivos de forma simples e fácil.

AWS CodeBuild: Relatório de Teste de Cobertura e Paralelização

O AWS CodeBuild é um serviço de integração contínua gerenciado que compila o código-fonte, realiza testes e produz pacotes de software prontos para implantação. Agora o serviço traz os relatórios dos testes de cobertura em sua interface interface. Outra novidade é a execução paralela e coordenada integrada com Step Functions.

Amazon Translate: Agora traduz documentos do Pacote Office

O Amazon Translate é um serviço de tradução automática que fornece traduções de idiomas com rapidez, alta qualidade e economia. O serviço agora oferece suporte para arquivos da Microsoft Office, como o DOCX do Word, XLSX, do Excel, entre outros.

AWS Fraud Detector – Novo Serviço Lançado

O novo Amazon Fraud Detector é um serviço gerenciado que facilita a identificação de atividades online potencialmente fraudulentas em tempo real, como a fraude de pagamento online e a criação de contas falsas, por exemplo. O AWS Fraud Detector traz consigo 20 anos de experiência Amazon na detecção de Fraudes.

Databases e Big Data

AWS Elasticsearch: AI, Redução de até 80% com DataTransfer, Integração com Tableau e Excel e AI

A Amazon Elasticsearch Service é o serviço de ElasticSearch gerenciado da AWS. O serviço agora tem integração com dois dos mais poderosos aplicativos de visualização de dados: Tableau e Microsoft Excel. Outra novidade é que o serviço agora suporta a compressão para HTTP. Ou seja, é possível reduzir o tamanho dos seus documentos em até 80%, assim diminuindo o custo e aumentando a performance de transferência. A última novidade do AWS Elasticsearch é o suporte de LRank, um algoritimo de aprendizado de ranking e inteligência artificial.

AWS Kinesis Firehouse: Endpoints HTTPS e Integrações com NewRelic, Datadog e Cloud MongoDB

O Amazon Kinesis Data Firehose é a maneira mais fácil de carregar de forma confiável dados de streaming em data lakes, datastores e ferramentas de análises. O serviço agora suporta HTTP Endpoints. O que permite utilizar um serviço de entrega gerenciado para terminais HTTP tirando a necessidade de criar aplicativos consumers personalizados ou se preocupar em operar e gerenciar a infraestrutura de entrega de dados. Também já está disponível a integração com o Cloud MongoDB da Atlas. Além das ferramentas SaaS de monitoramento e APM Datadog e NewRelic.

AWS DMS: Analise Pré-Migração

O AWS Database Migration Service (DMS) ajuda você a migrar bancos de dados para a AWS de modo rápido e seguro. Agora você pode usar as enhanced premigration para identificar possíveis problemas de migração de banco de dados antes de seu início. Isso evita gasto de horas ou até dias para então perceber tais consistências.

AWS QuickSight

O Amazon QuickSight é a ferramenta de visualização/dashboard de BI da AWS. O serviço agora permite que os clientes incorporem a capacidade de criação da dashboard em aplicativos e portais de terceiros. Assim você pode incorporar os Dashboads do QuickSight em sua aplicação.

RDS SQL Server: Redução de 34% em SQL Server MultiAZ

O Amazon RDS for SQL Server facilita a configuração, a operação e a escalabilidade de implantações do SQL Server na nuvem. Nessa semana foi anunciada uma redução média 25% no custo de RDS MultiAZ para Enterprise. Caso seu RDS SQL Server Enterprise MultiAZ seja onDemand, será cobrada a redução retroativamente desde o dia 1 de julho. Caso possua reservas, mesmo não sendo “reembolsáveis”, em modelo de exceção poderemos solicitar a migração para o novo modelo até 30 de agosto de 2020.

Essas foram as novidades da semana da AWS! Semana que vem tem mais! Se preferir assista nossa live!

Veja mais artigos sobre o mundo da Cloud em nosso blog!

Novidades da semana AWS 20/07 a 24/07

Todas os dias a AWS lança uma série novidades e atualizações em seus produtos que visam melhorar a vida de seus usuários. Toda semana você receberá, um resumo das otimizações que mais fazem sentido para nossa realidade e que certamente irão aprimorar sua experiência no uso dos serviços AWS.

Governança e Segurança

Secret Manager

O Serviço Secret Manager é um cofre de senhas que permite alternar, gerenciar e recuperar facilmente credenciais de sua aplicação, como credenciais de banco de dados, senhas e chaves de APIs. Nessa semana o serviço foi avaliado e aceito no nível PROTECTED no International Road Assessment Programme (IRAP – Programa de Avaliadores Registrados em Segurança da Informação). Essa mudança faz com que o Secret Manager possa ser usado no armazenamento de dados necessários para atender aos objetivos de controle do Information Security Manual (ISM). O suporte do IRAP está de acordo com a Lei de Portabilidade e Responsabilidade dos Seguros de Saúde dos EUA (HIPAA), Padrão de Segurança de Dados da Indústria de Cartões de Pagamento (PCI DSS), entre outros.

AWS AppMesh

O AWS App Mesh é um serviço que padroniza todo o modo de comunicação de seus serviços. Assim oferecendo visibilidade de ponta a ponta e apoiando na alta disponibilidade para seus aplicativos. A novidade é que o serviço agora é elegível para o HIPAA. A que possibilita à clientes usarem App Mesh para gerenciar a comunicação entre serviços que contêm informações de saúde protegidas (PHI).

CIS Benchmark para EKS

A AWS anunciou nessa semana o novo CIS Benchmark para Amazon EKS. Ele auxilia a avaliação precisa da configuração de nodes em execução como parte de seus clusters Amazon EKS. Ou seja, agora o CIS Amazon EKS Benchmark fornece uma orientação exata para configurações de segurança de nodes para o EKS. A ferramenta kube-bench pode ser usada para rodar o benchmark

CloudWatch

O Amazon CloudWatch é um serviço de monitoramento e observação criado para engenheiros de DevOps, desenvolvedores, Site Reliability Engineers (SREs – Engenheiros de confiabilidade de sites) e gerentes de TI. A partir dessa semana, o serviço conta com novas métricas de capacidade de instancias reservadas. Ou seja, com essas novas medições, é possível monitorar com eficiência suas reservas de capacidade e assim identificar aquilo que não foi utilizado. Além de configurar alarmes no CloudWatch que irão notificar quando os limites de uso forem atingidos. Essas métricas já eram disponíveis pelo ‘Cost Explorer’. Porém agora é possível integrar com seu monitoramento com Cloudwatch.

Redes e Telecom

CloudFront

O Amazon CloudFront é o serviço de CDN (Contenet Delivery Network) da AWS, que entrega dados, vídeos, aplicativos e APIs à clientes em todo o mundo com segurança, baixa latência e altas velocidades de transferência em um ambiente de uso facilitado para desenvolvedores. O serviço agora oferece suporte a política de segurança TLS 1.2. Outra novidade é que o CloudFront fornece controle granular aprimorado para configurar headers, query strings e cookies que podem ser usados para definir o ‘cache key’ e atributos encaminhados para origem do conteúdo a partir de suas distribuições do CloudFront.
Ou seja, podemos determinar quais ‘headers’, ‘query strings’ e ‘cookies’ integrem ao cache key. Além disso, agora é possível criar uma cache policy separada da distribuição. Podendo configurar o tempo de cache para mais de uma distribuição ao mesmo tempo pelo meio de policies. Para saber mais sobre CDN e CloudFront? Recomendamos as lives #39, #42 e #46.

Amazon Connect

O Amazon Connect é uma central de telefonia na cloud, fácil de usar, e que auxilia empresas a fornecer um melhor atendimento ao cliente com economia. Infelizmente o Amazon Connect ainda não disponibiliza números nacionais brasileiros. Nessa semana o serviço anunciou o fornecimento de quatro novas APIs que permite iniciar, parar, pausar e retomar a gravação de chamadas. Outra novidade é a integração com o Salesforce Service Cloud Voice.

AWS Snowball

A familia AWS Snow oferece dispositivos físicos de computação, para migração de dados e armazenamento de borda (edge computing). A família já conta com 4 hardwares para integração com o mundo onPremise. A novidade da semana é que o AWS Snowball Edge está disponível para 11 regiões, incluindo São Paulo.

Global Acelerator

O AWS Global Accelerator é um serviço que melhora a disponibilidade e o desempenho dos seus aplicativos com usuários locais ou globais. Ou seja, ele permite subir um “listener” em São Paulo para comunicação de serviços na Virginia do Norte (EUA), por exemplo. Usando assim a rede da AWS para tráfego internacional. Agora é possível usá-lo de forma mais um ponto de entrada fixo para um Application Load Balancer e melhorar o desempenho do tráfego do usuário em até 60%. Com apenas um clique no AWS Management Console. No próprio ALB você consegue integrá-lo com o Global Accelerator em outra Região AWS.

Integração e DevOps

Amazon AppFlow

O Amazon AppFlow, serviço de integração gerenciado que permite transferir dados com segurança entre Apps de Software como Serviço (SaaS), como Slack e Salesforce e serviços AWS. Ele traz agora o suporte para novas integrações para Salesforce. Além de apresentar data transfers privados entre a AWS e Salesforce.

AWS Codebuild

O AWS CodeBuild é um serviço de integração contínua gerenciado e serverless da Amazon. Ele compila o código-fonte, realiza testes e produz pacotes de software prontos para implantação. O serviço agora oferece suporte ao acesso nos ambientes de build com o AWS Session Manager (do Systems Manager). Com esse suporte é possível acessar seus ambientes de build Linux e Windows por meio de um shell interativo baseado em navegador de um clique ou pela CLI da AWS. O CodeBuild agora usa essa sessão para seus builds.

AWS Control Tower

O AWS Control Tower automatiza a criação e configuração de seu ambiente de contas AWS. Ele usa o conceito de Landing Zones, seguindo as boas práticas para esse tipo de estratégia. Agora é possível pesquisar, classificar e filtrar todas as tabelas, além de visualizar detalhes de suas contas e unidades organizacionais (OUs) do AWS Organizations no console da AWS Control Tower.

AWS SQS

O Amazon Simple Queue Service (SQS) é um serviço de filas de mensagens gerenciado e serverless. Ele permite o desacoplamento e a escalabilidade de microsserviços, sistemas distribuídos e aplicativos sem servidor. O serviço apresenta uma nova interface, mais moderna e amigável, assim criando uma experiência do usuário.

AWS SDK for Java

O AWS SDK ajuda a eliminar a complexidade de codificação ao enviar APIs do Java para serviços da AWS. Incluindo Amazon S3, Amazon EC2, DynamoDB, AWS Lambda, entre outros. A nova versão do AWS SDK para Java V2 apresenta o Metrics Module. Esse serviço permite coletar e publicar as principais métricas de desempenho gravadas automaticamente pelo SDK. Com isso a nova versão do SDK deve substituir a antiga versão.

Systems Manager Automation

O Systems Manager Automation simplifica tarefas comuns de manutenção e implantação de instâncias do EC2 servidores onPremise e outros recursos da AWS. O serviço aumentou os limites de execução simultâneas.

AWS SAM

O AWS Serverless Application Model (SAM) é um framework de código aberto para criar aplicações serveless. (Confira a live #60). Nessa semana, o SAM CLI (Console Line Interface) foi oficialmente lançado. O SAM CLI é o binário do SAM para facilitar o desenvolvimento e envio deploy de aplicações por desenvolvedores.

AWS X-Ray

O AWS X-Ray ajuda desenvolvedores a analisar e depurar aplicações distribuídas de produção, como as criadas usando uma arquitetura de microsserviços. A novidade é uma nova ferramenta que permite a coleta de dados de rastreamento sem a necessidade da modificação no código da aplicação para no .NET e .NET Core. Ele pode ser instalado diretamente no IIS. (essa ficou com o time de Ops agora =D)

Storage, Database e Big Data

AWS EMR

O Amazon EMR é a plataforma de big data em nuvem líder do setor para processar grandes quantidades de dados usando ferramentas de código aberto. O serviço agora oferece suporte as instâncias G4, possibilitando aproveitar as GPUs NVIDIA T4 de última geração para casos de uso de machine learning e deep learning.

RDS para SQL Server

O Amazon RDS for SQL Server facilita a criação, configuração, a operação e a escalabilidade de implantações do SQL Server na nuvem. A novidade desse serviço é a possibilidade de habilitar ou desabilitar versões de TLS e Ciphers. Assim evitando exploração de vulnerabilidade em clientes que usam versões mais antigas de TLS.

RDS para MySQL

Amazon RDS facilita a configuração, a operação e a escalabilidade de implantações de MySQL na nuvem. Juntamente com o Amazon RDS para MariaDB, o serviço agora suporta instancias M5 e R5. Possibilitando o uso das gerações mais recentes dos processadores Intel. Assim aumentando a performance e reduzindo o custo.

Amazon Elasticsearch

A Amazon Elasticsearch Service é um serviço gerenciado que facilita a implantação, a segurança e a suporte de clusters Elasticsearch de forma eficaz e em grande escala. O serviço anunciou a versão 7.7. Ela aperfeiçoa a estabilidade do cluster. Assim reduzindo significativamente a quantidade de memória heap necessária para manter os segmentos do Lucene abertos. Além disso, três AZs estão agora disponíveis em novas regiões, incluindo São Paulo.

AWS Content Analysis

A AWS lançou o novo serviço AWS Content Analysis. Ele ajuda os clientes a gerar percepções significativas por meio de metadados gerados pelo Machine Learning (ML) em arquivos de vídeo. Com integrações com Amazon SageMaker e Comprehend, é possível extrair assuntos de vídeos ou criar legendas e dublagens de forma automática com Amazon Polly.

AWS EFS

O Amazon Elastic File System (Amazon EFS) é o serviço NFS da AWS, ele é elástico, simples, escalável e totalmente gerenciado para uso com os serviços de nuvem AWS e os recursos no local. O serviço aumentou a taxa de transferência de 250 MB/s para 500 MB/s por cliente. Antes a velocidade por conexão era de 100MB/s.

Amazon EBS

O Amazon Elastic Block Store (EBS) é um serviço de armazenamento de blocos (“HDs”) de alta performance fácil de usar. Ele é projetado para o uso com o Amazon Elastic Compute Cloud (EC2). Ele é usado tanto para cargas de trabalho com alta taxa de transferência de dados quanto com intenso consumo de transações em qualquer escala. Agora, o serviço pode ativar o Fast Snapshot Restore (FSR) em snapshots compartilhados.

SMB e User Productivity

Amazon Lightsail

O Amazon Lightsail é uma plataforma de “VPS” cloud fácil de usar, e que oferece tudo o que você precisa para criar um aplicativo ou site. Além de um plano mensal de baixo custo. A novidade desse serviço é a capacidade de criar e gerenciar distribuições da CDN com integração com o Amazon CloudFront, facilitando e agilizando a entrega do conteúdo do seu site para o público global.

Amazon Workdocs

O Amazon WorkDocs é um serviço gerenciado e seguro para criação, armazenamento e colaboração de conteúdo. Com o Amazon WorkDocs, você pode criar, editar e compartilhar arquivos, documentos, planilhas e outros conteúdos com facilidade. O serviço lançou uma atualização na interface mobile. Ela promete ser mais amigável e emplacar seu uso para os usuários de Android.

Alexa for business

O Alexa for Business é um serviço que permite que organizações e funcionários usem o Alexa para aumentar sua produtividade. Agora o serviço apresenta interações com a salas de conferência do Zoom em dispositivos da Logitech. É Alexa se integrando com novos dispositivos com o intuito de simplificar e facilitar o uso de reuniões nesse novo mundo que vivemos em função da pandemia do COVID-19.

Semana que vem tem mais! Veja nossa live sobre as novidades da semana da AWS!

Confira mais novidades da semana em nosso blog!

Novidades da Semana da AWS

Novidades da Semana AWS 13/07 a 17/07

Todas os dias a AWS lança uma série novidades e atualizações em seus produtos que visam melhorar a vida de seus usuários. A partir de hoje, você receberá um resumo das otimizações que mais fazem sentido para nossa realidade e que certamente irão aprimorar sua experiência no uso da plataforma.

Governança e Segurança

Secret Manager

O Serviço Secret Manager é um cofre de senhas que permite alternar, gerenciar e recuperar facilmente credenciais de sua aplicação. Como banco de dados, senhas e chaves de APIs. Nessa semana, foi implementado um mecanismo de busca que facilitará a procura de informações no cofre. Além disso, agora é possível “atachar” resources-based policy diretamente em seus segredos. Um dos anúncios também diz que a webconsole utilizará o já conhecido algoritmo Zelkova (usado para dizer se um bucket s3 está realmente público, por exemplo).

KMS – Key Management Service

O Key Management Service (KMS), é um serviço da AWS que facilita a criação e gestão de chaves criptográficas. Assim como o controle de seu uso em uma ampla variedade de serviços da AWS e em seus aplicativos. Com tem sido tendência para diversos outros produtos AWS, agora o KMS oferece suporte para VPC Endpoints. Ou seja, agora o serviço suporta o acesso via redes privadas. (Quer saber mais sobre VPC? Veja o vídeo em nosso canal!)

Service Catalog

O Service Catalog permite criar e gerenciar catálogos de serviços de TI. Nele é possível deixar seu catálogo disponível para qualquer colaborador sendo ele de qualquer área. Podendo criar um stack em minutos, e tendo todo controle e rastreabilidade necessários para seu negócio. O serviço aumentou seu raio de operação e agora está disponível em mais 21 regiões, dentro delas a região de São Paulo. Além disso o serviço suporta a coleta de dados de saída de uma stack, para uso em outra. O recurso de Output do Cloudformation (motor do Service Catalog) é usado para isso

AWS Config

O AWS Config é um serviço que permite acessar, auditar e avaliar as configurações dos recursos da AWS. A novidade desse serviço é o suporte do track de arquivos controlados pelo SSM. Ou seja, agora é possível rastrear pelo AWS Config sempre quando um arquivo em seus servidores foi alterado.

Computação e Integração DevOps

EC2 Image Builder

O EC2 Image Builder é um serviço que simplifica a criação, manutenção, validação, o compartilhamento e a implantação de imagens (AMIs) Linux ou Windows Server para uso no Amazon EC2. A novidade da semana dessa aplicação é que agora ela suporta o envio de logs para o CloudWatch.

EKS – Elastic Kubernetes Service

O Amazon EKS é um serviço que simplifica a implantação, o gerenciamento e o ajuste de escala de aplicativos conteinerizados usando Kubernetes na AWS. A partir dessa semana, o EKS suporta a versão 1.17 do Kubernetes, trazendo todas as novidades do projeto para o EKS. Além das atualizações de segurança, a versão 1.17 do Kubernetes conta com Cloud Provider Labels, ResourceQuotaScopeSelectors (\o/) , TaintNodesByCondition, Finalizer protection, and CSI Topology. Além dessa grande novidade, o EKS agora tem suporte nativo ao Fluent Bit para envio de logs para o AWS ElasticSearch.

Systems Manager

O AWS Systems Manager é um serviço que oferece visibilidade e controle da sua infraestrutura entro e fora da AWS. E agora ele oferece suporte a agendamento de janela de manutenção. Recurso similar ao existente no AWS RDS, onde você pode agendar as mudanças para uma janela e não os aplicar imediatamente. Além disso, o serviço terá integração com o AWS Config para rastrear mudanças em configurações de inventários em instâncias.

App Mash

O AWS App Mesh é um serviço que padroniza todo o modo de comunicação de seus serviços. Assim oferecendo visibilidade de ponta a ponta e garantindo alta disponibilidade para seus aplicativos. Agora ele apresenta o recurso Virtual Gateways onde será possível criar pontos de entrada na aplicação. O Gateways poderá ser implementado em EC2, ECS ou Kubernetes.

Amazon App Flow

O Amazon AppFlow serviço de integração totalmente gerenciado que permite transferir dados com segurança entre aplicativos de Software como Serviço (SaaS). Exemplos de aplicações suportadas são Slack e Salesforce. A novidade dessa aplicação é a integração com o CloudWatch Events. Agora é possível acionar serviços baseados em eventos de Apps terceiros.

Databases e Outros

RDS for Oracle

O Amazon RDS facilita configurar, operar e escalar implantações do Oracle Database na nuvem. A partir de agora o serviço oferece o suporte do Oracle Spatial no Oracle Standard Edition 2.

Amazon Athena

O Amazon Anthena é um serviço de consultas interativas que facilita a análise de dados diretamente Amazon S3 usando SQL padrão (sim, você consegue fazer queries em arquivos). Ele conta com duas novidades essa semana. Agora a aplicação passa a ter suporte no gerenciamento de data catalog pelo CloudFormation. Além disso, o serviço também oferece serviço ao Apache Hudi em Data Lakes no S3. A aplicação que tem um compliance com a Lei de Proteção de Dados da Califórnia (EUA) e a europeia GDPR, podendo ter também com a lei brasileira LGPD, quando entrar em vigor.

DocumentDB (MongoDB Gerenciado)

O DocumentDB é um serviço de banco de dados de documentos ágil, escalável, altamente disponível e gerenciado que oferece suporte a cargas de trabalho do MongoDB. Ele oferece suporte de cópia de snapshots entre regiões.

Elasticsearch

A Amazon Elasticsearch Service é um serviço gerenciado que facilita a implantação, a segurança e a execução do Elasticsearch de forma eficaz e em grande escala. A aplicação agora é suportada pelo FluentBit para receber logs de containers de orquestradores como ECS e EKS.

Outras novidades

Amazon Coretto

O Amazon Coretto é um serviço de distribuição gratuita, multiplataforma e pronta para produção do Open Java Development Kit (OpenJDK) mantido pela AWS. Ele apresenta duas novas versões (8u262 e 11.0.8) disponíveis para x86, arm e containers Alpine.

Novos Gadgets IoT a venda

A AWS apresenta novas aplicações para a venda: o DeepRacer Evo e o Sensor Kit. O DeepRacer Evo é um carro de corrida autônomo na escala de 1:18 projetado para testar modelos de Reinforcement Learning (RL – Aprendizado por reforço) ao competir em uma pista física. Ele utiliza câmeras para visualizar o caminho e um modelo de reforço para controlar o acelerador e a direção. O DeepRacer tem o valor de $399 (aproximadamente R$2.140 pela cotação atual). Já o sensor kit, o kit de sensores que auxiliam o aprimoramento da experiência do DeepRacer, pode ser encontrado por volta de $149 (cerca de R$800).

CDK Pipelines

O AWS CDK é um conjunto de bibliotecas de desenvolvimento de software de código aberto para modelar e provisionar seus recursos de aplicativos de nuvem usando linguagens de programação conhecidas, como Python e NodeJS (para saber mais veja nossa live). O CDK agora tem abstrações prontas para construção de esteiras de deploy CI/CD usando a os serviços de de deploy da AWS, como Codepipeline e Codebuild.

Amazon IVS

O Amazon IVS é a nova solução de live sreaming da AWS onde é possível gerenciar transmissões ao vivo de forma rápida e fácil de configurar. O IVS pode ser usado com aplicativos como OBS Studio e Streamyard para stream de vídeos em plataformas próprias.

Essas foram as novidades da semana da AWS, semana que vem tem mais! Se preferir assista nossa live e fique por dentro!

Veja mais artigos sobre o mundo da em nosso blog!

Conectando On-Premises na AWS

Conectando On-Premises na AWS via Direct Connect

Com a popularização da utilização dos serviços em Cloud, uma das maiores necessidades é fazer com que o ambiente On-Premises de uma empresa possa se conectar ao ambiente Nuvem. Com a finalidade de fazer um uso eficiente dos seus recursos. Pensando em alguns itens importantes nessa conectividade, temos a disponibilidade, o baixo custo, a velocidade de acesso à informação e a segurança dos dados.
Atualmente o uso desse acesso se dá através de um serviço baseado em internet chamado de VPN. Ele permite que, possamos manter uma conectividade entre a Cloud e o ambiente On-Premises conforme podemos ver no exemplo abaixo:

DESENHO 1 – CONECTIVIDADE CLOUD_ON-PREMISES VIA VPN

Utilizando esse método de conectividade, os dados que serão trafegados por essa tecnologia são criptografados e encaminhados via Link de Internet entre os ambientes. O que permite dizer que o tráfego está sendo enviado de forma segura. No entanto, a alta velocidade não é garantida, bem como a redundância. Já quando se trata dos links públicos da empresa, esses fatores são dependentes da qualidade do provedor que oferta essa conectividade, gerando uma certa dificuldade no gerenciamento e disponibilidade da informação via VPN.

Direct Connect

Para melhorarmos essa comunicação entre AWS Cloud e o On-Premises, a Amazon nos fornece uma opção de conectividade através de um serviço chamado Direct Connect. Ele utiliza uma conexão L2L via um Parceiro AWS (Links dedicados com a Equinix ou Tivit e compartilhado (hosted) com outras operadoras como Telium e Mundivox) para conectar esses ambientes, como se fosse uma extensão da rede interna do On-Premises para a AWS.
Conforme pode ser visto no desenho abaixo, provendo uma conexão dedicada, melhoramos o desempenho e aceleramos a transferência de dados com segurança e bom custo-benefício utilizando São Paulo e Rio de Janeiro como opções. Para locais mais afastados o custo pode ser maior.

DESENHO 2 – CONECTIVIDADE CLOUD_ON-PREMISES VIA DIRECT CONNECT

Basicamente, o Direct Connect é um link dedicado que conecta a AWS ao ambiente On-Premises. Após essa comunicação física estabelecida, as duas partes devem fazer o uso do protocolo dinâmico conhecido como BGP para estabelecer a sessão de divulgação dos blocos IPs, tanto da AWS quanto do ambiente On-Premises. Esse protocolo permite os filtros através das políticas de BGP que ajudam no bom funcionamento e gerenciamento do serviço.
Com esse modelo de conexão, que antes era utilizado para a comunicação via VPN, associamos o VGW, ou Virtual Private Gateway , ao Direct Connect. Assim o uso da VPN passa a ser redundante ao Direct Connect automaticamente através da prioridade do serviço pela AWS. Em caso de falha no serviço, a VPN assumirá o tráfego sem precisar de intervenção manual para o funcionamento, ou seja, aumentamos a disponibilidade, melhoramos a taxa de transferência, temos redundância na conectividade e mantemos a segurança do transporte da informação. Conforme mostra o desenho abaixo:

DESENHO 3 – CONECTIVIDADE CLOUD_ON-PREMISES VIA DIRECT CONNECT

Até então, esse cenário ainda é o mínimo requisitado para um bom uso do serviço de Direct Connect. Pois mantemos nossa redundância através da VPN, tendo como requisito para esse failover o uso da Internet. Todavia, para adotarmos as melhores práticas fornecidas pela AWS e no intuito de utilizar o serviço de forma mais eficiente e segura. É recomendado que o Direct Connect seja conectado entre AWS e On-Premises por duas conexões físicas distintas. Sendo, por exemplo uma conexão física entre AWS x Equinix-SP4 e uma outra AWS x TIVIT-SPO. Dessa forma temos uma redundância efetiva do serviço. Além de manter o mesmo padrão de funcionamento sem necessidade de acesso para a nuvem via Internet. Sendo assim, não só o desempenho, segurança e disponibilidade se mantém no mesmo nível. Como também, nesse caso, teremos resiliência:

DESENHO 4 – CONECTIVIDADE CLOUD_ON-PREMISES VIA DIRECT CONNECT REDUNDANTE

Como conclusão temos que, o Direct Connect é o serviço que aumenta não apenas a velocidade da sua conexão com a AWS. Consequentemente diminuindo a latência. Como também, se usado da maneira correta, proverá maior disponibilidade, resiliência, redundância e segurança da informação. Levando em consideração que no modelo de cobrança da AWS em cima de DTO (Data Transfer Out). Utilizando o serviço de Direct Connect a cobrança fica mais barata. Bem como o serviço se paga ao tempo de uso de dados que são utilizados por ele.

Laia mais textos técnicos escritos pelos colaboradores da Darede em nosso blog!

Infraestrutura como Código: Como automatizar o provisionamento de serviços na nuvem

Atualmente o termo DevOps se popularizou no mundo da tecnologia. Sua definição se baseia simplesmente na união de desenvolvimento com operações. E dentre as ferramentas que compõem estes processos integrados está a infraestrutura como código. Esse termo é uma metodologia de processos de provisionamento de infraestrutura tecnológica usada para que as respectivas equipes. As de DevOps principalmente. O objetivo é que elas possam gerenciar e provisionar infraestrutura por meio de código de forma programática. Ao invés de ter que recorrer ao acesso físico ao hardware ou até mesmo através de portais ou ferramentas de configuração.
Resumindo, a abordagem Infraestrutura como Código nada mais é do que a entrega de uma infraestrutura ágil. Utilizando-se de codificação simples e objetiva.E sem a necessidade de diversos passos e processos para se preparar um ambiente, sem perder o poder de controle, segurança, qualidade e disponibilidade.

CloudFormation

A Amazon Web Services (AWS) possui um serviço chamado CloudFormation que provisiona sua infraestrutura na nuvem através de um código em formato JSON ou YAML. Caso o usuário não possua experiência com esses modelos existe o CloudFormation Designer: uma ferramenta gráfica que o auxilia a criar e modificar seus modelos de template.
A vantagem de ter sua infraestrutura baseada em código se dá através da possibilidade de colocar um ambiente em produção com apenas um clique. Bem como replicar o mesmo quantas vezes for necessário. Por exemplo: uma aplicação precisa estar em mais de uma região. Neste caso é necessário pegar seu template e aplicar no CloudFormation na região desejada. Assim sua infraestrutura estará pronta em minutos! Dessa forma não será preciso convocar um grande time de TI para subir a infraestrutura manualmente. Além de ganhar tempo e reduzir possíveis falhas.

Representação do CloudFormation

No CloudFormation também temos o conceito de modelo que são os templates nos mesmos formatos. Eles descrevem os recursos da AWS que são necessários para fazer a implantação da aplicação. E as pilhas (stack) são o conjunto de recursos descrito nos modelos. Elas podem ser criadas, atualizadas e excluídas com facilidade!
Sabemos que é preciso realizar um upgrade na infraestrutura à medida que nosso negócio cresce. Por este motivo é muito importante ter um controle de versões. Para que quando ocorra algum problema seja possível identificar com mais rapidez o que foi feito. E assim voltar para uma versão estável do ambiente assim deixando-o disponível novamente sem prejudicar os usuários. Lembrando que ao criar ou atualizar sua pilha o CloudFormation avisa se houver algum erro.
Agora você deve estar se perguntando sobre o valor para ter essa automatização, eis uma boa notícia: não há custo para usar o CloudFormation. Contanto que sejam recursos da AWS. Serão cobrados apenas os recursos que forem provisionados com instâncias EC2, Elastic Load Balancing etc.

Ansible

Além da ferramenta provida para a AWS existem também algumas ferramentas que são adotadas pela comunidade para o mesmo objetivo. O Ansible que é uma ferramenta de automação de código aberto usada para configurar servidores, instalar softwares e executar uma alta espécie de tarefas de TI a partir de uma localização central. O Ansible é operado hoje pela RedHat e tem todo o suporte desta grande empresa. Trazendo uma grande confiabilidade à ferramenta.

É um mecanismo sem agente de um para muitos, onde todas as instruções são executadas a partir de uma máquina de controle que se comunica com clientes remotos preferencialmente em SSH, embora outros protocolos também sejam suportados.
Além disso, o Ansible também provê uma linguagem simples de se escrever em YAML, ou seja, de fácil interpretação para suporte, desenvolvedores e gerentes de TI.
No início da ferramenta, somente rodava em Linux Core. Porém, agora também roda no Windows sem precisar de formas alternativas para funcionar.
A vantagem mais clara de utilizar uma ferramenta como o Ansible é que não há limitação à plataforma de nuvem que a ferramenta está aplicada, podendo, com alguns ajustes, portar o código para ser aplicado em uma nuvem diferente, ou mesmo facilitar a migração do seu workload caso esse seja seu objetivo.

O ponto negativo no entanto está na necessidade de se prover a infraestrutura para operar o Ansible. Tendo que lidar com a gestão tanto da parte de sistemas operacionais quanto de software, adicionando uma camada de trabalho extra para operar o serviço.

Até mais!
Para mais artigos sobre o mundo da AWS confira em nosso blog!


Amazon Workspaces

Solução Home Office – Amazon Wokspaces

O uso da VPN (Virtual Private Cloud) vem cada vez mais se popularizando no país. Assim como o Home Office e os usuários remotos.
Esse artigo tem como foco empresas que utilizam o serviço web da Amazon. Uma vez que a plataforma tem disponível a solução DaaS na nuvem da AWS. Isso mesmo! Um serviço que entrega desktops totalmente acessíveis de qualquer lugar. Desde que o dispositivo tenha conexão com a internet. Seja ele um tablet, laptop ou até mesmo um smartphone.

Estamos falando das Amazon Workspaces, então, vamos imaginar um cenário muito comum nos dias atuais, digamos que devido toda a paralisação por conta do COVID-19, sua empresa teve que enviar seus funcionários para trabalhar de casa, no entanto, eles não utilizam laptops,mas sim, computadores de mesa, dessa forma, se torna inviável levá-los para casa não é?

Com essa tecnologia, é possível provisionar Desktops na nuvem para que os colaboradores possam acessar a AWS através dessa máquina, seja ela Windows ou Linux. As workspaces rodam dentro de uma VPC na AWS, visto isso, o ideal é que haja também uma vpn Site-to-Site entre essa VPC e o ambiente On Premises da Empresa, assim, através dos desktops virtuais, também será possível acessar recursos internos como sistemas ou servidores que rodam no escritório.
Com o propósito de simplificar o gerenciamento de dezenas, centenas, ou até milhares de Desktops virtuais, também é possível utilizar o Amazon AD Connector, para que os usuários possam acessar apenas suas respectivas máquinas através de seus usuários provisionados dentro do AD da empresa, elevando a segurança das máquinas, GPO para limitar acessos, assim como no escritório.
A Workspace é integrada com o Amazon KMS, sendo assim, todo e qualquer acesso ao volume persistente passa por uma camada de criptografia, paralelo a isso, nenhum dado do usuário é armazenado no dispositivo de acesso, viabilizando a segurança da informação.

Serviço On Demand

Como último tópico, iremos abordar o custo. Como tudo em cloud, esse serviço também se encaixa como On demand. Ou seja, a empresa pagará apenas o utilizado de recursos nas workspaces. Uma vez que se o usuário irá trabalhar apenas em horário comercial. Porque eu devo pagar um recurso que fica full-time? Não faz muito sentido, não é?
Assim, os custos são reduzidos a ponto de não haver a necessidade da compra de hardware. Podendo entregar uma solução compatível com outros serviços, altamente disponível, totalmente gerenciável, facilmente escalável, seja escalabilidade de quantidade de Desktops ou de recursos computacionais. Onde há segurança nos dados e redução de custos, tudo isso na nuvem.
Leia mais sobre home office em nosso blog!

Processo de Integração e Deploy Contínuo (CI/CD) na AWS – Parte 2

Abaixo, segue um tutorial simples e eficaz de como realizar esta arquitetura na sua rede AWS.
Hands On!
Para começarmos, será necessário criarmos duas IAM Roles:
• IAM role para o CodeDeploy realizar o deploy na EC2 instance;
• IAM role para a EC2 acessar o S3.

1° CodeDeployRole:

– Vá até o seu console da AWS e entre no serviço do IAM:

– Após acessar o serviço do IAM, clique em Roles:

– Agora, clique em Create Role:

– Selecione o serviço do CodeDeploy:

– Selecione o Case do CodeDeploy e depois clique para adicionar as permissões:

– Selecione AWSCodeDeployRole e clique em Next:

– Dê um nome a sua Role e clique em Create Role:
https://www.darede.com.br/wp-content/uploads/2020/04/24140109/Processo-de-Integra%C3%A7%C3%A3o-e-Deploy-Cont%C3%ADnuo-na-AWS-7.png

– A regra foi criada com sucesso:

2° S3 Role:

Agora faremos um processo parecido com o anterior, porém, agora selecionaremos o serviço de EC2.

– Clique novamente em Create Role depois, selecione EC2:

Clique em Next.
– Nas permissões, selecione AmazonS3ReadOnlyAccess:

Clique em Next.
– Agora, dê um nome para role que acabamos de criar:

– Clique em Create role.

3° Vamos criar uma instância EC2 que receberá o deploy.

Para que funcione perfeitamente, será necessário utilizarmos o CodeDeploy Agent na máquina:
– Primeiro, vamos criar uma instância. Acesse o Painel EC2 > Instances e vá em Launch Instance:

– Neste tutorial, iremos utilizar um Amazon Linux:

– Agora, selecione a instância do tipo t2.micro:

Clique em Next.
– Agora, selecione sua VPC, sua Subnet e Auto-assign Public IP deixe como Enable.

– Na parte do IAM Role, selecione a role que criamos para a EC2:

– Mais pra baixo, desça até a parte do Advanced Details, mais precisamente na parte do User data e cole o seguinte código:
#!/bin/bash
yum -y update
yum install -y ruby
yum install -y aws-cli
cd /home/ec2-user
aws s3 cp s3://aws-codedeploy-us-east-1/latest/install . –region us-east-1
chmod +x ./install
./install auto

Para saber mais sobre User data, clique aqui.

Deve ficar algo parecido com isto:

Lembrando que, os valores das regiões estão de acordo com a região que estou trabalhando, neste caso North Virginia (EUA).

Clique em Next.
– Na próxima página, referente ao volume, não será necessária nenhuma alteração, é o suficiente para realizarmos este tutorial.
Clique em Next.
– Na parte das TAGS, iremos adicionar a tag Name, para que possamos identificar a máquina no painel das instâncias:

Chave: Name
Valor: EC2-CodeDeploy
– Agora, parte dos Security Group’s, selecione as opções de liberação para SSH e HTTP. Na parte do Source selecione My IP. Deve ficar algo assim:

Clique em Next.
– Confirme todas as informações e clique em Launch. Selecione uma chave. pem que você tenha acesso e finalize o processo de criação.

4° Após a máquina estar com o Estado Running, acessa-a via SSH.

Neste procedimento, estou usando o PuTTY, caso queira saber mais, clique aqui.

– Após acessar a máquina via SSH, vamos validar se o CodeDeploy Agent está instalado:

Rodando como o esperado.

– Agora, nós iremos criar os arquivos necessários para o deploy funcionar.

– Entre no /tmp da máquina:

– Crie uma pasta para receber os arquivos:

– Rode o seguinte comando:
url -O http://s3.amazonaws.com/aws-codedeploy-us-east-1/samples/latest/SampleApp_Linux.zip

– Descompacte o arquivo:

– Delete o arquivo .zip:

– Digite os seguintes comandos de acordo com a documentação do Github:
git init
git add .
git commit -m “first commit”
git remote add origin git@github.com:YOUR_USERNAME/YOUR_REPOSITORY.git
git push -u origin master

5° Agora, iremos criar a parte do CodeDeploy.

– Acesse a console da AWS e filtre pelo serviço do CodeDeploy:

– Após acessar o serviço, clique em Applications:

– Clique em Create Application:

– Dê um nome para sua aplicação e selecione a plataforma EC2:

Clique em Create Application.
– Depois que criamos a aplicação, é necessário criamos o grupo de depoloy (Deployment group), onde nós apontamos para onde deve ser direcionado o deploy. Clique em Create Deployment Group:

– Dê um nome para seu grupo de deploy:

– Seleciona a role criamos no primeiro passo:

– Na parte de configuração do ambiente, é onde selecionamos para qual recurso iremos apontar o deploy, neste caso, utilizaremos o TAG Name da EC2 para identificarmos o recurso:

– Nas configurações de deploy (Deployment settings), deixe esta configuração:


– Como neste caso não temos Load Balancer nesta arquitetura, podemos desabilitar esta opção:

Clique em Create Deployment Group.

6° Com essas configurações feitas, podemos testar o deploy de forma manual:

– Para isso, entre no deployment group que acabamos de configurar. Este é o caminho:

– Após acessar, clique em Create deployment:

– Selecione a opção que sua aplicação está no Github. Depois dê um nome à sua conexão com o git e clique em Connect to GitHub:


– Será aberto um pop-up solicitando autorizar a integração:

Pode confirmar a integração entre as plataformas.
– Deverá aparecer algo parecido com isto em sua tela:

– Preencha os dados com o nome do repositório e o ID do commit, gerado pelo passo quatro que fizemos:


A tela deverá ficar assim:

O nome do repositório deve ter o seguinte formato: “GITHUB_USERNAME/REPOSITORY_NAME”
– Dê uma descrição ao seu deployment:

– No final da página clique em Create Deployment.

Após isso, podemos notar que a estrutura está funcional e operando:

7° Agora, iremos usar o recurso do CodePipeline para automatizar todo este processo de deploy sempre que houver alterações no repositório:

– Entre no serviço do CodePipeline:

– Depois clique em Create Pipeline.
– Dê um nome para sua pipeline:

Clique em Next.
– Agora no Source selecione GitHub:

– Clique em Connect to GitHub:

– Forneça acesso ao CodePipeline:

– Selecione o repositório:

– Também selecione a Branch:


– Usaremos os webhooks padrões do GitHub:

Clique em Next.
– Neste tutorial, não será necessário utilizarmos o codebuild, então podemos pular esta parte. Clique em Skip build stage:

– Seguindo, escolha o provedor de deploy (Deploy provider) o CodeDeploy que já está devidamente configurado:

Selecione a região e as outras duas informações que criamos nos passos anteriores, na configuração do CodeDeploy:

Clique em Next.
– Agora revisando as informações, desça até o final da página e clique em Create Pipeline.

– Note, que a Pipeline rodou perfeitamente e já fez o deploy automático do último commit utilizado no repositório:

8° Para validar o sucesso do deploy, vá até o painel das Instâncias EC2 e procure a instância que criamos neste tutorial:


– Procure pelo campo Public DNS(IPv4):

Copie este valor.
– Abra uma nova guia e acesse este endereço.
Será exibida uma tela como essa:

9° Agora, nós iremos validar o funcionamento do deploy automatizado.

Iremos fazer uma modificação qualquer no código, iremos realizar o push para o GitHub e a alteração será automaticamente aplicada na instância EC2.
– Acesse a máquina Linux e abra o arquivo .html com seu editor de texto favorito:

Neste caso, usei o VIM para editar o arquivo.
– Após abrir o arquivo, editei a cor de fundo da página:
Antes:

Depois:

– Depois de alterado, vamos commitar as alterações:

– Agora nos resta realizar o push:

Coloque suas credenciais e finalize o processo.
– Acessando as pipelines, é possível ver o deploy funcionando automaticamente:


– Volte na página web que abrimos anteriormente e dê um F5, note que a cor da página mudou:

Bom, finalizamos por aqui nossa configuração de CI/CD de uma forma simples e eficaz.

Workloads Microsoft

Modernização de Workloads Microsoft SQL na AWS

A AWS desenvolveu o Migration Acceleration Program (MAP). Um programa para que o cliente possa trazer a suas cargas de trabalho com segurança e performance. Se adequando a sua estrutura de negócio. Seja em ambiente Windows ou Linux.

Vamos entender como seria a modernização de cargas de trabalho do Microsoft SQL Server para a AWS.

Vamos trazer um cenário que o cliente possui um servidor com um SQL Server. Ele deseja trazer essa carga para da AWS. Levando em consideração que a sua preocupação seja somente comercial. Ou seja, a atenção do cliente está voltada somente em questões comerciais do negócio. Assim desejando que esse banco seja gerenciado pela AWS. O serviço mais indicado é o Amazon RDS (Relational Database Service) que é uma aplicação da AWS que automatiza tarefas demoradas de administração, como provisionamento de Hardware, atualização de patches, backups, entre outros.
Um outro cenário é de um cliente que também possui um servidor com um SQL Server e deseja trazer essa carga para da AWS, porém ele deseja ter total gerencia do banco, seja por sua própria equipe de suporte, ou através de suporte de um parceiro AWS. Neste exemplo podemos utilizar uma instância EC2 para essa carga de trabalho, a AWS fornece várias ferramentas que podem ser utilizadas para a migração de servidor. para sanar dúvidas de qual serviço empregar, ou como usar, é de grande valia utilizar o recurso de MAP, assim auxiliando o cliente nessa decisão. Lembrando que este serviço pode ser utilizado não somente para migração de ambiente, mas também para a modernização de outros recursos. Lembre-se na dúvida, sempre peça ajuda!

Quer saber mais? Acesse o link de documentação MAP da AWS – https://aws.amazon.com/pt/migration-acceleration-program/

Link da documentação sobre RDS AWS – https://aws.amazon.com/pt/rds/

Leia mais sobre o mundo da AWS em nosso blog!

Processos CI/CD

Processo de Integração e Deploy Contínuo (CI/CD) na AWS – Parte 1

Antes de introduzir o assunto de CI/CD, precisamos entender um conceito que vem ganhando grande força no mundo da tecnologia: o DevOps. Esse termo é bem sugestivo pois se deriva da junção das palavras “desenvolvimento” (em inglês, development) e “operações” (em inglês, operations). Essa palavra descreve um conjunto de práticas para integração entre as duas equipes. Entretanto, há a possibilidade de incorporação de outros setores. Como por exemplo, o de controle de qualidade, permitindo adotar processos automatizados para um desenvolvimento rápido e seguro de aplicações e serviços.
Também não podemos deixar de falar de Pipeline, uma vez que esses assuntos estão diretamente ligados. Na tradução literal, pipeline, traz o conceito aplicado a gasodutos e encanamentos. Na área de TI, esse termo vem se mostrando cada vez mais atual e utilizado. Seu objetivo, é automatizar o processo de entrega de um software. Usando publicações e correções em uma aplicação de forma contínua. E assim, garantindo a qualidade na entrega final deste processo.

Vantagens de se utilizar pipeline:

  • Automatização benéfica, agilizando o processo e evitando erros humanos; (Quanto menos erros, a entrega será mais rápida)
  • Fácil integração de pequenas atualizações;
  • Como os desenvolvedores não se preocupam em entregar o código até produção, eles conseguem ficar mais focados na configuração de novas features;
  • Possibilidade de realizar atualizações de código pequenas, frequentes e reversíveis.
  • Concentração de logs de teste, atualizações e deploys ficam acessíveis para verificação a qualquer momento;
  • Bugs são identificamos de forma mais rápida, agilizando as correções.
  • CI – Continuous Integration

    Bom, a definição básica de integração contínua (CI) é a prática de automatizar a integração de alterações individuais de código, chamadas de branches, de vários colaboradores em um único projeto de software através do merge de diversos branches em um código consolidado. O processo de CI é composto por ferramentas automáticas que apontam, a correção do novo código antes da integração.
    Temos exemplos de ferramentas de repositórios de cógido com esse recurso, o GitHub, BitBucket, GitLab entre outros. Vale lembrar que na AWS temos o serviço do CodeCommit, que é extremamente funcional e de uso parecido dessas ferramentas mais famosas, visto que ele hospeda repositórios baseados em Git. Caso queira ter mais informações sobre este serviço, clique aqui.

    CD – Continuous Deployment/ Continuous Delivery

    Há dois conceitos ligados a sigla CD. Mas seu principal objetivo é a prática de desenvolvimento de software em que as alterações de código são criadas, testadas e preparadas automaticamente para a liberação em um ambiente de produção. Ele expande a integração contínua. Implementando todas as alterações de código. Seja em um ambiente de teste, ambiente de produção ou em ambos. Após a conclusão do estágio de construção. Quando a liberação deste deploy é feita de forma de aprovação. Ou seja, é necessária uma intervenção humana para a esteira ser finalizada, temos o conceito de Continuous Delivery. Já quando este processo é totalmente automatizado, com todos os testes funcionando, sem a autorização explícita humana, temos o conceito de Continuous Deployment. Algumas das ferramentas mais famosas para este processo temos o Jenkins. Ele utilizado em todo o mundo, devido a sua grande comunidade e infinidade de plugins, garantindo inúmeras integrações.
    Na AWS, temos o AWS CodePipeline. Ele nos ajuda nessa integração. Na plataforma, temos serviços como o CodeBuild, para você compilar sua aplicação. E o CodeDeploy para realizar os deployments em seus recursos necessários para seu software. Para entender melhor sobre o AWS CodePipeline, clique aqui.

    Em uma estrutura padrão de CI/CD, temos a seguinte estrutura de funcionamento:

    AWS Code Pipeline

  • Source: O local onde está o código da aplicação;
  • Build: Momento em que é efetuado um merge do código já existente com o código de atualização. Aqui também pode ser efetuado a compilação da sua aplicação. Gerando toda estrutura;
  • Test: Este passo é um dos essenciais para garantir uma entrega rápida e segura. Aqui são efetuados testes automatizados para garantir o pleno funcionamento da aplicação.
  • Staging: Após os passos acima ocorrerem perfeitamente, a aplicação é enviada para um ambiente de staging, mais próximo a realidade em que sua aplicação irá funcionar. Nele são realizados testes adicionais de funcionamento da aplicação e infraestrutura antes de ir definitivamente para o ambiente de produção.
  • Production: Finalizando a pipeline, temos o ambiente de produção, após ter sido devidamente testado e atualizado com os processos anteriores, além de depender do nível de maturidade dos seus testes, essa nova versão lançada está funcionando perfeitamente e foi atualizada de forma automática. Finalizando o CI/CD.
  • Deploy Automatizado

    Vamos agora criar na prática um exemplo de deploy automatizado simples na AWS juntamente com seu GitHub, uma das plataformas de versionamento de código mais utilizadas no mundo , para que você veja as várias maneiras de possíveis integrações na AWS. Para isso, foi realizado a seguinte arquitetura:

    Na ilustração acima, os desenvolvedores fazem o “push” da aplicação para o Github. Neste momento, juntamente configurado com o AWS CodePipeline, o Git dispara um webhook toda vez que ocorre uma alteração de código. Assim o CodePipeline gera um Artefato da aplicação, manda para um bucket S3 e aciona o CodeDeploy para finalizar o deploy automático em uma Instância EC2. Lembrando que, como fizemos um método simples de deploy, não temos um passo de build ou test, esta ilustração serve apenas para que você veja a configuração de um continuous deployment de maneira fácil.
    Na parte 2 traremos um tutorial de como realizar esta arquitetura na sua rede AWS.