DevSecOps

1 abr, 2019

Azure Kubernetes Services – AKS: referências gratuitas e dicas para solução de problemas comuns

Publicidade

Neste artigo trago diversas referências gratuitas (artigos, vídeos, slides, projetos de exemplo) que produzi sobre o Azure Kubernetes Service (AKS), alternativa que permite a utilização do Kubernetes a partir do Microsoft Azure.

Além disso, incluí aqui alguns problemas comuns que podem acontecer ao utilizarmos o serviço.

Artigos

Kubernetes – do Pod ao Deployment Automatizado (slides)

Vídeos

O uso do Kubernetes já foi tema de dois eventos online e gratuitos do Canal .NET, com a gravação disponível no YouTube e abordando desde os primeiros passos ao deployment automatizado via Azure DevOps (antigo VSTS):

Erro ao tentar executar o comando az aks get-credentials

Ao tentar conceder acesso via PowerShell ou bash para utilização de um cluster criado via Azure Kubernetes Service através do comando (considerando um grupo de recursos chamado TesteKubernetes, assim como um recurso do AKS denominado ContagemService):

az aks get-credentials --resource-group TesteKubernetes --name ContagemService

Poderá ser exibido o erro “A different object named <NOME DO RECURSO> already exists in clusters”, como indicado na próxima imagem (provavelmente um recurso com o mesmo nome foi criado antes e posteriormente excluído):

Para resolver esse problema, basta acrescentar o parâmetro –overwrite-existing ao comando mencionado anteriormente:

az aks get-credentials --resource-group TesteKubernetes --name ContagemService --overwrite-existing

É o que demonstra a imagem a seguir:

Erros de acesso ao Dashboard do Kubernetes

Com o comando a seguir (az aks browse), temos acesso ao Dashboard do Kubernetes:

az aks browse -g TesteKubernetes -n ContagemService

Recentemente, no entanto, o acesso a essa função foi desativado no Azure, de forma a restringir o acesso ao cluster. Assim, é comum que sejam apresentados erros como os descritos nas próximas imagens:

A instrução a seguir permitirá que se libere o acesso ao Dashboard do Kubernetes:

kubectl create clusterrolebinding kubernetes-dashboard -n kube-system --clusterrole=cluster-admin --serviceaccount=kube-system:kubernetes-dashboard

Finalmente teremos sucesso ao acessar o Dashboard do Kubernetes:

Referências