Como recuperar o estado do RKE

Para manipular um cluster RKE após a implantação, é necessário ter dois arquivos:

  • Arquivo de configuração
  • Arquivo de estado

Estes dias, eu perdi o arquivo de estado do cluster. Recuperei executando o seguinte no node master:

docker run --rm --net=host -v $(docker inspect kubelet --format '{{ range .Mounts }}{{ if eq .Destination "/etc/kubernetes" }}{{ .Source }}{{ end }}{{ end }}')/ssl:/etc/kubernetes/ssl:ro --entrypoint bash $(docker inspect $(docker images -q --filter=label=org.label-schema.vcs-url=https://github.com/rancher/hyperkube.git) --format='{{index .RepoTags 0}}' | tail -1) -c 'kubectl --kubeconfig /etc/kubernetes/ssl/kubecfg-kube-node.yaml -n kube-system get configmap full-cluster-state -o json | jq -r .data.\"full-cluster-state\" | jq -r .' > cluster.rkestate

A execução acima irá gerar novamente o arquivo cluster.rkestate. Basta copiar.

.