At the moment I have a Kubernetes cluster distributed on AWS via kops. I have a doubt: is it possible to make a sort of snapshot of the Kubernetes cluster and recreate the same environment (master and pod nodes), for example to be resilient or to migrate the cluster in an easy way? I know that the Heptio Ark exists, it is very beautiful. But I'm curious to know if there is an easy way to do it. For example, is it enough to back up Etcd (or in my case the snapshot of EBS volumes)?
Thanks a lot. All suggestions are welcome
Applications running in the Kubernetes cluster will still be usable. However, it is not possible to create new deployments or to recover from node failures without the master node.
When a worker node dies, the Pods running on the Node are also lost. You might think them and their data are lost but not so. The whole point with Kubernetes is to not let that happen. We normally deploy something like a ReplicaSet .
back up /etc/kubernetes/pki. identify certs in /etc/kubernetes/pki that have the old IP address as an alt name - 1st step. delete both the cert and key for each of them (for me it was just apiserver and etcd/peer) regenerate the certs using kubeadm alpha phase certs - 2nd step.
kops stores its state in an S3 bucket identified by the KOPS_STATE_STORE
. So yes, if your cluster has been removed you can restore it by running kops create cluster
.
Keep in mind that it doesn't restore your etcd state so for that you are going to set up etcd backups. You could also make use of Heptio Ark.
Similar answers to this topic:
Recover kops Kubernetes cluster
How to restore kubernetes cluster using kops?
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With