- kubectl
- Terraform
- kubens - https://webinstall.dev/kubens/
kubectl create ns hashi-vault
kubens hashi-vaultkubectl create serviceaccount vault-authhelm repo add hashicorp https://helm.releases.hashicorp.comhelm install consul hashicorp/consul --values 0_k8s/helm-values-consul.yamlhelm install vault hashicorp/vault --values 0_k8s/helm-values-vault.yamlkubectl exec vault-0 -- vault statuskubectl exec vault-0 -- vault operator init -key-shares=1 -key-threshold=1 -format=json > cluster-keys.jsonVAULT_UNSEAL_KEY=$(cat cluster-keys.json | jq -r ".unseal_keys_b64[]")
kubectl port-forward pod/vault-0 8200:8200#<-- Ingresar con el unseal del cluster-keys.json para desbloquear vault
kubectl port-forward pod/vault-1 8200:8200#<-- Ingresar con el unseal del cluster-keys.json para desbloquear vault
Ingresar a: http://192.168.10.151:8200/
kubectl exec vault-0 -- vault operator unseal $VAULT_UNSEAL_KEYkubectl exec vault-1 -- vault operator unseal $VAULT_UNSEAL_KEYecho $KUBERNETES_PORT_443_TCP_ADDRcat /var/run/secrets/kubernetes.io/serviceaccount/tokencat /var/run/secrets/kubernetes.io/serviceaccount/ca.crtexport VAULT_TOKEN="hvs.jakxIRxpMFmZjE0Drkso7kkX"export VAULT_ADDR="http://127.0.0.1:8200"terraform initterraform planterraform applyvault loginvault write auth/kubernetes/config \
kubernetes_host="https://$KUBERNETES_PORT_443_TCP_ADDR:443" \
token_reviewer_jwt="$(cat /var/run/secrets/kubernetes.io/serviceaccount/token)" \
kubernetes_ca_cert=@/var/run/secrets/kubernetes.io/serviceaccount/ca.crt \
issuer="https://kubernetes.default.svc.cluster.local"kubectl apply -f 0_k8s/pod-secret-ejemplo.yaml