Braspag na Mídia
Braspag lança plataforma de conciliação focada em pequenas...
A Braspag, empresa pioneira em meios de pagamento para e-commerce...
LER MAISBraspag na Mídia
Rodar containers Docker em um computador local é muito simples, basta um comando “docker run nginx”e pronto, você tem seu container lindo rodando, porém quando você tem a necessidade de rodar esse mesmo container em um ambiente de nuvem a história muda…
Você tem que montar seu cluster, configurar o auto-scale, configurar o load balance… MEU DEUS QUANTA COISA! Um certo dia, parei para pesquisar uma solução que poupasse meu tempo, logo, pensei comigo: “não é possível que ninguém tenha feito algo para simplificar esse processo repetitivo”.
Uma das soluções encontradas foi o Azure Kubernetes Services, ele te permite montar um cluster de Kubernetes com 1 único comando, com isso sobra tempo pra focar na sua aplicação e não na configuração de máquinas.
Mas o que é Kubernetes? Falando por alto, Kubernetes é uma ferramenta de orquestração para containers, você monta seu container com o Docker e o Kubernetes faz todo o trabalho de deploy, auto scale, service discovery e muito mais, caso queira saber mais sobre o Kubernetes segue o link da documentação deles: https://kubernetes.io/docs/tutorials/kubernetes-basics/
Montando um Cluster em Kubernetes
Estou levando em consideração que você já tenha o Azure CLI configurado na sua máquina, caso não tenha segue um tutorial de configuração: https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest
Para montar um cluster utilizando o AKS basta um único comando: “az aks create -n NomeDoSeuCluster -g NomeDoGrupoDeRecursos –generate-ssh-keys”
Após alguns minutos você terá o seu cluster montado como pode ser visto na imagem abaixo:
Após montar nosso cluster vamos resgaras as credenciais de acesso com o comando:“az aks get-credentials -n NomeDoSeuCluster -g NomeDoGrupoDeRecursos”
Caso tudo dê certo você irá receber a seguinte mensagem:
Vamos agora configurar o Kubectl CLI, este será utilizado para se comunicar diretamente com o Kubernetes, para fazer isso basta executar o seguinte comando: “az aks install-cli”
Se tudo ocorreu bem será exibido a seguinte mensagem:
Vamos verificar agora qual o estado das máquinas do nosso cluster, para isso utilizaremos o comando:“kubectl get nodes”
E finalmente vamos subir nossa primeira aplicação dentro do nosso cluster!!! Para isso vamos utilizar o comando run: “kubectl run meu-nginx –image=nginx –replicas=1 –port=80”
Vamos chamar o “get pods” para verificar se nossa aplicação foi deployada com sucesso:
Como vimos na imagem acima nossa aplicação foi deployada! porém ela ainda não está disponivel na internet, para disponibilizar nossa aplicação na internet vamos utilizar o comando “expose”:“kubectl expose deployment meu-nginx –port=80 –type=LoadBalancer”
Agora basta chamar o comando “get services” para descobrir qual o IP que nossa aplicação recebeu, essa etapa pode demorar alguns minutos:“kubectl get services –watch”
Como podemos ver nossa aplicação recebeu o IP: 52.179.85.102
Por fim, vamos acessar o IP da nossa aplicação para ver se deu tudo certo!
E não é que funciona mesmo? 😊
Por hoje é isso galera, espero que tenham gostado, essa foi uma pequena demonstração de como o AKS/Kubernetes pode nos ajudar na orquestração de nossos containers,pretendo fazer uma parte 2 deste artigo explicando sobre como utilizar o Azure Container Instance junto com o Kubernetes, deixo logo abaixo alguns links interessantes para quem quer se aprofundar no assunto.
Bibliografia:
Introducing AKS (managed Kubernetes) and Azure Container Registry improvements
Explore Multicloud Deployments with Microsoft’s ACI Connector for Kubernetes
Tiago Rosendo | Desenvolvedor na Braspag, backend de coração e apaixonado pelo frontend, entusiasta de JS e Docker e nas horas vagas não dispensa uma jogatina online.