Tutoriais
Como implantar, dimensionar e expor um aplicativo simples no MKE
1.Crie um novo deployment - No Kubernetes, um Deployment é um objeto que pode definir um estado desejado para o seu aplicativo, incluindo o número de réplicas (contêineres) que você deseja que estejam em execução
kubectl create deployment nginx --image=nginx
2.Verifique o status do deployment
kubectl get deployments
3. Também é possível verificar no formato yaml. Este formato pode ser pode ser utilizado para criar novamente este deployment.
kubectl get deployment nginx -o yaml
4. Execute novamente o comando e redirecione a saída para um arquivo. Em seguida, edite o arquivo “first.yaml”.
kubectl get deployment nginx -o yaml > first.yaml
vim first.yaml
5. Remova do arquivo “first.yaml”, as linhas creationTimestamp, resourceVersion e uid. Remova também todas as linhas incluindo e após status, que devem estar por volta da linha 120, se as outras já tiverem sido removidas.
6. Delete o deployment existente.
kubectl delete deployment nginx
7. Edite novamente o arquivo first.yaml e adicione as três linhas seguintes após a linha name: nginx dentro do objeto Spec:
ports: - containerPort: 80 protocol: TCP
8. Crie novamente o deployment utilizando o seguinte comando:
kubectl create -f first.yaml
9. Verifique o Pod e o Deployment
kubectl get deploy,pod
10. Delete o serviço criado anteriormente
kubectl delete svc nginx
11. Crie novamente o serviço e passe agora o tipo LoadBalancer
kubectl expose deployment nginx --type=LoadBalancer
12. Verifique o status e observe as portas externas mencionadas. A saída mostrará o External-IP como pendente. A menos que um provedor responda com um load balancer, continuará a exibir como pendente. O provisionamento do IP externo pode levar alguns minutos.
kubectl get svc
13. Depois de criar o Deployment, use o seguinte comando para verificar se ele está funcionando corretamente.
kubectl get deployments
14. Escale seu deployment para duas réplicas
kubectl scale deployment nginx --replicas=2
15. Verifique a criação das réplicas
kubectl get pod
16. Utilize novamente o comando
kubectl get svc
verifique se o IP externo foi atribuído a aplicação.
kubectl get svc
Cole o IP externo no seu navegador. Se todas as etapas anteriores foram seguidas corretamente, você deverá ser capaz de visualizar a página “Welcome to nginx!”
17. Após o teste, se desejar excluir o deployment para recuperar recursos do sistema, execute os seguintes comandos:
kubectl delete deployments nginx
kubectl delete ep nginx
kubectl delete svc nginx
Note que a exclusão de um deployment não exclui os endpoints ou serviços.
Como excluir um cluster
- Abra o portal Magalu Cloud em https://portal.magalu.cloud.
- No painel inicial, escolha a opção Lista de clusters.
- Na lista de clusters, selecione o menu de opções, do cluster que deseja excluir.
- Clique em Excluir.
- Para confirmar a exclusão do cluster, digite o nome exato do cluster na janela de confirmação.
- Clique em Excluir na janela de confirmação.
Como criar um node pool
- Abra o portal Magalu Cloud em https://portal.magalu.cloud.
- No painel inicial, escolha a opção Lista de clusters.
- Clique no nome do cluster, na listagem de clusters no painel de controle.
- Na aba superior selecione Node Pools.
- Clique em Criar Node Pool.
- Em Nome do Node Pool, insira um nome descritivo para o Node Pool, para exibição no painel de controle.
- Na opção Escolher o Machine Type, escolha a configuração dos nodes que serão criados dentro do node pool.
- Na opção Escolher o número de Nodes, defina o número de nodes para o node pool.
- Clique em Criar Node Pool.
- Pode levar alguns minutos até que o Node Pool esteja criado. Aguarde até que o status indicado seja Ligado.
Como redimensionar um node pool
- Abra o portal Magalu Cloud em https://portal.magalu.cloud.
- No painel inicial, escolha a opção Lista de clusters.
- Clique no nome do cluster, na listagem de cluster.
- Na aba superior selecione Node Pools.
- Na lista, selecione o menu de opções, do node pool que deseja redimensionar.
- Clique em Redimensionar.
- Clique no ícone ➖, para diminuir a quantidade de nodes,
ou clique no ícone ➕, para aumentar a quantidade de nodes.
Aviso: Essa ação altera o custo aproximado mensal do pool. - Para confirmar a alteração, clique em Salvar Alterações.
- Pode levar alguns minutos até que seja concluída a operação de redimensionar o Node Pool. Aguarde até que o status indicado seja Ligado.
Como excluir um node pool
- Abra o portal Magalu Cloud em https://portal.magalu.cloud.
- No painel inicial, escolha a opção Lista de clusters.
- Clique no nome do cluster, na listagem de cluster.
- Na aba superior selecione Node Pools.
- Na lista, selecione o menu de opções, do node pool que deseja excluir.
- Clique em Excluir.
- Para confirmar a exclusão do cluster, digite o nome exato do node pool na janela de confirmação.
- Clique em Excluir na janela de confirmação.
Como realizar Backup and restore de seu MKE cluster usando Velero
Velero é uma ferramenta popular de código aberto que pode fornecer recuperação de desastres de cluster Kubernetes, migração de dados e proteção de dados.
O Velero pode fazer backup de recursos de cluster Kubernetes e volumes persistentes para back-end de armazenamento com suporte externo sob demanda ou por agendamento.
Pré-requisitos:
- kubectl instalado localmente.
- Configurar o object storage provider e block storage provider que usará para para armazenamento de metadados/recursos na lista de provedores compatíveis.
- Instale a CLI do Velero de acordo com o S.O em: https://velero.io/docs/v1.5/basic-install/#install-the-cli.
- Instale o servidor do Velero via CLI e/ou via helm chart em: https://github.com/vmware-tanzu/helm-charts/blob/main/charts/velero/README.md
- Se a instalação ocorrer via CLI, será necessário instalar e configurar os componentes do servidor de acordo com provider:
- Se a instalação ocorrer via Helm Chart:
-
- Configure os componentes do servidor em: https://github.com/vmware-tanzu/helm-charts/blob/main/charts/velero/README.md#installing
- Configure as credenciais do provedor utilizado para armazenamento de metadados/recursos. As credenciais deverão ser armazenadas em uma secret e referenciada na configuração de instalação com o path do arquivo da credencial ou nome da secret (à depender do tipo de armazenamento das credenciais) em: https://github.com/vmware-tanzu/helm-charts/blob/main/charts/velero/README.md#provider-credentials .
- Faça o deploy do Velero no seu cluster com as seguintes opções de configuração: https://github.com/vmware-tanzu/helm-charts/blob/main/charts/velero/README.md#option-1-cli-commands.
- Configure os componentes do servidor em: https://github.com/vmware-tanzu/helm-charts/blob/main/charts/velero/README.md#installing
-
- Crie seu primeiro backup em: https://velero.io/docs/v1.9/backup-reference/
-
-
- Para outras operações, o Velero usa os verbos mais famosos disponíveis do kubectl (get, create, describe, logs e delete).
- Para outras operações, o Velero usa os verbos mais famosos disponíveis do kubectl (get, create, describe, logs e delete).
-
-
- Crie seu primeiro restore em: https://velero.io/docs/main/restore-reference/
-
-
- Para outras operações, o Velero usa os verbos mais famosos disponíveis do kubectl (get, create, describe, logs e delete).
-
-