Skip to content

Latest commit

 

History

History
68 lines (53 loc) · 1.79 KB

kind.md

File metadata and controls

68 lines (53 loc) · 1.79 KB

Kind

Kind é uma implementaçào de Kubernetes dentro do Docker (Kubernetes-IN-Docker).

Baixe o binário para sua arquitetura em https://github.com/kubernetes-sigs/kind/releases/tag/v0.27.0 Crie um cluster Kind com o comando:

$ kind create cluster
Creating cluster "kind" ...
 ✓ Ensuring node image (kindest/node:v1.32.0) 🖼
 ✓ Preparing nodes 📦  
 ✓ Writing configuration 📜 
 ✓ Starting control-plane 🕹️ 
 ✓ Installing CNI 🔌 
 ✓ Installing StorageClass 💾 
Set kubectl context to "kind-kind"
You can now use your cluster with:

kubectl cluster-info --context kind-kind

Have a nice day! 👋

$ kubectl get node
NAME                 STATUS   ROLES           AGE     VERSION
kind-control-plane   Ready    control-plane   5m55s   v1.32.0

Instale o MetalLB para usar services do tipo LoadBalancer:

DOCKER_CIDR=$(docker network inspect kind --format '{{(index .IPAM.Config 0).Subnet}}')
PREFIX=$(cut -f1-2 -d. <<<$DOCKER_CIDR)
NET=$(shuf -n1 -i 100-200)
START=$(shuf -n1 -i 100-200)
END=$((START + 8))
METALLB_RANGE=$PREFIX.$NET.$START-$PREFIX.$NET.$END

cat >metallb-values.yaml <<EOF
configInline:
  address-pools:
  - name: default
    protocol: layer2
    addresses:
    - $METALLB_RANGE
EOF

helm install metallb-controller metallb \
    --repo https://charts.bitnami.com/bitnami \
    --version 3.0.12 \
    --values ./metallb-values.yaml \
    --namespace metallb-system \
    --create-namespace

Instale o Nginx Ingress Controller para usar objetos Ingress:

helm install ingress-nginx ingress-nginx \
    --repo https://kubernetes.github.io/ingress-nginx \
    --version 4.10.1 \
    --namespace ingress-nginx \
    --create-namespace

kubectl get svc -n ingress-nginx ingress-nginx-ingress-nginx-controller -o jsonpath={.status.loadBalancer.ingress[0].ip}