Docs 菜单
Docs 主页
/
MongoDB Enterprise Kubernetes Operator
/

对具有多个 Kubernetes 集群的部署进行故障排除

在此页面上

  • 从 Kubernetes 集群故障中恢复

要对多 Kubernetes 集群 MongoDB 部署进行故障排除,请使用本节中的程序。

此过程使用与先决条件中相同的集群名称。 如果保存MongoDB节点的集群 MDB_CLUSTER_1出现故障,并且您预配一个名为MDB_CLUSTER_4而不是MDB_CLUSTER_1的新集群来保存新的MongoDB节点,请使用更新的节点列表运行MongoDB kubectl 插件集群,然后编辑中央集群上的MongoDBMultiCluster资源规范。

要在集群故障后重新配置多 Kubernetes 集群 MongoDB 部署,请用新预配的集群替换出现故障的 Kubernetes 集群,如下所示:

  1. 使用recover参数和-member-clusters选项中指定的新集群MDB_CLUSTER_4运行MongoDB kubectl 插件。 这使 Kubernetes Operator 能够与新集群通信,从而在其上调度 MongoDB 节点。 在以下示例中, -member-clusters包含${MDB_CLUSTER_4_FULL_NAME}

    kubectl mongodb multicluster recover \
    --central-cluster="MDB_CENTRAL_CLUSTER_FULL_NAME" \
    --member-clusters="${MDB_CLUSTER_2_FULL_NAME},${MDB_CLUSTER_3_FULL_NAME},${MDB_CLUSTER_4_FULL_NAME}" \
    --member-cluster-namespace="mongodb" \
    --central-cluster-namespace="mongodb" \
    --operator-name=mongodb-enterprise-operator-multi-cluster \
    --source-cluster="${MDB_CLUSTER_2_FULL_NAME}"
  2. 在中央集群上,找到并编辑MongoDBMultiCluster资源规范,将新集群名称添加到clusterSpecList中,并从此列表中删除出现故障的 Kubernetes 集群。 生成的集群名称列表应类似于以下示例:

    clusterSpecList:
    - clusterName: ${MDB_CLUSTER_4_FULL_NAME}
    members: 3
    - clusterName: ${MDB_CLUSTER_2_FULL_NAME}
    members: 2
    - clusterName: ${MDB_CLUSTER_3_FULL_NAME}
    members: 3
  3. 重新启动 Kubernetes Operator Pod。 重启后,Kubernetes 操作符应在新创建的MDB_CLUSTER_4集群上协调 MongoDB 部署,该集群是您为替换MDB_CLUSTER_1故障而创建的。要了解有关资源协调的更多信息,请参阅部署架构和图表。

另请参阅ConfigMap 名称 MongoDB Enterprise操作符-member-list 是硬编码的。

后退

插件参考