Criação de PODs do Kubernetes com arquivo YAML (manifesto)
- Rodrigo Saito
- há 33 minutos
- 2 min de leitura
Para melhor gerenciarmos a criação de componentes no Kubernetes, podemos utilizar arquivos YAML ou também conhecidos como Manifest Files.
Para facilitar dentro do Ubuntu, vamos utilizar o ambiente gráfico para fazer a criação e manipulação desses arquivos, utilizando o utilitário que instalamos, o FeatherPad ou qualquer editor de texto de sua preferencia:

Vamos trabalhar com ele e com um terminal para executarmos o arquivo YAML.
Uma observação MUITO IMPORTANTE, é não utilizar <TAB> e sim <BARRA ESPACO> para que o arquivo seja tabulado.
Escreva o código que está no arquivo da mesma forma (conterá erro proposital)

O código será:
apiVersion: v1
kind: POD
metadata:
name: my-pod-nginx
labels:
apps: my-app
tier: frontend
spec:
container:
- name: my-container-nginx
image: nginx
Salve o arquivo em Documents, com o nome de my-pod.yaml

No terminal, vá até a pasta Documents:
cd DocumentsVeja se já existe algum POD executando:
kubectl get pods
Caso esteja limpo, está OK.
Para tentar validar o arquivo digite o comando (que conterá erro)
kubectl create -f my-pod.yamlPodemos verificar que existe validação e itens a serem corrigidos:

No documentos, conserte a palavra container para "containers", e execute o comando para tentar validar novamente no terminal:
kubectl create -f my-pod.yamlPodemos ver que as mensagens de erro não são exatamente as mesmas:

Os arquivos YAML necessitam estarem totalmente alinhados. Coloque mais dois espaços antes das palavras "apps" e "tier", salve o arquivo:

Execute novamente o comando:
kubectl create -f my-pod.yamlAgora, a principio o comando não apresentou nenhum erro:

Verifique os pods criados com o comando:
kubectl get pods
Dessa forma, vimos como é a criação de PODs através de arquivos YAML.
Podemos deletar essa POD e verificar se relamente nao existirá nenhuma POD a mais existente.
kubectl delete pods my-pod-nginx
kubeclt get pods
Também é possível utilizar o comando apply ao invés de create:
kubectl apply -f my-pod.yaml
Depois podemos apagar novamente a pod criada, verificando se realmente não existe mais nada:
kubeclt get pods
kubectl delete pods my-pod-nginx
kubeclt get pods
Voce pode fazer um exercício, fazendo como desafio para verificar o que voce conseguiu absorver dos comandos apresentados.
Crie uma arquivo YAML, com a versão 1, de um componente Pod, de uma imagem Web-Server chamada httpd, com um container chamado my-contaianer-apache, contendo os seguintes metados em name: my-pod-apache-challenge e o app-type de um label chamada web. Teste a validação desse arquivo criando o POD no termial e depois apague esse POD.
Consegue criar esse arquivo?
Antes de ver o resultado, faça o seu e compare com a resposta:
apiVersion: v1
kind: Pod
metadata :
name: my-pod-apache-challenge
labels:
app-type: web
spec:
containers :
- name: my-container-apache
image: httpdGostou dessa dica?
Um grande abraço e até+!



Comentários