Olá pessoal,
Para aqueles que nâo conseguiram realizar a implantaçâo do EKS (Elastic Kubernetes Service) que o Cristiano comentou no post anterior, pois a sua empresa está usando o Azure por exemplo,
hoje vamos falar a respeito do AKS (Azure Kubernetes Services) quem sabe você convence o seu chefe a pelo menos realizar uma POC? emmmm
Ahhh, mas antes você sabe o que é Kubernetes? Caso ainda não esteja familiarizado recomendo que leias os posts que fizemos sobre o assunto ? Segue os links:
AKS
O AKS é um serviço de Kubernetes gerenciado pelo Azure que abstrai a instalaçâo, configuraçâo e boa parte do gerenciamento de um cluster de Kubernetes. Quando você cria um AKS o mesmo já disponibiliza uma interface onde é possível ver o status atual de seu cluster, containers e ainda por cima nâo cobra valor algum pelos servidores Master do cluster, apenas pelos Workers.
Com toda essa facilidade não tem porque você criar uma estrutura de máquinas virtuais e depois realizar a instalação do Kubernetes, sendo que você irá precisar de pessoas para administrar ou automatizar essa instalação.
Prós:
- Integração de RBAC simples com o Azure Active Diretory (É possível definir pessoas e grupos do AD que podem acessar diretamente o seu cluster de Kubernetes)
- Integração com o Azure Disks (É só dizer qual tipo de disco seu Pod vai usar que automaticamente o disco é criado no Azure)
- Azure CNI (Definir uma subnet especifica já criada e colocar IPs válidos nos Pods para realizar alguma integração com algum recurso do Azure)
- Escalar automaticamente (Deixe configurado para aumentar a quantidade de nós quando chegar em x% de CPU)
- Integração com Log Analytics (Enviar os logs dos containers diretamente para o Log Analytics e gerar Dashboards e alertas a partir dele)
Contras:
- Caso queira fazer alguma configuração especifica nos Managers nâo é possível.
- Não é possível mudar a engine de containers (Usam Docker).
Hands On
Partiu? vamos ver como é fácil realizar a instalaçâo e configuraçâo de um AKS?
Para isso existem duas maneiras, caso vocês utilizem Windows, é possível realizar a instalação do az-cli ou via Powershell realizar a instalação do módulo Powershell para o Azure. Para Linux deve ser feita a instalaçâo do az-cli
Windows
- https://docs.microsoft.com/pt-br/cli/azure/install-azure-cli-windows?view=azure-cli-latest
Linux
- Debian/Ubuntu
- https://docs.microsoft.com/pt-br/cli/azure/install-azure-cli-apt?view=azure-cli-latest
- RedHat/Centos
- https://docs.microsoft.com/pt-br/cli/azure/install-azure-cli-yum?view=azure-cli-latest
Feito a instalação do az-cli, você deve realizar o login no azure para isso vamos executar:
az login
Após executar o comando irá aparecer na tela uma URL para você acessar e se autentica no portal do Azure, após realizar essa autenticação o az-cli
estará pronto para uso.
Para realizar a criação do AKS vamos utilizar o comando az aks create
esse comando possuí apenas 2 parâmetros obrigatórios são eles:
--name: Nome do cluster de AKS.
--resource-group: Grupo de recursos onde o cluster será criado.
Porém vamos utilizar outros parâmetros para ver o que mais a gente pode definir, então vamos utilizar mais os seguintes parâmetros:
--max-pods: Máximo de pods por worker.
--disable-rbac: Desabilita RBAC.
--node-count: Quantidade de Workers iniciais
--zones: Zona de disponibilidade do Azure
--nodepool-name: Nome do pool de máquinas para o AKS
--max-count: Quantidade máxima de Workers que podem ser criadas.
Para realizar a criação do cluster de AKS basta executar
az aks create --name aksmundodocker --resource-group resource_aks --max-pods 100 --disable-rbac --node-count 2 --zones 1 --nodepool-name aks --min-count 1 --max-count 3 --location eastus --enable-cluster-autoscaler
A criação deve demorar algo em torno de 7 minutos, após a criação do cluster basta você executar.
az aks get-credentials --name aksmundodocker --resource-group aks
Com isso você já tem acesso ao seu cluster de AKS e pode começar a trabalhar nele. Para validar você pode executar o kubectl para testar a comunicação com o cluster:
kubectl get nodes
Eai, curtiu? Então manda para alguém que talvez tenha interesse, e claro, fique a vontade para conversamos ?
Grande Abraço!