Skip to content

jonathanmdr/workshop-k8s

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Workshop Introdução ao kubernetes

Workshop sobre Kubernetes, conhecendo e aplicando alguns conceitos básicos de uso do k8s.

Também conheceremos e aplicaremos os conceitos de uso do helm como gerenciador de pacotes para aplicações em cluster kubernetes.

node node node

Sobre o Projeto

O projeto consiste em dois microsserviços simples baseados no NGINX, ambos possuem uma variável de ambiente de nome AUTHOR onde podemos passar um nome ou algo que desejemos que seja exibido junto a mensagem de boas vindas ao acessar o serviço.


Arquitetura do projeto

node


Setup Ambiente

Execute o script bash *_setup.sh para montar o ambiente com os recursos necessários de acordo com o seu sistema operacional.

ℹ️ Suporte para interpretadores bash & zsh.

⚠️ O script foi testado somente em distribuições Linux baseadas no Debian, Mac x86-64 e M1.


Requirements Linux Mac
curl Yes Yes
git Yes No
docker Yes Yes
brew No Yes

Installation Components
kubectx
kubens
kubectl
helm
minikube

Exemplo de Uso Setup

Linux

~$ ./linux_ubuntu_setup.sh bash #Para quem utiliza o .bashrc
~$ ./linux_ubuntu_setup.sh zsh #Para quem utiliza o .zshrc

Mac M1

~$ ./mac_m1_setup.sh

Mac x86-64

~$ ./mac_x86_64_setup.sh

Setup Linux File
Setup Mac M1 File
Setup Mac x86-64 File


Deploy

Execute o script bash deploy.sh para subir a aplicação toda no cluster kubernetes local configurado anteriormente no setup.

ℹ️ Suporte para interpretadores bash & zsh.

⚠️ O script foi testado somente em distribuições Linux baseadas no Debian, Mac x86-64 e M1.


Exemplo de Uso Deploy

~$ ./deploy.sh up #Para fazer o deploy da aplicação
~$ ./deploy.sh down #Para fazer o undeploy da aplicação

O deploy da aplicação considera que exista um DNS válido informado na propriedade host nas regras de especificações do Ingress, para simular o comportamento em ambiente local com o Minikube é necessário mapear o IP do Minikube no arquivo localizado em /etc/hosts. O IP pode ser obtido através do seguinte comando: minikube ip. O nosso DNS que deve ser configurado é: workshop-k8s.


Deploy Application File