一年前,我为我们的客户配置了一个AWS EKS集群。我在很多手册的帮助下创建了它。有集群配置文件存在(我只使用这些文件将所有更改应用到集群),但我不能100%确定,没有直接命令行更改应用到集群。
目前我有一个客户端请求停止整个集群不被收费。唯一的方法是删除所有相关资源。
但问题是客户端希望在将来的某个时候恢复它。
所以整个任务听起来是这样的:
- 备份当前运行的AWS EKS集群的所有相关资源的所有配置,以便将来可以通过一些合理的小努力恢复它。无需保存任何信息(体积、数据等)。
我说的是备份和恢复与集群相关的所有AWS实体:
- 尽可能地访问VPC、网络、子网、安全组、EKS、ECR等。
谁能给我指出调查的方向或一些工具/服务,可以帮助完成这项任务?
您可以使用Terraform import将资源导入到Terraform模板中。
但是,这意味着您需要确切地知道哪些资源被用于部署您的EKS集群。但是,所有已经部署在集群内的东西都不会被导入。
您可以使用terraform来导入,正如Mornor所提到的,
然后使用Kubectl,你可以转储你的部署和服务等,执行以下操作:
kubectl get services --all-namespaces -o yaml > all-service.yaml
kubectl get deployments --all-namespaces -o yaml > all-deployments.yaml
您可以直接针对命名空间或特定的部署或服务。