Class: Google::Apis::AlloydbV1::Cluster
- Inherits:
-
Object
- Object
- Google::Apis::AlloydbV1::Cluster
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/alloydb_v1/classes.rb,
lib/google/apis/alloydb_v1/representations.rb,
lib/google/apis/alloydb_v1/representations.rb
Overview
A cluster is a collection of regional AlloyDB resources. It can include a primary instance and one or more read pool instances. All cluster resources share a storage layer, which scales as needed.
Instance Attribute Summary collapse
-
#annotations ⇒ Hash<String,String>
Annotations to allow client tools to store small amount of arbitrary data.
-
#automated_backup_policy ⇒ Google::Apis::AlloydbV1::AutomatedBackupPolicy
Message describing the user-specified automated backup policy.
-
#backup_source ⇒ Google::Apis::AlloydbV1::BackupSource
Message describing a BackupSource.
-
#cluster_type ⇒ String
Output only.
-
#continuous_backup_config ⇒ Google::Apis::AlloydbV1::ContinuousBackupConfig
ContinuousBackupConfig describes the continuous backups recovery configurations of a cluster.
-
#continuous_backup_info ⇒ Google::Apis::AlloydbV1::ContinuousBackupInfo
ContinuousBackupInfo describes the continuous backup properties of a cluster.
-
#create_time ⇒ String
Output only.
-
#database_version ⇒ String
Optional.
-
#delete_time ⇒ String
Output only.
-
#display_name ⇒ String
User-settable and human-readable display name for the Cluster.
-
#encryption_config ⇒ Google::Apis::AlloydbV1::EncryptionConfig
EncryptionConfig describes the encryption config of a cluster or a backup that is encrypted with a CMEK (customer-managed encryption key).
-
#encryption_info ⇒ Google::Apis::AlloydbV1::EncryptionInfo
EncryptionInfo describes the encryption information of a cluster or a backup.
-
#etag ⇒ String
For Resource freshness validation (https://google.aip.dev/154) Corresponds to the JSON property
etag
. -
#initial_user ⇒ Google::Apis::AlloydbV1::UserPassword
The username/password for a database user.
-
#labels ⇒ Hash<String,String>
Labels as key value pairs Corresponds to the JSON property
labels
. -
#maintenance_schedule ⇒ Google::Apis::AlloydbV1::MaintenanceSchedule
MaintenanceSchedule stores the maintenance schedule generated from the MaintenanceUpdatePolicy, once a maintenance rollout is triggered, if MaintenanceWindow is set, and if there is no conflicting DenyPeriod.
-
#maintenance_update_policy ⇒ Google::Apis::AlloydbV1::MaintenanceUpdatePolicy
MaintenanceUpdatePolicy defines the policy for system updates.
-
#migration_source ⇒ Google::Apis::AlloydbV1::MigrationSource
Subset of the source instance configuration that is available when reading the cluster resource.
-
#name ⇒ String
Output only.
-
#network ⇒ String
Required.
-
#network_config ⇒ Google::Apis::AlloydbV1::NetworkConfig
Metadata related to network configuration.
-
#primary_config ⇒ Google::Apis::AlloydbV1::PrimaryConfig
Configuration for the primary cluster.
-
#psc_config ⇒ Google::Apis::AlloydbV1::PscConfig
PscConfig contains PSC related configuration at a cluster level.
-
#reconciling ⇒ Boolean
(also: #reconciling?)
Output only.
-
#satisfies_pzs ⇒ Boolean
(also: #satisfies_pzs?)
Output only.
-
#secondary_config ⇒ Google::Apis::AlloydbV1::SecondaryConfig
Configuration information for the secondary cluster.
-
#ssl_config ⇒ Google::Apis::AlloydbV1::SslConfig
SSL configuration.
-
#state ⇒ String
Output only.
-
#subscription_type ⇒ String
Optional.
-
#tags ⇒ Hash<String,String>
Optional.
-
#trial_metadata ⇒ Google::Apis::AlloydbV1::TrialMetadata
Contains information and all metadata related to TRIAL clusters.
-
#uid ⇒ String
Output only.
-
#update_time ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Cluster
constructor
A new instance of Cluster.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Cluster
Returns a new instance of Cluster.
601 602 603 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 601 def initialize(**args) update!(**args) end |
Instance Attribute Details
#annotations ⇒ Hash<String,String>
Annotations to allow client tools to store small amount of arbitrary data.
This is distinct from labels. https://google.aip.dev/128
Corresponds to the JSON property annotations
403 404 405 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 403 def annotations @annotations end |
#automated_backup_policy ⇒ Google::Apis::AlloydbV1::AutomatedBackupPolicy
Message describing the user-specified automated backup policy. All fields in
the automated backup policy are optional. Defaults for each field are provided
if they are not set.
Corresponds to the JSON property automatedBackupPolicy
410 411 412 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 410 def automated_backup_policy @automated_backup_policy end |
#backup_source ⇒ Google::Apis::AlloydbV1::BackupSource
Message describing a BackupSource.
Corresponds to the JSON property backupSource
415 416 417 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 415 def backup_source @backup_source end |
#cluster_type ⇒ String
Output only. The type of the cluster. This is an output-only field and it's
populated at the Cluster creation time or the Cluster promotion time. The
cluster type is determined by which RPC was used to create the cluster (i.e.
CreateCluster
vs. CreateSecondaryCluster
Corresponds to the JSON property clusterType
423 424 425 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 423 def cluster_type @cluster_type end |
#continuous_backup_config ⇒ Google::Apis::AlloydbV1::ContinuousBackupConfig
ContinuousBackupConfig describes the continuous backups recovery
configurations of a cluster.
Corresponds to the JSON property continuousBackupConfig
429 430 431 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 429 def continuous_backup_config @continuous_backup_config end |
#continuous_backup_info ⇒ Google::Apis::AlloydbV1::ContinuousBackupInfo
ContinuousBackupInfo describes the continuous backup properties of a cluster.
Corresponds to the JSON property continuousBackupInfo
434 435 436 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 434 def continuous_backup_info @continuous_backup_info end |
#create_time ⇒ String
Output only. Create time stamp
Corresponds to the JSON property createTime
439 440 441 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 439 def create_time @create_time end |
#database_version ⇒ String
Optional. The database engine major version. This is an optional field and it
is populated at the Cluster creation time. If a database version is not
supplied at cluster creation time, then a default database version will be
used.
Corresponds to the JSON property databaseVersion
447 448 449 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 447 def database_version @database_version end |
#delete_time ⇒ String
Output only. Delete time stamp
Corresponds to the JSON property deleteTime
452 453 454 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 452 def delete_time @delete_time end |
#display_name ⇒ String
User-settable and human-readable display name for the Cluster.
Corresponds to the JSON property displayName
457 458 459 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 457 def display_name @display_name end |
#encryption_config ⇒ Google::Apis::AlloydbV1::EncryptionConfig
EncryptionConfig describes the encryption config of a cluster or a backup that
is encrypted with a CMEK (customer-managed encryption key).
Corresponds to the JSON property encryptionConfig
463 464 465 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 463 def encryption_config @encryption_config end |
#encryption_info ⇒ Google::Apis::AlloydbV1::EncryptionInfo
EncryptionInfo describes the encryption information of a cluster or a backup.
Corresponds to the JSON property encryptionInfo
468 469 470 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 468 def encryption_info @encryption_info end |
#etag ⇒ String
For Resource freshness validation (https://google.aip.dev/154)
Corresponds to the JSON property etag
473 474 475 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 473 def etag @etag end |
#initial_user ⇒ Google::Apis::AlloydbV1::UserPassword
The username/password for a database user. Used for specifying initial users
at cluster creation time.
Corresponds to the JSON property initialUser
479 480 481 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 479 def initial_user @initial_user end |
#labels ⇒ Hash<String,String>
Labels as key value pairs
Corresponds to the JSON property labels
484 485 486 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 484 def labels @labels end |
#maintenance_schedule ⇒ Google::Apis::AlloydbV1::MaintenanceSchedule
MaintenanceSchedule stores the maintenance schedule generated from the
MaintenanceUpdatePolicy, once a maintenance rollout is triggered, if
MaintenanceWindow is set, and if there is no conflicting DenyPeriod. The
schedule is cleared once the update takes place. This field cannot be manually
changed; modify the MaintenanceUpdatePolicy instead.
Corresponds to the JSON property maintenanceSchedule
493 494 495 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 493 def maintenance_schedule @maintenance_schedule end |
#maintenance_update_policy ⇒ Google::Apis::AlloydbV1::MaintenanceUpdatePolicy
MaintenanceUpdatePolicy defines the policy for system updates.
Corresponds to the JSON property maintenanceUpdatePolicy
498 499 500 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 498 def maintenance_update_policy @maintenance_update_policy end |
#migration_source ⇒ Google::Apis::AlloydbV1::MigrationSource
Subset of the source instance configuration that is available when reading the
cluster resource.
Corresponds to the JSON property migrationSource
504 505 506 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 504 def migration_source @migration_source end |
#name ⇒ String
Output only. The name of the cluster resource with the format: * projects/
project
/locations/region
/clusters/cluster_id
where the cluster ID segment
should satisfy the regex expression [a-z0-9-]+
. For more details see https://
google.aip.dev/122. The prefix of the cluster resource name is the name of the
parent resource: * projects/project
/locations/region
Corresponds to the JSON property name
513 514 515 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 513 def name @name end |
#network ⇒ String
Required. The resource link for the VPC network in which cluster resources are
created and from which they are accessible via Private IP. The network must
belong to the same project as the cluster. It is specified in the form:
projects/
project/global/networks/
network_id`. This is required to create a
cluster. Deprecated, use network_config.network instead.
Corresponds to the JSON property
network`
522 523 524 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 522 def network @network end |
#network_config ⇒ Google::Apis::AlloydbV1::NetworkConfig
Metadata related to network configuration.
Corresponds to the JSON property networkConfig
527 528 529 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 527 def network_config @network_config end |
#primary_config ⇒ Google::Apis::AlloydbV1::PrimaryConfig
Configuration for the primary cluster. It has the list of clusters that are
replicating from this cluster. This should be set if and only if the cluster
is of type PRIMARY.
Corresponds to the JSON property primaryConfig
534 535 536 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 534 def primary_config @primary_config end |
#psc_config ⇒ Google::Apis::AlloydbV1::PscConfig
PscConfig contains PSC related configuration at a cluster level.
Corresponds to the JSON property pscConfig
539 540 541 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 539 def psc_config @psc_config end |
#reconciling ⇒ Boolean Also known as: reconciling?
Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to
true if the current state of Cluster does not match the user's intended state,
and the service is actively updating the resource to reconcile them. This can
happen due to user-triggered updates or system actions like failover or
maintenance.
Corresponds to the JSON property reconciling
548 549 550 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 548 def reconciling @reconciling end |
#satisfies_pzs ⇒ Boolean Also known as: satisfies_pzs?
Output only. Reserved for future use.
Corresponds to the JSON property satisfiesPzs
554 555 556 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 554 def satisfies_pzs @satisfies_pzs end |
#secondary_config ⇒ Google::Apis::AlloydbV1::SecondaryConfig
Configuration information for the secondary cluster. This should be set if and
only if the cluster is of type SECONDARY.
Corresponds to the JSON property secondaryConfig
561 562 563 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 561 def secondary_config @secondary_config end |
#ssl_config ⇒ Google::Apis::AlloydbV1::SslConfig
SSL configuration.
Corresponds to the JSON property sslConfig
566 567 568 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 566 def ssl_config @ssl_config end |
#state ⇒ String
Output only. The current serving state of the cluster.
Corresponds to the JSON property state
571 572 573 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 571 def state @state end |
#subscription_type ⇒ String
Optional. Subscription type of the cluster.
Corresponds to the JSON property subscriptionType
576 577 578 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 576 def subscription_type @subscription_type end |
#tags ⇒ Hash<String,String>
Optional. Input only. Immutable. Tag keys/values directly bound to this
resource. For example: "123/environment": "production", "123/costCenter": "
marketing"
Corresponds to the JSON property tags
583 584 585 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 583 def @tags end |
#trial_metadata ⇒ Google::Apis::AlloydbV1::TrialMetadata
Contains information and all metadata related to TRIAL clusters.
Corresponds to the JSON property trialMetadata
588 589 590 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 588 def @trial_metadata end |
#uid ⇒ String
Output only. The system-generated UID of the resource. The UID is assigned
when the resource is created, and it is retained until it is deleted.
Corresponds to the JSON property uid
594 595 596 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 594 def uid @uid end |
#update_time ⇒ String
Output only. Update time stamp
Corresponds to the JSON property updateTime
599 600 601 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 599 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 606 def update!(**args) @annotations = args[:annotations] if args.key?(:annotations) @automated_backup_policy = args[:automated_backup_policy] if args.key?(:automated_backup_policy) @backup_source = args[:backup_source] if args.key?(:backup_source) @cluster_type = args[:cluster_type] if args.key?(:cluster_type) @continuous_backup_config = args[:continuous_backup_config] if args.key?(:continuous_backup_config) @continuous_backup_info = args[:continuous_backup_info] if args.key?(:continuous_backup_info) @create_time = args[:create_time] if args.key?(:create_time) @database_version = args[:database_version] if args.key?(:database_version) @delete_time = args[:delete_time] if args.key?(:delete_time) @display_name = args[:display_name] if args.key?(:display_name) @encryption_config = args[:encryption_config] if args.key?(:encryption_config) @encryption_info = args[:encryption_info] if args.key?(:encryption_info) @etag = args[:etag] if args.key?(:etag) @initial_user = args[:initial_user] if args.key?(:initial_user) @labels = args[:labels] if args.key?(:labels) @maintenance_schedule = args[:maintenance_schedule] if args.key?(:maintenance_schedule) @maintenance_update_policy = args[:maintenance_update_policy] if args.key?(:maintenance_update_policy) @migration_source = args[:migration_source] if args.key?(:migration_source) @name = args[:name] if args.key?(:name) @network = args[:network] if args.key?(:network) @network_config = args[:network_config] if args.key?(:network_config) @primary_config = args[:primary_config] if args.key?(:primary_config) @psc_config = args[:psc_config] if args.key?(:psc_config) @reconciling = args[:reconciling] if args.key?(:reconciling) @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs) @secondary_config = args[:secondary_config] if args.key?(:secondary_config) @ssl_config = args[:ssl_config] if args.key?(:ssl_config) @state = args[:state] if args.key?(:state) @subscription_type = args[:subscription_type] if args.key?(:subscription_type) @tags = args[:tags] if args.key?(:tags) @trial_metadata = args[:trial_metadata] if args.key?(:trial_metadata) @uid = args[:uid] if args.key?(:uid) @update_time = args[:update_time] if args.key?(:update_time) end |