Todos os objetos do Kubernetes são armazenados no etcd. Realizar periodicamente o backup dos dados do cluster etcd é importante para recuperar clusters Kubernetes em cenários de desastre, como a perda de todos os nós do control plane. Caso contrário, você terá que reconstruir seu cluster do zero.
Este artigo apresenta como fazer backup e restaurar o etcd usando o comando etcdctl snapshot . Estas tarefas estão incluídas no tópico Cluster Architecture, Installation & Configuration do CKA Curriculum.
Snapshot integrado
A seguir, há um exemplo de como tirar um snapshot do espaço de chave servido pelo endpoint http://10.0.1.101:2379 para o arquivo snapshot.db:
ETCDCTL_API=3 etcdctl --endpoints http://10.0.1.101:2379 snapshot save snapshot.db
Verifique o snapshot:
ETCDCTL_API=3 etcdctl --write-out=table snapshot status snapshot.db
+----------+----------+------------+------------+
| HASH | REVISION | TOTAL KEYS | TOTAL SIZE |
+----------+----------+------------+------------+
| 68ae77f5 | 2 | 5 | 20 kB |
+----------+----------+------------+------------+
Restaurando um cluster etcd
O etcd suporta a restauração a partir de snapshots que são tirados de um processo etcd da versão major.minor. Restaurar de uma versão de patch diferente do etcd também é suportado. Uma operação de restauração é usada para recuperar os dados de um cluster falhado.
A operação de restauração cria um cluster lógico temporário para repopular seus dados a partir do backup salvo.
Aqui está um exemplo:
ETCDCTL_API=3 etcdctl --endpoints http://10.0.1.101:2380 snapshot restore snapshot.db
댓글