Skip to content

concrete-cristian-trucco/kubernetes-basico

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

titulo descrição autor data
Kubernetes básico
Esse repositório tem algumas ferramentas para automátizar o processo de criação do cluster baremetal.
cristian-trucco
06/06/2018

StackShare

StackShare

Kubernetes básico

Este repositório é focado em Kubernetes - setups baseados em on premise (baremetal) ou seja em VMs tradicionais. Existem breves explicações de conceitos chaves do Kubernetes. Tambémm coloquei oustras ferramentas que vão auxiliar na criação do cluster, como playbooks ansible,vagrant para provisionamento de máquinas locais e Terraform para provisioar a infra em Prod.

Kubernetes alt

Apresentação básica dos conceitos chaves e componentes do Kubernetes.

Rodar o Kubernetes localmente

Rodar um cluster local é possível usando o Minikube é necessário o VirtualBox ou HiperV, ou no caso de não querer instalar nada na máquina pode rodar os labs no http://play-with-k8s.com é possivél criar e gerênciar o cluster direto do navegador.

Obs: Caso não conheça o play with k8s escrevi um artigo no Medium de como criar um cluster nessa plataforma, lá tem explicando tudo com detalhes você vai gastar menos de 10 minutos para ler o artigo e implementar o cluster.

Para Windows utilize meu artigo que mostra como rodar o Minikube no Windows usando o Chocolatey

Minikube

  • Deploy de serviço: Usar os exemplos desse repositório

Subir o Minikube na máquina

minikube start

Subir o Minikube modo RBAC e passando versão do Kubernetes desejada

minikube start --kubernetes-version v1.10.0 --vm-driver=virtualbox --extra-config='apiserver.Authorization.Mode=RBAC'

Acessar o Dashboard do Kubernetes

 minikube dashboard 

Dashboard

O Kubectl é a cli que usaremos para interagir com nosso cluster

Listar os nós do cluster

 kubectl get nodes 

Listar os pods

 kubectl get pods 

Rodando o primeiro exemplo

  • O POD é a menor unidade no cluster Kubernetes, é o objeto que faz a abstração dos containers, é nesse objeto onde nossas aplicações iram rodar. Para rodar um exemplo rápido para ver como o kubernetes funciona entre na pasta deploy-test/ que está na raiz do repositório e execute o comando para criar um pod usando o kubectl.

  • Os comandos a seguir serão executados para criar e expor uma aplicação no cluster Kubernetes.

 cd deploy-test/ 
 kubectl create -f aplicação.yaml 

Deployments é o que garante o estados dos pods, é nele que defino a quantidades de pods que irei rodar

  • Comando cria o objeto deployment abstraindo o pod
 kubectl create -f deployment.yaml 

Cria o serviço que será o ponto de entrada para meus pods

 kubectl create -f servico-aplicacao.yaml 

Pegar a url do meu serviço

 minikube service servico-aplicacao --url 

Listar todos os objetos criados no cluster

 kubectl get deployment,svc,pods,pvc 

Segunda alternativa para o comando acima

 kubectl gel all 
Documentação da Api do Kubernetes