Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 0 additions & 56 deletions config/samples/child-resources/kind-cell.yaml

This file was deleted.

96 changes: 0 additions & 96 deletions config/samples/child-resources/kind-shard.yaml

This file was deleted.

27 changes: 0 additions & 27 deletions config/samples/child-resources/kind-toposerver.yaml

This file was deleted.

46 changes: 46 additions & 0 deletions config/samples/external-etcd.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
apiVersion: multigres.com/v1alpha1
kind: MultigresCluster
metadata:
name: external-etcd-cluster
namespace: default
spec:
# ----------------------------------------------------------------
# 1. Global Topology (External)
# ----------------------------------------------------------------
# Connects to an existing, external Etcd cluster (e.g. cloud managed).
globalTopoServer:
external:
endpoints:
- "https://etcd-1.infra.local:2379"
- "https://etcd-2.infra.local:2379"
caSecret: "etcd-ca-secret"
clientCertSecret: "etcd-client-cert-secret"
rootPath: "/multigres/global"

# ----------------------------------------------------------------
# 2. Cell Definitions (Mixed Mode)
# ----------------------------------------------------------------
cells:
# Cell A: Standard Configuration
# Uses the Global External Etcd defined above.
- name: "zone-a"
zone: "us-east-1a"

# Cell B: High-Isolation Configuration
# This cell has its own dedicated, Operator-managed Etcd cluster.
# It does NOT use the global etcd for cell-level data.
# Benefit: If the external global etcd has an outage, this cell
# remains fully functional for intra-cell traffic.
- name: "zone-b-isolated"
zone: "us-east-1b"
spec:
localTopoServer:
etcd:
image: "quay.io/coreos/etcd:v3.5"
replicas: 3
storage:
size: "5Gi"
class: "standard-gp3"
# Since we are defining 'spec', we must also define the gateway
multigateway:
replicas: 2
18 changes: 18 additions & 0 deletions config/samples/minimal.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
apiVersion: multigres.com/v1alpha1
kind: MultigresCluster
metadata:
name: minimal-cluster
namespace: default
spec:
# A minimal cluster requires at least one cell definition.
#
# The operator will resolve configuration defaults in this order:
# 1. Namespace Defaults: If a template named "default" exists in this namespace
# (e.g., CoreTemplate/default, CellTemplate/default), it will be used.
# 2. Hardcoded Defaults: If no template is found, the operator injects:
# - Default GlobalTopoServer (Managed Etcd, 3 replicas)
# - Default MultiAdmin (1 replica)
# - Default Database ("postgres") with Default TableGroup ("default")
cells:
- name: "zone-a"
zone: "us-east-1a"
100 changes: 100 additions & 0 deletions config/samples/no-templates.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
apiVersion: multigres.com/v1alpha1
kind: MultigresCluster
metadata:
name: advanced-cluster
namespace: default
spec:
# ----------------------------------------------------------------
# 1. Global Components (Inline)
# ----------------------------------------------------------------
globalTopoServer:
etcd:
image: "quay.io/coreos/etcd:v3.5"
replicas: 3
storage:
size: "10Gi"
class: "standard-gp3"
resources:
requests:
cpu: "500m"
memory: "1Gi"
limits:
cpu: "1"
memory: "2Gi"

multiadmin:
spec:
replicas: 2
resources:
requests:
cpu: "200m"
memory: "256Mi"
limits:
cpu: "500m"
memory: "512Mi"

# ----------------------------------------------------------------
# 2. Cell Definitions (Inline)
# ----------------------------------------------------------------
cells:
- name: "us-east-1a"
zone: "us-east-1a"
spec:
multigateway:
replicas: 2
resources:
requests:
cpu: "1"
memory: "2Gi"
limits:
cpu: "2"
memory: "4Gi"

# ----------------------------------------------------------------
# 3. Database Topology (Inline)
# ----------------------------------------------------------------
databases:
- name: "postgres"
default: true
tablegroups:
- name: "default" # Gateway requires this name at the moment.
default: true
shards:
- name: "0"
spec:
multiorch:
cells:
- "us-east-1a"
resources:
requests:
cpu: "200m"
memory: "256Mi"
limits:
cpu: "500m"
memory: "512Mi"

pools:
main-app:
type: "readWrite"
cells:
- "us-east-1a"
replicasPerCell: 2
storage:
class: "gp3"
size: "100Gi"
postgres:
resources:
requests:
cpu: "2"
memory: "4Gi"
limits:
cpu: "4"
memory: "8Gi"
multipooler:
resources:
requests:
cpu: "500m"
memory: "1Gi"
limits:
cpu: "1"
memory: "2Gi"
14 changes: 0 additions & 14 deletions config/samples/reference.yaml

This file was deleted.

18 changes: 0 additions & 18 deletions config/samples/sample.yaml

This file was deleted.

Loading