¿Qué vamos a ver?
Basado en la documentación oficial de K8s (licencia CC-BY-4.0).
>_.source <(kubectl completion bash)
Comprueba que funciona escribiendo kubectl y presionando la tecla "TAB" 2 veces.Vamos a descargar el binario de Helm y configurar la cuenta de servicio necesaria e inicializarlo.
curl -LO https://git.io/get_helm.sh
chmod 700 get_helm.sh
./get_helm.sh
kubectl create clusterrolebinding user-admin-binding --clusterrole cluster-admin --user $(gcloud config get-value account)
kubectl create serviceaccount tiller -n kube-system
kubectl create clusterrolebinding tiller-admin-binding --clusterrole cluster-admin --serviceaccount kube-system:tiller
helm init --service-account tiller
helm version
helm repo update
helm install stable/redis --dry-run --debug
helm install stable/redis
kubectl get services
kubectl get statefulsets
kubectl get configmaps
kubectl get secrets
export IP_REDIS=$(kubectl get services -l app=redis -o json | jq -r '.items[].spec | select(.selector.role=="master")' | jq -r '.clusterIP')
echo $IP_REDIS
export PASSWORD_REDIS=$(kubectl get secret -l app=redis -o jsonpath="{.items[0].data.redis-password}" | base64 --decode)
echo $PASSWORD_REDIS
kubectl run redis-test-pod --rm -it --env REDIS_PW=$PASSWORD_REDIS --env REDIS_IP=$IP_REDIS --image docker.io/bitnami/redis:4.0.12 -- bash
redis-cli -h $REDIS_IP -a $REDIS_PW
set demo-key demo-value
get demo-key
Elimina los recursos creados por Helm
helm delete --purge redis
En esta práctica hemos visto cómo: