Skip to content

Instantly share code, notes, and snippets.

@reginadiana
Last active February 14, 2024 21:11
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save reginadiana/5c60891e32d590b49fdbb3cb70869423 to your computer and use it in GitHub Desktop.
Save reginadiana/5c60891e32d590b49fdbb3cb70869423 to your computer and use it in GitHub Desktop.
Anotações sobre AWS

⭐ AWS

Pilares

  1. Segurança
  2. Eficiencia e Performance
  3. Confiabilidade: distribuida em todos os lugares do mundo (no Brasil tem 1 em SP)
  4. Excelencia operacional
  5. Otimização de custos

Serviços

  1. S3, buckets são serviços de armazenamento de arquivos

  2. RDS é um serviço de armazenamento e gereciamento de banco de dados

  3. Cloudwatch é um serviço de monitoramento que dá acesso aos logs do ambiente de staging ou prod. Os logs podem ser agrupados por serviços como elastic search, banco, erros, etc.

Conceitos de Cloud

A computação em nuvem é a entrega de recursos sob demanda por meio da internet com definição de pagamento conforme o uso. Em vez de comprar, ter e manter datacenters e servidores fisicos, voce pode acessar serviços de tecnologia como capacidade computacional, armazenamento e banco de dados, analitics e outros usando a aws (serviço publico) por exemplo.

Caracteristicas de um Cloud

Para que seja considerado cloud, deve preencher as seguintes caracteristicas:

Agilidade: permitindo que as entregas possam ser feitas de forma rápida, sem preocupação com o datacenter por exemplo.

Manutenção: é algo que quem usa o cloud pode se preocupar menos, já que esse quesito é responsabilidade do servidor.

Confiabilidade: porque existem especialistas dentro da aws, por exemplo, que vão trabalhar apenas para cuidar do sistema.

Segurança: essa preocupação na parte de quem usa o cloud é reduzida porque não é mais necessário se preocupar com a segurança fisica dos datacenters por exemplo, mas isso não quer dizer que não existam fatores de segurança para se preocupar.

Performance: upgrade de infraestrutura disponíveis.

Escalabilidade: capacidade de escalar facilmente sob demanda. Ex: Aumento de acessos gerados por eventos como Black Friday, mas que diminuem depois.

Soft Limit

É o limite de máquinas (instancias) rodando e pode ser alterado realizando uma solicitação dentro da aws.

Hard Limit

Diz respeito ao limite máximo de máquinas que a aws pode oferecer, e não pode ser alterado por quem utiliza o serviço de cloud

NIST

O NIST dita as principais caracteristicas de um serviço de cloud:

  1. Serviço sob demanda, seja, é cobrado apenas sob o que é utilizado.

  2. Acesso à uma rede distribuida.

  3. Metrificação dos processos (analytics).

  4. Escalabilidade rápida.

Tipos de cloud

Iaas (Infraestrutura como serviço): usa a infraestrutura de terceiros.

Paas (Plataforma como serviço): usa a plataforma de terceiros, ou seja, não precisamos nos preocupar com o que é necessário para execução. Ex: Heroku, AWS.

Faas (Funcionalidades como serviço): executa uma ação de tempos em tempos ou mediante outra ação. Ex: beckup do banco

Modelos de deploy

💻 Private Cloud: só é utilizado naquela empresa, ou seja, apenas ela detem o serviço.

💻 Public Cloud: todos podem acessar e usar. Ex: AWS, Azure.

💻 Hybrid Cloud: mescla dos modelos privado e publico.

💻 Multicloud: não é muito usado, ele basicamente aponto para outro cloud quando o primeiro falha.

💻 Comunity: quando um cloud é utilizado por um grupo de empresas, mas não é aberto ao publico.

Foundation

É um processo de onboarding onde é necessário pensar e utilizar as bases e recomendações da aws para criar corretamente uma conta, definir rede, utilizar serviços de forma que não haja problemas no futuro ao podem de ter que migrar a conta (o que não é fácil de fazer).

Contas

Root Account

É a conta mais poderosa da aws, ela serve para criar novas contas, mas o ideal é que ela não seja muito utilizada, pode ela gerencia outras contas. Não é uma boa prática usar essa conta para fazer deploy de recursos.

Organisational Unit (OU)

Serve para organizar as contas, sendo possível aplicar regras para grupos de contas. Cada conta tem seu score (soft limit) e seu gerenciador de identidade (IAM). Vale lembrar, que o plano de suporte para contas novas é o básico, sendo possível fazer upgrade para ter mais ajuda do pessoal de suporte.

Polices

polices para contas/usuários e organizações, permitindo a restrição/acesso a ações em serviços. Também é possível criá-las.

Master Account

É a primeira conta criada na aws e root account é o usuário de uma aws account.

Well-Archited

É um guia de boas práticas para usar a aws. O ciclo é aprender, mensurar e melhorar. É baseado em 5 pilares. Existe um formulário que pode ser aplicado para saber se o time está seguindo as boas práticas.

ARN

É uma especie de id para tudo o que tem na aws (aws resource number)

Internet Getway

Vai levar as redes "para o mundo". Só podemos ter 1 por VCP.

Route Table

Faz a ligação entre a internet gatway e as subnets.

Network ACL

Controle de acesso

Zonas de Disponibilidade

São pontos onde os datacenters estão localizados dentro de uma região. Ao odar a aplicação em diversas regiões, o acesso pode ser mais rápido, já que os usuários estarão mais próximos dos datacenters.

Acesso so serviços

É necessário criar um usuário de serviço IAM e realizar a autenticação via chaves access key id e secret access key

EC2 (Elastic Compute Cloud)

Ela é o nosso computador na nuvem, permitindo criar instancias de servidores virtuais com sistemas operacionais linux ou windows. Existem vários tipos de máquinas que podem ser criadas, uma delas são as low code, usadas para sites pequenos. As máquinas são pagas por hora, também variando conforme o tipo de máquina e região.

Com ela é possivel:

  • Acessar o terminal da máquina;

  • Instalar o Docker e executar uma imagem;

  • Rodar o nginx;

  • Simular stress dentro da máquina e ver quais os efeitos causados;

  • Realizar o rebot da máquina.

Quando uma instancia do EC2 é removida, o volume do tipo root onde o sistema operacional está instalado também é removido.

Podemos liberar uma porta da instancia EC2 em security group.

5 mim. é o intervalo padrão para monitoramento básico sem estar com o cloud watch habilitado.

VPC

Tem a ver com network/redes, funcionando como uma rede virtual isolada. Ao usar essa rede teremos acesso a um interválo de IP's (IPV4). Obs: Estudar sobre enderacamento de IP's.

Não é possivel rodar volumes em regiões diferentes.

Snapshots

E recomendado parar a execução da instancia antes de criar um snapshot.

Fazer copia de snapshot é usado para fazer migrações.

É possivel criar uma rotina para gerar snapshots com o lifecycle (recomendado realizar durante a madrugada).

Os snapshots são armazendados no S3 de forma incremental, por isso, o primeiro sempre será o mais demorado.

O melhor placement group para baixa latencial é o cluster.

Podemos entrar em cada container em cada task que está rodando.

Amazon Route Table

É um conjunto de regras, também conhecidos como conjunto de rotas, que são usados para determinar o tráfico de rede de sua subnet.

Amazon Security Group

É um componente de atua como um firewall virtual que controla o tráfego para uma ou mais instancias.


É possível configurar um MFA Virtual (gerando um QRCode, chanve, etc) ou fisico (ex: pendrive).

Role

São grupos de polices

S3

Fornece uma API que pode ser gerenciada com diversas linguagens pela ferramenta aws-sdk

Bucket: corresponde as pastas

Objetos: correspodem aos arquivos e metadados (nome, tamanho, tipo, etc).

Ao criar um bucket, precisamos definir uma região. Essa escolha é importante pois irá determinar o quão rápido as entregas serão feitas. Seu usuário é unico a ter acesso ao recurso. É possivel configurá-lo para gerar log de atividades. Como as requisições do S3 são do tipo GET, cada arquivo inserido em bucket terá sua própria url.

Enhanced Uploader: permite o upload de pastas e arquivos diferente do upload de arquivos tradicional.

É possível armazenar sites estáticos dentro do S3.

Os objetos podem ter até 5 terabytes

É possível ter/usar autenticação em modo MFA ao tentar excluir recursos do bucket

S3 Replication: é possivel replicar objetos em outros buckets

Podemos ter diferentes classes de armazenamento dependendo da frequencia de acesso a performance requerida, por exemplo.

S3 Object Lambda: chama nosso próprio código para manipulação de arquivos, processamento de dados, etc.

R red O openshift S service A aws

O ROSA é a junção dos serviços openshift e aws. Na conta aws, deve exigir um usuário IAM para gerenciamento.

AWS SES

É um serviço para gerencialmento de envio de emails da AWS. Este serviço é pago com base no volume de emails enviados e recebidos, ou seja, é pago sob demanda. Existe uma API da SESque contém endpoints para enviar e receber emails.

Permite:

📧 Gerenciamento de emails.

📧 Configuração de emails.

📧 Mapear reputação.

Amazon SNS

É usado para notificar sobre os emails que foram devolvidos, produziram uma reclamação ou foram entregues com sucesso ao destinatário.

Quotas

Determinam a capacidade de infraestrutura do serviço SES.


Existem arquivos que são incompativeis para erem enviados em anexo no email.

Score

Caso a taxa de devoluções for maior do que o permitido, a AWS pode sinalizará este problema. Se não for dada uma resposta ou o problema que causa a taxa de devoluções não for solucionado nos próximos 88.000 emails enviados após a primeira notificação, a AWS pode bloquear o funcionamento do SES.

Uma das medidas para evitar que essa taxa aumente é não enviar emails para destinatários que colocaram outros emails como span e realizar alterações no processo de envio com base na analise do time técnico.

A resposta para a AWS deve conter:

  • O método utilizado para rastrear as devoluções

  • Como será garantido que os destinatários são válidos antes de realizar os envios.

Falhas intermitentes e temporais como uma caixa postal cheia ou devolução por endereços bloqueados não contam para a alta na taxa de devoluções.

É necessário manter uma taxa de devolução (também conhecido como bounce rate) abaixo de 2%. Taxas acima deste valor podem afetar a capacidade de entrega dos emails.

Apenas os emails para domunios não verificados são considerados ao calcular a taxa de devolução.

Remover endereços devolvidos da sua lista, sem uma investigação mais profunda, pode não resolver o problema subjacente.

A AWS não fornece uma lista de emails que fizeram as devoluções para proteger a identidade deles (LGPD) e nem quais emails que foram devolvidos.

As devoluções não estão relacionadas as cotas de envio.

Complaint Race

Taxa de reclamação


Monitore o engajamento com os emails que voce envia e interroma o envio para destinatários que não abrirem e nem clicam nas mensagens.

Forneça aos usuários uma maneira clara para não receber mais os emails.

Configuração

aws configure set aws_access_key_id <AWS_ACCESS_KEY_ID>
aws configure set aws_secret_access_key <AWS_SECRET_ACCESS_KEY>

IAM

Retorna informações do usuário:

aws iam get-user

S3

Listando buckets

aws s3 ls

Listando recursos de um bucket

aws s3 ls <bucket_name>

Listando os arquivos do bucket

aws s3 ls <bucket_name> --recursive

Copiando um recurso da máquina para o bucket

aws s3 cp <local_path.type> s3://<bucket_name>/<local_path.type>

Sistemas Operacionais

Os SOS são programas que gerenciam e alocam recursos de hardware do computador como CPU, memória, disco rígido, dispositivos de entrada e saída e rede. Além de estar presente na nossa máquina, está nos servidores que hospedam nossas aplicações.

Redes

Uma rede é um grupo de computadores e outros dispositivos conectados para a troca de informações

Observalidade

É entender o que está acontecendo no sistema por meio de métricas, logs e rastreabilidade, identificando sua saúde em termos de infraestrutura e aplicação

IAC

É uma prática que permite com que a pltaforma seja suportada por uma infra com mais rápidez.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment