事件部署Kubernetes Operator 的Kubernetes集群发生故障,您首先需要恢复Kubernetes Operator。为此,请在单独的、正常运行的Kubernetes集群上部署和配置Kubernetes Operator,具体步骤如下。然后,将Kubernetes Operator 重新部署到正常运行的Kubernetes集群后,就可以执行以下恢复步骤。
如果您的MongoDB Ops Manager实例也部署到操作符 Kubernetes集群,请按照以下步骤重新部署到正常运行的Kubernetes集群。
步骤
重新部署Kubernetes Operator。
您可以像最初一样,按照本指南在独立的、正常运行的Kubernetes集群上安装Kubernetes Operator。
为多集群部署配置Kubernetes Operator 和Kubernetes集群。
使用 kubectl mongodb multicluster setup
命令设立凭证、角色和权限,并为操作符创建 mongodb-enterprise-operator-member-list 配置映射。
请参阅了解Kubernetes角色和角色绑定以学习;了解更多信息。
恢复Kubernetes Operator部署状态。
MongoDB资源:如果关注 GitOps,则应用备份或 Git存储库中的 yaml 文件。
恢复MongoDB资源引用的以下配置映射和密钥:
spec.credentials
(密钥)spec.opsManager.configMapRef.name
恢复名为
<resource-name>-state
的部署状态配置映射。Kubernetes Operator 需要此配置映射才能正确协调MongoDB 数据库。它由Kubernetes Operator 在运行时动态创建。为了恢复它,您必须事先设立一个单独的进程来定期备份此配置映射。
如果无法从备份中恢复此配置映射,请在继续执行恢复步骤之前联系MongoDB支持部门。
重新创建 TLS 证书和相关 TLS 密钥。您可以手动创建它们,也可以使用 Cert-Manager 创建它们。请注意,如果恢复的 TLS 证书发生更改(重新颁发),则副本集自动化可能会执行 TLS 证书轮换过程。
使用有效的Kubernetes Operator部署继续恢复进程。
执行上述步骤后,请按照本指南中的步骤继续恢复进程。