Halaman ini memberikan contoh konfigurasi YAML untuk men-deploy dan mengelola AlloyDB Omni di Kubernetes.
Konfigurasi Inti & OS DBCluster
Pelajari konfigurasi cluster dasar dan setelan sistem operasi kustom.
DBCluster Minimal
Konfigurasi dasar untuk men-deploy DBCluster AlloyDB Omni.
Melihat konfigurasi YAML DBCluster Minimal
# This is a minimal DBCluster spec. See v1_dbcluster_full.yaml for more configurations. apiVersion: v1 kind: Secret metadata: name: db-pw-dbcluster-sample type: Opaque data: dbcluster-sample: "Q2hhbmdlTWUxMjM=" # Password is ChangeMe123 --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: dbcluster-sample spec: databaseVersion: "18.1.0" primarySpec: adminUser: passwordRef: name: db-pw-dbcluster-sample resources: memory: 5Gi cpu: 1 disks: - name: DataDisk size: 10Gi
Full DBCluster
Penyiapan komprehensif yang menampilkan setelan yang tersedia.
Melihat konfigurasi YAML DBCluster Lengkap
apiVersion: v1 kind: Secret metadata: name: db-pw-dbcluster-sample type: Opaque data: dbcluster-sample: "Q2hhbmdlTWUxMjM=" # Password is ChangeMe123 --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: dbcluster-sample spec: allowExternalIncomingTraffic: true availability: healthcheckPeriodSeconds: 30 # default is 30secs, new feature in 1.2.0. minimum value is 1 and the maximum value is 86400 autoFailoverTriggerThreshold: 3 # after which failover is triggered autoHealTriggerThreshold: 3 enableAutoFailover: true enableAutoHeal: true enableStandbyAsReadReplica: true numberOfStandbys: 1 controlPlaneAgentsVersion: 1.6.0 databaseVersion: "18.1.0" databaseImageOSType: UBI9 isDeleted: false mode: "" primarySpec: adminUser: passwordRef: name: db-pw-dbcluster-sample allowExternalIncomingTrafficToInstance: false auditLogTarget: {} dbLoadBalancerOptions: annotations: networking.gke.io/load-balancer-type: "internal" lb.company.com/enabled: "true" gcp: {} features: columnarSpillToDisk: cacheSize: 50Gi ultraFastCache: cacheSize: 100Gi # either generic volume or local volume genericVolume: storageClass: "local-storage" # localVolume: # path: "/mnt/disks/raid/0" # nodeAffinity: # required: # nodeSelectorTerms: # - matchExpressions: # - key: "cloud.google.com/gke-local-nvme-ssd" # operator: "In" # values: # - "true" googleMLExtension: config: vertexAIKeyRef: vertex-ai-key-alloydb # secret used to enable AlloyDB Omni to access AlloyDB AI features vertexAIRegion: us-central1 # default resources: cpu: "12" disks: - name: DataDisk size: 1000Gi storageClass: px-ceph - name: LogDisk size: 10Gi storageClass: px-ceph - name: ObsDisk size: 4Gi storageClass: px-ceph - name: BackupDisk size: 10Gi storageClass: px-ceph memory: 100Gi walArchiveSetting: location: wal/log # enable WAL archiving and archive logs to /archive/wal/log sidecarRef: name: cv-sidecar-config # provide a sidecar config that is referenced here parameters: google_columnar_engine.enabled: "on" google_columnar_engine.memory_size_in_mb: "256" google_storage.parallel_log_replay_enabled: 'off' google_pg_auth.enable_auth: 'false' shared_preload_libraries: "pg_cron,pg_bigm3" archive_mode: 'on' archive_timeout: '300' work_mem: '4MB' # operator default values # shared_preload_libraries='g_stats,google_columnar_engine,google_db_advisor,google_job_scheduler,pg_stat_statements,pglogical,pgaudit' log_rotation_age: "2" # rotate every two minutes. Set to "0" to disable age-based rotation. If unset, no age-based rotation log_rotation_size: "400000" # rotate every 400,000kb. set to "0" to disable size-based rotation. If unset, rotate every 200,000kb schedulingconfig: tolerations: - effect: NoSchedule key: alloydb-node-type operator: Exists nodeaffinity: # requiredDuringSchedulingIgnoredDuringExecution: strong condition, not being able to meet this would stop pods being scheduled preferredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: alloydb-node-type operator: In values: - database podAffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 1 podAffinityTerm: labelSelector: matchExpressions: - key: app operator: In values: - store topologyKey: "kubernetes.io/hostname" podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 1 podAffinityTerm: labelSelector: matchExpressions: - key: security operator: In values: - S1 topologyKey: "topology.kubernetes.io/zone" services: Logging: true Monitoring: true --- apiVersion: v1 kind: PersistentVolume metadata: name: "example-local-pv" spec: capacity: storage: 375Gi accessModes: - "ReadWriteOnce" persistentVolumeReclaimPolicy: "Retain" storageClassName: "local-storage" local: path: "/mnt/disks/raid/0" nodeAffinity: required: nodeSelectorTerms: - matchExpressions: # following example key applies to an operator that is deployed on # Google Cloud and uses the local ssd option - key: "cloud.google.com/gke-local-nvme-ssd" operator: "In" values: - "true" --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBInstance metadata: name: dbcluster-sample-rp-1 spec: instanceType: ReadPool dbcParent: name: dbcluster-sample nodeCount: 2 resources: memory: 6Gi cpu: 2 disks: - name: DataDisk size: 15Gi schedulingconfig: tolerations: - key: "node-role.kubernetes.io/control-plane" operator: "Exists" effect: "NoSchedule" nodeaffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 1 preference: matchExpressions: - key: another-node-label-key operator: In values: - another-node-label-value podAffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 1 podAffinityTerm: labelSelector: matchExpressions: - key: app operator: In values: - store topologyKey: "kubernetes.io/hostname" podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 1 podAffinityTerm: labelSelector: matchExpressions: - key: security operator: In values: - S1 topologyKey: "topology.kubernetes.io/zone"
Parameter Kustom
Mengonfigurasi parameter PostgreSQL kustom.
Melihat konfigurasi YAML Parameter Kustom
apiVersion: v1 kind: Secret metadata: name: db-pw-dbcluster-sample type: Opaque data: dbcluster-sample: "Q2hhbmdlTWUxMjM=" # Password is ChangeMe123 --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: dbcluster-sample spec: databaseVersion: "18.1.0" primarySpec: adminUser: passwordRef: name: db-pw-dbcluster-sample resources: memory: 5Gi cpu: 1 disks: - name: DataDisk size: 10Gi parameters: google_columnar_engine.enabled: "on" google_columnar_engine.memory_size_in_mb: "256"
Deployment Berbasis Debian
Tentukan dasar image OS Debian.
Melihat konfigurasi YAML Deployment berbasis Debian
# This is a minimal DBCluster spec. See v1_dbcluster_full.yaml for more configurations. apiVersion: v1 kind: Secret metadata: name: db-pw-dbcluster-sample type: Opaque data: dbcluster-sample: "Q2hhbmdlTWUxMjM=" # Password is ChangeMe123 --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: dbcluster-sample spec: databaseVersion: "18.1.0" databaseImageOSType: Debian primarySpec: adminUser: passwordRef: name: db-pw-dbcluster-sample resources: memory: 5Gi cpu: 1 disks: - name: DataDisk size: 10Gi
Deployment Berbasis UBI9
Tentukan dasar Red Hat Universal Base Image 9 (UBI 9).
Melihat konfigurasi YAML Deployment berbasis UBI9
# This is a minimal DBCluster spec. See v1_dbcluster_full.yaml for more configurations. apiVersion: v1 kind: Secret metadata: name: db-pw-dbcluster-sample type: Opaque data: dbcluster-sample: "Q2hhbmdlTWUxMjM=" # Password is ChangeMe123 --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: dbcluster-sample spec: databaseVersion: "18.1.0" databaseImageOSType: UBI9 primarySpec: adminUser: passwordRef: name: db-pw-dbcluster-sample resources: memory: 5Gi cpu: 1 disks: - name: DataDisk size: 10Gi
Opsi Penjadwalan Pod
Konfigurasi afinitas node, toleransi, dan perilaku penjadwalan.
Melihat konfigurasi YAML Opsi Penjadwalan Pod
apiVersion: v1 kind: Secret metadata: name: db-pw-dbcluster-sample type: Opaque data: dbcluster-sample: "Q2hhbmdlTWUxMjM=" # Password is ChangeMe123 --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: dbcluster-sample spec: databaseVersion: "18.1.0" availability: numberOfStandbys: 1 enableStandbyAsReadReplica: true primarySpec: schedulingconfig: topologySpreadConstraints: - maxSkew: 1 topologyKey: "topology.kubernetes.io/zone" whenUnsatisfiable: DoNotSchedule adminUser: passwordRef: name: db-pw-dbcluster-sample resources: memory: 5Gi cpu: 1 disks: - name: DataDisk size: 10Gi
Ketersediaan Tinggi dan Penskalaan
Mendistribusikan traffic dan memastikan periode nonaktif nol atau minimal.
DBCluster HA
Siapkan beberapa replika untuk ketersediaan tinggi.
Melihat konfigurasi YAML DBCluster HA
apiVersion: v1 kind: Secret metadata: name: db-pw-dbcluster-sample type: Opaque data: dbcluster-sample: "Q2hhbmdlTWUxMjM=" # Password is ChangeMe123 --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: dbcluster-sample spec: databaseVersion: "18.1.0" availability: numberOfStandbys: 1 enableStandbyAsReadReplica: true primarySpec: adminUser: passwordRef: name: db-pw-dbcluster-sample resources: memory: 5Gi cpu: 1 disks: - name: DataDisk size: 10Gi
DBCluster dengan Load Balancer
Ekspos endpoint baca/tulis menggunakan load balancing layanan.
Melihat konfigurasi YAML DBCluster dengan Load Balancer
apiVersion: v1 kind: Secret metadata: name: db-pw-dbcluster-sample type: Opaque data: dbcluster-sample: "Q2hhbmdlTWUxMjM=" # Password is ChangeMe123 --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: dbcluster-sample spec: databaseVersion: "18.1.0" primarySpec: adminUser: passwordRef: name: db-pw-dbcluster-sample resources: memory: 5Gi cpu: 1 disks: - name: DataDisk size: 10Gi dbLoadBalancerOptions: annotations: # Creates internal LoadBalancer in GKE. networking.gke.io/load-balancer-type: "internal" allowExternalIncomingTraffic: true
Instance Read Pool
Tambahkan instance kumpulan hanya baca untuk menskalakan operasi baca.
Melihat konfigurasi YAML Instance Read Pool
apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBInstance metadata: name: dbcluster-sample-rp-1 spec: instanceType: ReadPool dbcParent: name: dbcluster-sample nodeCount: 2 resources: memory: 6Gi cpu: 2 disks: - name: DataDisk size: 15Gi schedulingconfig: tolerations: - key: "node-role.kubernetes.io/control-plane" operator: "Exists" effect: "NoSchedule" nodeaffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 1 preference: matchExpressions: - key: another-node-label-key operator: In values: - another-node-label-value podAffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 1 podAffinityTerm: labelSelector: matchExpressions: - key: app operator: In values: - store topologyKey: "kubernetes.io/hostname" podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 1 podAffinityTerm: labelSelector: matchExpressions: - key: security operator: In values: - S1 topologyKey: "topology.kubernetes.io/zone"
Pengelolaan Keamanan dan Rahasia
Lindungi kunci, sertifikat, dan kredensial cluster.
Penerbit Sertifikat
Konfigurasi penerbit sertifikat TLS kustom.
Melihat konfigurasi YAML Penerbit Sertifikat
# This is a minimal DBCluster spec. See v1_dbcluster_full.yaml for more configurations. apiVersion: v1 kind: Secret metadata: name: db-pw-dbcluster-sample type: Opaque data: dbcluster-sample: "Q2hhbmdlTWUxMjM=" # Password is ChangeMe123 --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: dbcluster-sample spec: databaseVersion: "18.1.0" primarySpec: tls: dataPlaneCertIssuer: name: data-plane-issuer kind: ClusterIssuer controlPlaneAgentsCertIssuer: name: control-plane-issuer kind: ClusterIssuer adminUser: passwordRef: name: db-pw-dbcluster-sample resources: memory: 5Gi cpu: 1 disks: - name: DataDisk size: 10Gi
Integrasi Vault
Ambil dan jaga keamanan rahasia dengan menggunakan HashiCorp Vault.
Melihat konfigurasi YAML Integrasi Vault
apiVersion: v1 kind: Secret metadata: name: db-pw-dbcluster-sample type: Opaque data: # dbcluster-sample: "Q2hhbmdlTWUxMjM=" # Password is ChangeMe123 dbcluster-sample: "ZGhhcm1hbGluZ2FtCg==" --- apiVersion: v1 kind: Secret metadata: name: alloydbadmin-pw-dbcluster-sample type: Opaque data: dbcluster-sample: "Q2hhbmdlTWUxMjM=" # dbcluster-sample: "ZGhhcm1hbGluZ2FtCg==" # dbcluster-sample: "YXJhdmluZGFuCg==" --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: dbcluster-sample spec: databaseVersion: "18.1.0" # availability: # numberOfStandbys: 1 # enableStandbyAsReadReplica: true primarySpec: adminUser: passwordRef: name: db-pw-dbcluster-sample agentPassword: passwordRef: name: alloydbadmin-pw-dbcluster-sample resources: memory: 5Gi cpu: 1 disks: - name: DataDisk size: 10Gi
Replikasi Primer-Standby
Konfigurasi replikasi antara database upstream (primer) dan downstream (standby).
Konfigurasi Hulu (Utama)
Konfigurasi node utama untuk memublikasikan perubahan.
Melihat konfigurasi YAML Konfigurasi Upstream (Utama)
apiVersion: alloydbomni.dbadmin.goog/v1 kind: Replication metadata: name: replication-upstream-sample spec: dbcluster: name: dbcluster-sample upstream: {}
Konfigurasi Hilir (Siaga)
Konfigurasi target replikasi untuk menyinkronkan dari node utama.
Melihat konfigurasi YAML Downstream (Siaga)
apiVersion: alloydbomni.dbadmin.goog/v1 kind: Replication metadata: name: replication-downstream-sample spec: dbcluster: name: dbcluster-sample downstream: host: "10.10.10.10" port: 5432 username: alloydbreplica password: name: "ha-rep-pw-dbcluster-sample" replicationSlotName: "dbcluster_sample_replication_upstream_sample" control: setup # to promote downstream, change control to promote
Pencadangan, Pemulihan, dan Pengkloningan
Mengelola pemulihan dari bencana, salinan data sesuai permintaan, dan jadwal.
Rencana Pencadangan Terjadwal
Menjadwalkan pencadangan penuh dan inkremental.
Melihat konfigurasi YAML Rencana Cadangan Terjadwal
apiVersion: alloydbomni.dbadmin.goog/v1 kind: BackupPlan metadata: name: backupplan1 spec: dbclusterRef: dbcluster-sample backupRetainDays: 14 paused: false backupSchedules: # Full backup at 00:00 on every Sunday. full: "0 0 * * 0" # Incremental backup at 21:00 every day. incremental: "0 21 * * *"
Mencadangkan ke Google Cloud Storage (GCS)
Simpan cadangan secara aman di bucket Google Cloud Storage.
Melihat konfigurasi YAML Backup ke Google Cloud Storage (GCS)
apiVersion: alloydbomni.dbadmin.goog/v1 kind: BackupPlan metadata: name: backupplan1 namespace: db spec: dbclusterRef: dbcluster-sample backupRetainDays: 14 paused: false backupSchedules: # Full backup at 00:00 on every Sunday. full: "0 0 * * 0" # Incremental backup at 21:00 every day. incremental: "0 21 * * *" backupLocation: type: GCS gcsOptions: bucket: dbcluster-sample-backups key: /backup # You can optionally provide a key for accessing your GCS bucket. # The key.json needs to be base64 encoded and stored in the given secret under data[key.json]. # Or comment out below, which will then use the GKE cluster service account # to access the GCS bucket (you need to make sure the service account has # the right permission to R/W the GCS bucket). secretRef: name: gcs-key namespace: db --- apiVersion: v1 kind: Secret metadata: name: gcs-key namespace: db data: key.json: | <paste your base64 encoded GCS key json here with 4 spaces for indentation>
Mencadangkan ke Amazon S3
Simpan cadangan di dalam bucket yang kompatibel dengan Amazon S3.
Melihat konfigurasi YAML Backup ke Amazon S3
apiVersion: alloydbomni.dbadmin.goog/v1 kind: BackupPlan metadata: name: backupplan1 namespace: db spec: dbclusterRef: dbcluster-sample backupRetainDays: 14 paused: false backupSchedules: # Full backup at 00:00 on every Sunday. full: "0 0 * * 0" # Incremental backup at 21:00 every day. incremental: "0 21 * * *" backupLocation: type: S3 s3Options: bucket: dbcluster-sample-backups-s3 key: /backup region: "us-east-1" endpoint: "https://s3.storage.com" secretRef: name: s3-access-secret namespace: db # You can optionally provide the cert to be used to connect to the S3 with TLS. # If not provided, TLS verification will be skipped. certRef: name: server-tls namespace: server-ns --- apiVersion: v1 kind: Secret metadata: namespace: db name: "s3-access-secret" type: Opaque data: # Update the following with your S3 access keys. access-key-id: "Q2hhbmdlTWUxMjM=" # access-key-id is ChangeMe123 access-key: "Q2hhbmdlTWUxMjM=" # access-key is ChangeMe123
Pencadangan Manual Sesuai Permintaan
Buat satu cadangan manual.
Melihat konfigurasi YAML Cadangan Manual On-Demand
apiVersion: alloydbomni.dbadmin.goog/v1 kind: Backup metadata: name: backup1 spec: dbclusterRef: dbcluster-sample backupPlanRef: backupplan1 manual: true physicalBackupSpec: backupType: full
Memulihkan dari Cadangan
Memulihkan atau membuat cluster dari cadangan yang disimpan.
Melihat konfigurasi YAML Pulihkan dari Cadangan
apiVersion: alloydbomni.dbadmin.goog/v1 kind: Restore metadata: name: restore1 spec: sourceDBCluster: dbcluster-sample backup: backup1
Clone Database
Meng-clone DBCluster standar.
Melihat konfigurasi YAML Database Clone
apiVersion: alloydbomni.dbadmin.goog/v1 kind: Restore metadata: name: clone1 spec: sourceDBCluster: dbcluster-sample pointInTime: "2024-02-23T19:59:43Z" clonedDBClusterConfig: dbclusterName: new-dbcluster-sample
Operasi dan Failover
Lakukan transisi topologi yang aman.
Pengalihan Terkontrol
Promosikan replika sekunder melalui pengalihan terencana tanpa kehilangan data.
Melihat konfigurasi YAML Pengalihan Terkontrol
apiVersion: alloydbomni.dbadmin.goog/v1 kind: Switchover metadata: name: switchover-sample spec: dbclusterRef: dbcluster-sample
Failover Pemulihan dari Bencana
Menangani skenario pemulihan dari bencana atau failover yang tidak direncanakan.
Melihat konfigurasi YAML Failover Pemulihan dari Bencana
apiVersion: alloydbomni.dbadmin.goog/v1 kind: Failover metadata: name: failover-sample spec: dbclusterRef: dbcluster-sample
Penggabungan Koneksi (PgBouncer)
Siapkan lapisan proxy database menggunakan PgBouncer.
PgBouncer Dasar
Deploy pendamping PgBouncer standar.
Melihat konfigurasi YAML PgBouncer Dasar
apiVersion: alloydbomni.dbadmin.goog/v1 kind: PgBouncer metadata: name: mypgbouncer spec: allowSuperUserAccess: true dbclusterRef: dbcluster-sample replicaCount: 1 parameters: pool_mode: transaction ignore_startup_parameters: extra_float_digits default_pool_size: "15" max_client_conn: "800" max_db_connections: "160" podSpec: resources: memory: 1Gi cpu: 1 image: "gcr.io/alloydb-omni-staging/g-pgbouncer:1.4.0" serviceOptions: type: "ClusterIP"
PgBouncer Penuh
Konfigurasi penyesuaian lanjutan, otorisasi kustom, dan penggantian kumpulan koneksi.
Melihat konfigurasi YAML PgBouncer Lengkap
apiVersion: alloydbomni.dbadmin.goog/v1 kind: PgBouncer metadata: name: mypgbouncer spec: allowSuperUserAccess: true dbclusterRef: dbcluster-sample replicaCount: 2 parameters: pool_mode: transaction ignore_startup_parameters: extra_float_digits default_pool_size: "15" max_client_conn: "800" max_db_connections: "160" podSpec: resources: memory: 1Gi cpu: 1 image: "gcr.io/alloydb-omni-staging/g-pgbouncer:1.4.0" schedulingconfig: nodeaffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: nodetype operator: In values: - pgbouncer serviceOptions: type: "LoadBalancer" loadBalancerSourceRanges: - "11.0.0.0/8" annotations: networking.gke.io/load-balancer-type: "internal"
Layanan Terintegrasi dan Sidecar
Tingkatkan kemampuan database dengan machine learning, kemampuan pengamatan, dan sidecar agen kustom.
DBCluster dengan ML Agent
Integrasikan ML lokal atau proxy Vertex AI sidecar.
Melihat konfigurasi YAML DBCluster dengan Agen ML
apiVersion: v1 kind: Secret metadata: name: db-pw-dbcluster-sample type: Opaque data: dbcluster-sample: "Q2hhbmdlTWUxMjM=" # Password is ChangeMe123 --- apiVersion: v1 kind: Secret metadata: name: vertex-ai-key-alloydb type: Opaque data: private-key.json: "" --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: dbcluster-sample spec: databaseVersion: "18.1.0" primarySpec: features: googleMLExtension: enabled: true config: vertexAIKeyRef: vertex-ai-key-alloydb vertexAIRegion: us-central1 adminUser: passwordRef: name: db-pw-dbcluster-sample resources: memory: 5Gi cpu: 1 disks: - name: DataDisk size: 10Gi
Konfigurasi Kemampuan Observasi
Konfigurasi metrik cluster, termasuk kueri SQL kustom untuk mengumpulkan metrik khusus aplikasi dan database yang ditentukan pengguna.
Melihat konfigurasi YAML Konfigurasi Observabilitas
apiVersion: alloydbomni.dbadmin.goog/v1 kind: ObservabilityConfig metadata: name: my-custom-metrics spec: dbClusterRefs: - dbcluster-sample customMetrics: resourceLimits: workMemory: "4MB" maxParallelWorkers: 0 #limits to 1 CPU core definitions: - metricGroup: querygroup_postgres database: "postgres" query: | SELECT datname, pg_database_size(datname) as db_size_bytes, (SELECT count(*) FROM pg_stat_activity WHERE datname = d.datname) as active_connections FROM pg_database d WHERE datname = 'postgres' metrics: - name: datname desc: "Database name" usage: label - name: db_size_bytes desc: "Size of the current database in bytes" usage: gauge - name: active_connections desc: "Number of active connections to the database" usage: gauge - metricGroup: querygroup_alloydbadmin database: "alloydbadmin" query: | SELECT count(*) as healthcheck_count FROM healthcheck metrics: - name: healthcheck_count desc: "Number of rows in healthcheck table" usage: gauge
File Bantuan Kustom
Menyuntikkan sidecar dukungan standar ke pod cluster Anda.
Melihat konfigurasi YAML File Bantuan Kustom
apiVersion: alloydbomni.dbadmin.goog/v1 kind: Sidecar metadata: name: sidecar-sample spec: sidecars: - image: busybox name: sidecar-sample volumeMounts: - name: obsdisk mountPath: /logs command: ["/bin/sh"] args: - -c - | while [ true ] do date set -x ls -lh /logs/diagnostic set +x done
DBCluster dengan Sidecar Kustom
Konfigurasi DBCluster dasar yang mencakup sidecar dukungan standar.
Melihat konfigurasi YAML DBCluster dengan Sidecar Kustom
apiVersion: v1 kind: Secret metadata: name: db-pw-dbcluster-sample type: Opaque data: dbcluster-sample: "Q2hhbmdlTWUxMjM=" # Password is ChangeMe123 --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: dbcluster-sample spec: databaseVersion: "18.1.0" primarySpec: adminUser: passwordRef: name: db-pw-dbcluster-sample resources: memory: 5Gi cpu: 1 disks: - name: DataDisk size: 10Gi sidecarRef: name: sidecar-sample
File Bantuan Pencadangan Commvault
Tentukan konfigurasi agen Commvault sebagai sidecar helper.
Melihat konfigurasi YAML Commvault Backup Sidecar
# Source: commvault/templates/configmap.yaml apiVersion: v1 kind: ConfigMap metadata: name: cvconfigmap data: CV_MASVCNAME: commvault-prod CV_CSHOSTNAME: "tipcs.idcprodcert.loc" CV_CSIPADDR: "123.123.123.123" CV_CSCLIENTNAME: "tipcs" CV_CLIENT_ROLE: "postgres" --- apiVersion: v1 kind: Secret metadata: name: commcell-secret data: CV_COMMCELL_USER: Y3ZhZG1pbgo= # commcell username is cvadmin CV_COMMCELL_PWD: Y3ZwYXNzd29yZAo= # commcell password is cvpassword --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: Sidecar metadata: name: cv-sidecar-config annotations: alloydbomni.dbadmin.goog/sidecar: commvault spec: sidecars: - name: "commvault-pgsqlagent" image: "commvault/accessnode:11.32.42" lifecycle: preStop: exec: command: [ "/bin/sh", "-c" , "cp /opt/commvault/Base/FwConfig* /etc/CommVaultRegistry/Galaxy/FwConfig/" ] envFrom: - configMapRef: name: cvconfigmap volumeMounts: - name: logdisk mountPath: /archive/ - name: tmp-socket mountPath: /tmp - name: commvault-env-store2 mountPath: /opt/cvdocker_env readOnly: true - name: backupdisk mountPath: /etc/CommVaultRegistry subPath: Registry - name: backupdisk mountPath: /var/log/commvault/Log_Files subPath: Log_Files - name: backupdisk mountPath: /opt/commvault/MediaAgent/IndexCache subPath: IndexCache - name: backupdisk mountPath: /opt/commvault/iDataAgent/jobResults subPath: jobResults - name: backupdisk mountPath: /opt/commvault/Base/certificates subPath: certificates - name: datadisk mountPath: /mnt/disks/pgsql - name: commcell-secret mountPath: /opt/commcell_secret ports: - name: cvdport containerPort: 8400 securityContext: runAsUser: 0 additionalVolumes: - name: commcell-secret secret: secretName: commcell-secret - name: commvault-env-store2 configMap: name: cvconfigmap
DBCluster dengan Sidecar Commvault
Konfigurasi DBCluster yang menentukan container sidecar helper agen Commvault.
Melihat DBCluster dengan konfigurasi YAML Commvault Sidecar
apiVersion: v1 kind: Secret metadata: name: db-pw-dbcluster-sample type: Opaque data: dbcluster-sample: "Q2hhbmdlTWUxMjM=" # Password is ChangeMe123 --- apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: dbcluster-sample spec: databaseVersion: "18.1.0" primarySpec: adminUser: passwordRef: name: db-pw-dbcluster-sample resources: memory: 5Gi cpu: 1 disks: - name: DataDisk size: 10Gi - name: LogDisk size: 10Gi walArchiveSetting: location: wal/log # enable WAL archiving and archive logs to /archive/wal/log sidecarRef: name: cv-sidecar-config