Day 13 | Top 15 AWS Services that Every DevOps Engineers should learn | #aws #devops
Introdução ao Curso de DevOps
Visão geral da introdução ao curso e tópicos abordados anteriormente.
Contexto do Curso
- O apresentador, Abhishek, dá as boas-vindas aos espectadores e menciona que este é o dia 13 do curso completo de DevOps.
- Ele destaca que o curso tem duração de 45 dias e que vídeos anteriores cobriram conceitos importantes como Linux, shell scripting e implantação em AWS EC2.
- Um link para a playlist dos primeiros 12 dias será disponibilizado na descrição do vídeo.
Serviços da AWS para DevOps
Discussão sobre a importância dos serviços da AWS no contexto de DevOps.
Importância da AWS
- A AWS é um dos principais provedores de nuvem, oferecendo mais de 200 serviços diferentes.
- A principal ideia por trás da AWS é facilitar a vida dos desenvolvedores através de modelos de serviço, como Kubernetes como serviço.
- O modelo SaaS (Software as a Service) está se tornando cada vez mais comum na plataforma da AWS.
Foco nos Serviços Relevantes
- É impraticável para um engenheiro DevOps conhecer todos os 200 serviços disponíveis na AWS; o foco deve ser nos serviços relevantes para suas funções específicas.
- O apresentador enfatiza que não é necessário entender todos os serviços, especialmente aqueles fora do escopo típico de um engenheiro DevOps, como aprendizado de máquina.
Automação e Eficiência em DevOps
Exploração das responsabilidades centrais dos engenheiros DevOps em relação à automação.
Papel do Engenheiro DevOps
- A automação e a eficiência são fundamentais nas práticas de DevOps; esses aspectos devem ser priorizados pelos profissionais da área.
- O vídeo irá abordar tanto os serviços específicos da AWS quanto estratégias para melhorar a eficiência e automatizar processos na plataforma.
Serviços Essenciais da AWS
Identificação dos principais serviços que todo engenheiro DevOps deve conhecer.
Principais Serviços
- O EC2 (Elastic Compute Cloud) foi discutido anteriormente no curso; é crucial para entender sua funcionalidade antes de avançar para outros conceitos.
- Outro conceito importante é o VPC (Virtual Private Cloud), essencial para garantir segurança nas instâncias EC2 e recursos na nuvem.
Componentes do VPC
- Os componentes críticos do VPC incluem grupos de segurança, blocos CIDR (intervalos subnet), regras de tráfego inbound e outbound, entre outros elementos essenciais à segurança na nuvem.
Compreendendo os Serviços da AWS: EBS, S3 e IAM
Visão Geral da Seção
Neste segmento, discutem-se serviços essenciais da AWS, incluindo Elastic Block Store (EBS), Amazon S3 e Identity and Access Management (IAM). A importância de cada serviço é destacada em cenários práticos e na gestão de permissões.
Importância do EBS e Armazenamento
- O EBS é fundamental para entender como configurar volumes de armazenamento em aplicações na AWS. É crucial saber como implantar e anexar volumes às instâncias EC2.
- Os serviços de armazenamento incluem EBS e EFS, que são utilizados para armazenar dados em diferentes formatos. O conhecimento sobre esses serviços é vital para a gestão eficaz dos dados.
- Em cenários ao vivo, o uso de volumes é comum, especialmente ao lidar com bancos de dados ou aplicações que geram muitos arquivos. Armazenar informações em montagens de volume permite realizar backups e snapshots facilmente.
- A prática comum no gerenciamento físico também se aplica à AWS; portanto, compreender o funcionamento do EBS é essencial para uma boa administração dos recursos.
- O Amazon S3 se destaca como um serviço amplamente utilizado devido à sua capacidade de armazenar grandes quantidades de dados a baixo custo. Recentemente, a criptografia padrão foi implementada no S3 para aumentar a segurança dos dados armazenados.
Gerenciamento de Dados com S3
- O S3 oferece funcionalidades como versionamento e configuração de regras IAM. Ter um bom entendimento sobre esses aspectos é importante para garantir a segurança e integridade dos dados.
- A escolha do S3 deve ser baseada na necessidade de armazenamento econômico e escalável. Ele permite que as empresas armazenem grandes volumes de informações sem comprometer o orçamento.
Gestão de Identidade com IAM
- O IAM (Identity and Access Management) é um componente crítico na AWS que controla quem pode acessar quais recursos. É essencial configurar permissões adequadas para usuários dentro da organização.
- Um exemplo prático envolve conceder diferentes níveis de acesso aos membros da equipe: desenvolvedores podem ter acesso total enquanto engenheiros QA podem ter apenas acesso leitura aos repositórios.
- Configurar políticas através do IAM ajuda a prevenir acessos não autorizados, garantindo que apenas usuários apropriados tenham permissão para modificar ou excluir recursos críticos.
Serviços Cruciais da AWS: Monitoramento e Automação
Visão Geral da Seção
Nesta seção, discutimos a importância de serviços como CloudWatch e Lambda na gestão e automação de recursos na AWS. A monitorização é destacada como um componente essencial para garantir a confiabilidade e segurança das aplicações.
Importância do CloudWatch
- O CloudWatch é um serviço fundamental da AWS que cuida do monitoramento dos recursos, sendo crucial para o gerenciamento eficaz.
- A monitorização e a observabilidade são consideradas essenciais no mundo DevOps e Site Reliability Engineering (SRE), pois garantem que as aplicações sejam confiáveis, sustentáveis e altamente disponíveis.
- O CloudWatch tem acesso a todas as ações realizadas na AWS, permitindo rastrear eventos como a criação de buckets S3 ou volumes EBS.
- É possível configurar ações automatizadas com base em eventos específicos, como enviar notificações quando um volume EBS não está criptografado, ajudando a manter conformidade organizacional.
- Como engenheiro DevOps, você atua como guardião da segurança na AWS, garantindo que os recursos sejam utilizados corretamente conforme as políticas de compliance.
Integração entre CloudWatch e Lambda
- A combinação do CloudWatch com o Lambda permite automatizar respostas a eventos indesejados, como volumes EBS não criptografados.
- O Lambda pode ser utilizado para enviar notificações por email quando uma ação específica é detectada pelo CloudWatch.
- O uso do Lambda após o CloudWatch facilita ações automáticas sem intervenção manual, aumentando a eficiência operacional.
- O Lambda é descrito como uma computação serverless que executa funções curtas sem necessidade de provisionar servidores manualmente.
- Diferente do EC2, onde você precisa gerenciar instâncias manualmente, o Lambda executa código automaticamente em resposta a eventos.
Diferenças entre Lambda e EC2
- Enquanto o EC2 requer configuração manual de instâncias para executar aplicações, o Lambda permite execução automática baseada em eventos sem necessidade de configuração prévia.
- As funções do AWS Lambda podem ser criadas rapidamente e pagas apenas pelo tempo de execução efetivo das funções.
- Ao usar o Lambda, não há necessidade de escolher sistemas operacionais ou gerenciar infraestrutura; tudo é feito automaticamente pela AWS durante a execução da função.
- O modelo serverless do Lambda é ideal para tarefas curtas que precisam ser executadas rapidamente sem sobrecarga administrativa constante.
Serviços da AWS: Integração Contínua e Entrega Contínua
Visão Geral da Seção
Nesta seção, discutimos uma variedade de serviços oferecidos pela AWS, focando em integração contínua (CI) e entrega contínua (CD), além de monitoramento de configurações na nuvem.
Principais Serviços da AWS
- O apresentador revisa os serviços discutidos até agora: EC2, VPC, EBS, S3, IAM, CloudWatch e funções Lambda. Ele convida perguntas sobre esses serviços.
- Introduz o conceito de "Cloud Build Services", que se refere a ferramentas para CI/CD disponíveis na AWS. Menciona a importância dessas ferramentas para desenvolvedores.
- A AWS oferece serviços como CodePipeline e CodeBuild para facilitar CI/CD. Esses serviços são essenciais para engenheiros DevOps.
Detalhes sobre CI/CD na AWS
- O serviço AWS CodePipeline é comparado ao Jenkins Pipeline; permite definir ações e eventos em um fluxo de trabalho automatizado.
- AWS CodeBuild é um serviço gerenciado que compila código, executa testes e gera pacotes de software automaticamente.
- AWS CodeDeploy facilita a implantação de aplicações em instâncias EC2 ou servidores locais. É crucial para garantir que as versões mais recentes das aplicações estejam sempre disponíveis aos usuários.
Considerações sobre Migração e Uso dos Serviços
- O apresentador sugere que organizações totalmente na AWS reconsiderem o uso do Jenkins em favor dos serviços nativos da AWS para CI/CD.
- Para empresas com múltiplas nuvens ou planos futuros de migração entre plataformas (como Azure), recomenda-se cautela ao usar os serviços específicos da AWS devido à sua limitação a essa plataforma.
Monitoramento e Configuração na Nuvem
- A importância do monitoramento das configurações na nuvem é destacada. O AWS Config é mencionado como um serviço essencial que ajuda a rastrear alterações nas configurações dos recursos.
Entendendo os Serviços de Faturamento e Custos na AWS
Visão Geral da Seção: Esta seção aborda a importância dos serviços de faturamento e custos na AWS, destacando como as organizações podem monitorar seus gastos em diferentes serviços.
Importância do Monitoramento de Custos
- O serviço de faturamento permite que as organizações conheçam onde estão gastando dinheiro, como em EC2, S3 ou EBS.
- É crucial ter uma boa compreensão dos serviços relacionados a faturamento e custos para gerenciar despesas eficazmente.
Segurança de Dados com AWS KMS
Visão Geral da Seção: Aqui discutimos o AWS Key Management Service (KMS), sua função na segurança dos dados e a importância da criptografia.
Funções do AWS KMS
- O AWS KMS é essencial para manter dados seguros, permitindo a criptografia de arquivos e segredos sensíveis.
- Para acessar um bucket S3 criptografado, é necessário ter acesso a uma chave segura, que pode ser gerenciada pelo KMS.
- O KMS é um serviço comum no uso real, especialmente para gerenciamento de certificados e rotação de chaves.
Auditoria Operacional com CloudTrail
Visão Geral da Seção: Esta parte explora o CloudTrail e sua relevância para auditorias operacionais e conformidade dentro da AWS.
Funcionalidades do CloudTrail
- O CloudTrail registra atividades API na AWS, armazenando logs que são essenciais para auditoria operacional.
- É importante conhecer as regras de governança e conformidade relacionadas à segurança dentro da organização.
- Os logs do CloudTrail podem ser acessados por períodos específicos, como 30 dias ou seis meses.
Containers e Kubernetes na AWS
Visão Geral da Seção: A seção final discute o uso crescente de containers e a oferta do serviço Elastic Kubernetes Service (EKS).
Compreendendo EKS e ECS
- O uso de containers está em alta; portanto, o conhecimento sobre Kubernetes é fundamental para engenheiros DevOps.
- O EKS é um serviço gerenciado pela AWS que facilita o uso do Kubernetes sem complicações adicionais.
- A diferença entre EKS (serviço gerenciado baseado em Kubernetes) e ECS (solução proprietária da AWS para orquestração de containers).
Compreendendo o ELK Stack e sua Importância
Visão Geral da Seção
Nesta seção, discutimos a importância do ELK Stack (Elasticsearch, Logstash e Kibana) no contexto de microserviços e como ele pode ser utilizado para gerenciar logs de aplicações.
A Importância do Elasticsearch
- O ELK Stack é composto por Elasticsearch, Logstash e Kibana, ferramentas essenciais para gerenciamento de logs.
- Em ambientes com microserviços, cada serviço gera uma quantidade significativa de logs; coletar essas informações é crucial para análise.
- Para monitorar erros em aplicações, especialmente quando se tem milhares de microserviços, um mecanismo eficiente de logging é necessário.
- O Elasticsearch se destaca como uma solução eficaz para busca e análise de logs; combinações com Logstash e Kibana são recomendadas.
- Dependendo do projeto em que você está envolvido, pode ser necessário aprender sobre outras tecnologias como TensorFlow.
Serviços AWS Relevantes
- Durante entrevistas técnicas, os entrevistadores costumam abordar serviços da AWS como EC2, VPC, EBS, S3 buckets e IAM.
- Outros serviços discutidos incluem CloudWatch, Lambda Functions e serviços relacionados à configuração e cobrança na AWS.