Skip to content

Conversation

nastena1606
Copy link
Collaborator

new file: docs/assets/fragments/replication-before-you-start.txt
new file: docs/assets/images/mcs-setup.png
modified: docs/connect.md
new file: docs/replication-apply-mcs-existing.md
new file: docs/replication-failover.md
new file: docs/replication-interconnect.md
modified: docs/replication-main.md
new file: docs/replication-mcs-eks.md
new file: docs/replication-mcs-gke.md
modified: docs/replication-mcs.md
new file: docs/replication-plan-deployment.md
modified: docs/replication-replica.md
modified: docs/replication.md
modified: mkdocs-base.yml

new file:   docs/assets/fragments/replication-before-you-start.txt
	new file:   docs/assets/images/mcs-setup.png
	modified:   docs/connect.md
	new file:   docs/replication-apply-mcs-existing.md
	new file:   docs/replication-failover.md
	new file:   docs/replication-interconnect.md
	modified:   docs/replication-main.md
	new file:   docs/replication-mcs-eks.md
	new file:   docs/replication-mcs-gke.md
	modified:   docs/replication-mcs.md
	new file:   docs/replication-plan-deployment.md
	modified:   docs/replication-replica.md
	modified:   docs/replication.md
	modified:   mkdocs-base.yml
Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR documents multi-cluster setup with Multi-Cluster Services (MCS), providing comprehensive guidance for deploying MongoDB across multiple Kubernetes clusters or regions using Percona Operator for MongoDB.

  • Restructures the multi-cluster documentation with improved organization and navigation
  • Adds detailed guides for enabling MCS on both GKE and EKS cloud platforms
  • Provides step-by-step instructions for configuring Main and Replica sites, interconnecting them, and handling failover scenarios

Reviewed Changes

Copilot reviewed 14 out of 15 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
mkdocs-base.yml Restructures navigation menu to organize multi-cluster content with clearer sections for MCS and deployment steps
docs/replication.md Rewrites introduction to focus on multi-cluster vs multi-region concepts and use cases
docs/replication-plan-deployment.md New guide covering deployment requirements and topology options
docs/replication-mcs.md Refactored to explain MCS concepts and configuration steps
docs/replication-mcs-gke.md New detailed setup guide for enabling MCS on Google Kubernetes Engine
docs/replication-mcs-eks.md New guide for MCS setup on Amazon Elastic Kubernetes Service
docs/replication-main.md Enhanced with MCS-specific configuration and detailed secret export procedures
docs/replication-replica.md Updated with structured steps for replica site configuration
docs/replication-interconnect.md New guide for connecting Main and Replica sites for replication
docs/replication-failover.md New failover procedures for disaster recovery scenarios
docs/replication-apply-mcs-existing.md Extracted existing cluster MCS enablement steps

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Copy link
Member

@igroene igroene left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks great! a few adjustments suggested

the cloud provider. For example, GKE demands all participating Pods to be in the
same [project :octicons-link-external-16:](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
Also, `default` Namespace should be used with caution: your cloud provider
[may not allow :octicons-link-external-16:](https://cloud.google.com/kubernetes-engine/docs/how-to/multi-cluster-services)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what do you mean by "may not allow" ?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated the wording using GKE docs

* For the `main` cluster:

```bash
export KUBECONFIG=./gcp-main_config gcloud container clusters get-credentials main-cluster --zone us-central1-a
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest removing the gcp- prefixes in this section so that we keep procedure more generic

gke-mcs-rp77hijaj0 ClusterIP 34.118.229.123 <none> 27017/TCP 39m
gke-mcs-tjbtnp3ica ClusterIP 34.118.236.161 <none> 27017/TCP 27m
main-cluster-cfg ClusterIP None <none> 27017/TCP 44m
main-cluster-cfg-0 ClusterIP 34.118.227.52 34.42.135.122 27017:31233/TCP 44m
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fix indentation here


Here's how to do it:

1. Connect to one of the replica set Pods on the Replica site. Since you will be reconfiguring the replica set, you must connect as the MongoDB `clusterAdmin` user:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

for a sharded cluster, you need to repeat this process for every single shard's replica set

@@ -0,0 +1,85 @@
# Fail over services to the Replica site
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we also add a dedicated page about "switchover" which is described in my blog post?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, it could be better. As of now, switchover instructions are kinda lost within page dedicated to interconnecting the two sites

Copy link
Member

@igroene igroene left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link
Contributor

@egegunes egegunes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

great improvements

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants