Terraform, Kops e Kubernetes permitem implementar infraestrutura como código na AWS. Terraform gerencia recursos de infraestrutura na nuvem, Kops simplifica a implantação de clusters Kubernetes na AWS, e Kubernetes orquestra containers em produção.
Infraestrutura como Código(IaC)
● É o processo de gerenciamento e provisionamento de Data Centers utilizando
programação.
● Isso inclui equipamentos físicos, como servidores bare-metal, além de
máquinas virtuais e recursos de configuração associados.
● Software mais utilizados: terraform , cloudformation(aws), ansible, chef.
● Aws, Azure, DigitalOcean, Openstask, GoogleCloud tem suporte ao IaC.
3.
Stateful x Stateless
●Aplicações Stateless são mais simples de gerenciar.
● Container nasceu para morrer, se precisar de persistência o cenário é mais
complexo (Stateful).
● Tipos de persistência em docker:
○ Persistent state
○ Configuration state
○ Session state
○ Connection state
○ Cluster state
https://robinsystems.com/blog/stateless-vs-stateful-containers-1/
Terraform
● Software escritoem Go.
● Projeto iniciou em Julho/2014.
● O HashiCorp Terraform permite criar, alterar e melhorar a infraestrutura de
forma segura e previsível.
● É uma ferramenta de código aberto que codifica APIs em arquivos de
configuração declarativos que podem ser compartilhados entre membros da
equipe, tratados como código, editados, revisados e versionados.
9.
Terraform - Prérequisitos
● Realizar o download do binário GO no site
● Acesso a aws com permissões de administração (~/.aws/credentials)
● Bucket S3 na aws para salvar os estados de execução (*.tfstate)
Kops - KubernetesOperations
● Software escrito em Go.
● Projeto Open Source com contribuições de +ou- 400 desenvolvedores.
● A maneira mais fácil de instalar e executar um cluster Kubernetes em
produção.
● O kops ajuda você a criar, destruir, atualizar e manter clusters Kubernetes de
alta qualidade em produção a partir da linha de comando.
14.
Kops - Prérequisitos
● Realizar o download do binário GO no site
● Acesso a aws com permissões de administração (~/.aws/credentials)
● Possuir um domínio registrado e configurado no Route53 aws
Kubernetes - K8s
●O Kubernetes é um sistema de código aberto que automatiza a implantação,
o dimensionamento e o gerenciamento de containers.
● Ele agrupa containers que compõem um aplicativo em unidades lógicas para
fácil gerenciamento e descoberta.
● O Kubernetes tem 15 anos de experiência na execução de containers em
produção no Google, combinado com as melhores ideias e práticas da
comunidade.
● Forte adoção pela comunidade para a orquestração de containers em
produção.