kubectl config get-contexts
kubectl config use-context
kubectl create -f <FILE_OR_FOLDER>
kubectl apply -f <FILE_OR_FOLDER>
kubectl delete -f <FILE_OR_FOLDER>
kubectl autoscale deployment --cpu-percent=20 --min=1 --max=20
kubectl get deployment
kubectl get pvc
kubectl get svc
kubectl get job
kubectl get pods
kubectl logs -t
kubectl get hpa
kubectl top pods
minikube service --url
minikube addons list
minikube addons enable
- Código Fonte de Apoio: https://github.com/juniorporfirio/udemy-wordpress
- Instalação Minikube: https://kubernetes.io/docs/tasks/tools/install-minikube/
- Instação Kubectl: https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl-on-linux
- Deployment: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/
- Services: https://kubernetes.io/docs/concepts/services-networking/service/
- Secrets: https://kubernetes.io/docs/concepts/configuration/secret/
- Volumes: https://kubernetes.io/docs/concepts/storage/volumes/
- Siege instalação e comandos: https://github.com/ewwink/siege-windows
- AutoScale: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/
- Material de Referência Kubernetes: https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/
- https://nip.io/
- ClusterIp serve para comunicação interna dentro do cluster
- NodePort serve para comunicação interna dentro do cluster e também externa
- LoadBalancer serve para comunicação externa usando o LoadBalancer do provedor (também funciona como um ClusterIp e NodePort)
- Repliaset permite subir novamente pods que estão dentro do template
- Deployment permite subir pods como os Replicasets e permitem versionamento e rollback Ex: kubectl rollout undo deployment --to-revision=<versão a ser retornada>
- Volumes tem um ciclo de vida é independente do container mas é vinculado ao pod, é utilizado para compartilhar pastas entre containers de um mesmo pod. (Após a execução o volume é removido, mas os arquivos permanecem no diretório de montagem)
- Persistents Volumes define um volume (normalmente usado com providers)
- Persistent Volume Claim (clama por um volume, providers ou local)
- Storage Classes
- Statefulsets são deployments fortemente ligados a persistentVolumesClaims que dinamicamente criam os persistentVolumes. Provém garantias sobre o ordenamento e unicidade desses Pods.
São provas de que a aplicação está viva
# spec > template > containers
livenessProbe:
httpGet:
path: / #Path of application returning statusCode >= 200 and statusCode < 400
port: 80 #ContainerPort
periodSecods: 20 # Each time the kubernetes will test the liveness of the app/pod
failureThreshold: 3 # How many failures will be accepted before restart the pod
initialDelaySeconds: 20 # How many time the kubernetes will wait for starting to check health your app
São provas de que a aplicação pode receber as chamadas (vem depois do liveness probes) e tem a mesma estrutura.