Skip to content

Commit e979c65

Browse files
committed
K8SPSMDB-1610 cluster sync integration
1 parent 2c36dca commit e979c65

28 files changed

Lines changed: 7116 additions & 4 deletions

cmd/manager/main.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -107,16 +107,18 @@ func main() {
107107
}
108108

109109
options.Controller.GroupKindConcurrency = map[string]int{
110-
"PerconaServerMongoDB." + psmdbv1.SchemeGroupVersion.Group: 1,
111-
"PerconaServerMongoDBBackup." + psmdbv1.SchemeGroupVersion.Group: 1,
112-
"PerconaServerMongoDBRestore." + psmdbv1.SchemeGroupVersion.Group: 1,
110+
"PerconaServerMongoDB." + psmdbv1.SchemeGroupVersion.Group: 1,
111+
"PerconaServerMongoDBBackup." + psmdbv1.SchemeGroupVersion.Group: 1,
112+
"PerconaServerMongoDBRestore." + psmdbv1.SchemeGroupVersion.Group: 1,
113+
"PerconaServerMongoDBClusterSync." + psmdbv1.SchemeGroupVersion.Group: 1,
113114
}
114115

115116
if s := os.Getenv("MAX_CONCURRENT_RECONCILES"); s != "" {
116117
if i, err := strconv.Atoi(s); err == nil && i > 0 {
117118
options.Controller.GroupKindConcurrency["PerconaServerMongoDB."+psmdbv1.SchemeGroupVersion.Group] = i
118119
options.Controller.GroupKindConcurrency["PerconaServerMongoDBBackup."+psmdbv1.SchemeGroupVersion.Group] = i
119120
options.Controller.GroupKindConcurrency["PerconaServerMongoDBRestore."+psmdbv1.SchemeGroupVersion.Group] = i
121+
options.Controller.GroupKindConcurrency["PerconaServerMongoDBClusterSync."+psmdbv1.SchemeGroupVersion.Group] = i
120122
} else {
121123
setupLog.Error(err, "MAX_CONCURRENT_RECONCILES must be a positive number")
122124
os.Exit(1)

config/crd/bases/psmdb.percona.com_perconaservermongodbclustersyncs.yaml

Lines changed: 981 additions & 0 deletions
Large diffs are not rendered by default.

config/crd/kustomization.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,15 @@
33
# It should be run by config/default
44
resources:
55
- bases/psmdb.percona.com_perconaservermongodbbackups.yaml
6+
- bases/psmdb.percona.com_perconaservermongodbclustersyncs.yaml
67
- bases/psmdb.percona.com_perconaservermongodbrestores.yaml
78
- bases/psmdb.percona.com_perconaservermongodbs.yaml
89
#+kubebuilder:scaffold:crdkustomizeresource
910

1011
patchesStrategicMerge:
1112
- patches/versionlabel_in_psmdb.yaml
1213
- patches/versionlabel_in_psmdbbackup.yaml
14+
- patches/versionlabel_in_psmdbclustersync.yaml
1315
- patches/versionlabel_in_psmdbrestore.yaml
1416

1517
patches:
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
name: perconaservermongodbclustersyncs.psmdb.percona.com
5+
labels:
6+
app.kubernetes.io/name: percona-server-mongodb
7+
app.kubernetes.io/version: v1.23.0
8+
app.kubernetes.io/component: crd
9+
app.kubernetes.io/part-of: percona-server-mongodb-operator

deploy/bundle.yaml

Lines changed: 989 additions & 0 deletions
Large diffs are not rendered by default.

deploy/clustersync.yaml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
apiVersion: psmdb.percona.com/v1
2+
kind: PerconaServerMongoDBClusterSync
3+
metadata:
4+
name: my-cluster-sync
5+
spec:
6+
clusterName: target-cluster
7+
image: percona/percona-clustersync-mongodb:0.9.0
8+
mode: reset
9+
source:
10+
uri: mongodb://source-cluster-mongos.kech1.svc.cluster.local:27017
11+
credentialsSecret: my-cluster-sync-source
12+
# tls:
13+
# enabled: true
14+
# secret: my-cluster-sync-source-tls
15+
excludeNamespaces:
16+
- admin
17+
- local
18+
# resources:
19+
# requests:
20+
# cpu: 500m
21+
# memory: 512Mi
22+
# limits:
23+
# cpu: "2"
24+
# memory: 2Gi
25+
---
26+
apiVersion: v1
27+
kind: Secret
28+
metadata:
29+
name: my-cluster-sync-source
30+
type: Opaque
31+
stringData:
32+
username: source
33+
password: mys3cretpAss

deploy/cr.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apiVersion: psmdb.percona.com/v1
22
kind: PerconaServerMongoDB
33
metadata:
4-
name: my-cluster-name
4+
name: target-cluster
55
finalizers:
66
- percona.com/delete-psmdb-pods-in-order
77
# - percona.com/delete-psmdb-pvc

0 commit comments

Comments
 (0)