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.
-
#backupdr_backup_source ⇒ Google::Apis::AlloydbV1::BackupDrBackupSource
Message describing a BackupDrBackupSource.
-
#backupdr_info ⇒ Google::Apis::AlloydbV1::BackupDrInfo
Information about BackupDR protection for this cluster.
-
#cloudsql_backup_run_source ⇒ Google::Apis::AlloydbV1::CloudSqlBackupRunSource
The source CloudSQL backup resource.
-
#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.
-
#dataplex_config ⇒ Google::Apis::AlloydbV1::DataplexConfig
Configuration for Dataplex integration.
-
#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.
-
#maintenance_version_selection_policy ⇒ String
Input only.
-
#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.
818 819 820 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 818 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
594 595 596 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 594 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
601 602 603 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 601 def automated_backup_policy @automated_backup_policy end |
#backup_source ⇒ Google::Apis::AlloydbV1::BackupSource
Message describing a BackupSource.
Corresponds to the JSON property backupSource
606 607 608 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 606 def backup_source @backup_source end |
#backupdr_backup_source ⇒ Google::Apis::AlloydbV1::BackupDrBackupSource
Message describing a BackupDrBackupSource.
Corresponds to the JSON property backupdrBackupSource
611 612 613 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 611 def backupdr_backup_source @backupdr_backup_source end |
#backupdr_info ⇒ Google::Apis::AlloydbV1::BackupDrInfo
Information about BackupDR protection for this cluster.
Corresponds to the JSON property backupdrInfo
616 617 618 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 616 def backupdr_info @backupdr_info end |
#cloudsql_backup_run_source ⇒ Google::Apis::AlloydbV1::CloudSqlBackupRunSource
The source CloudSQL backup resource.
Corresponds to the JSON property cloudsqlBackupRunSource
621 622 623 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 621 def cloudsql_backup_run_source @cloudsql_backup_run_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
629 630 631 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 629 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
635 636 637 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 635 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
640 641 642 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 640 def continuous_backup_info @continuous_backup_info end |
#create_time ⇒ String
Output only. Create time stamp
Corresponds to the JSON property createTime
645 646 647 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 645 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
653 654 655 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 653 def database_version @database_version end |
#dataplex_config ⇒ Google::Apis::AlloydbV1::DataplexConfig
Configuration for Dataplex integration.
Corresponds to the JSON property dataplexConfig
658 659 660 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 658 def dataplex_config @dataplex_config end |
#delete_time ⇒ String
Output only. Delete time stamp
Corresponds to the JSON property deleteTime
663 664 665 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 663 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
668 669 670 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 668 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
674 675 676 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 674 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
679 680 681 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 679 def encryption_info @encryption_info end |
#etag ⇒ String
For Resource freshness validation (https://google.aip.dev/154)
Corresponds to the JSON property etag
684 685 686 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 684 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
690 691 692 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 690 def initial_user @initial_user end |
#labels ⇒ Hash<String,String>
Labels as key value pairs
Corresponds to the JSON property labels
695 696 697 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 695 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
704 705 706 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 704 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
709 710 711 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 709 def maintenance_update_policy @maintenance_update_policy end |
#maintenance_version_selection_policy ⇒ String
Input only. Policy to use to automatically select the maintenance version to
which to update the cluster's instances.
Corresponds to the JSON property maintenanceVersionSelectionPolicy
715 716 717 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 715 def maintenance_version_selection_policy @maintenance_version_selection_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
721 722 723 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 721 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
730 731 732 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 730 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 propertynetwork`
739 740 741 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 739 def network @network end |
#network_config ⇒ Google::Apis::AlloydbV1::NetworkConfig
Metadata related to network configuration.
Corresponds to the JSON property networkConfig
744 745 746 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 744 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
751 752 753 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 751 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
756 757 758 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 756 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
765 766 767 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 765 def reconciling @reconciling end |
#satisfies_pzs ⇒ Boolean Also known as: satisfies_pzs?
Output only. Reserved for future use.
Corresponds to the JSON property satisfiesPzs
771 772 773 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 771 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
778 779 780 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 778 def secondary_config @secondary_config end |
#ssl_config ⇒ Google::Apis::AlloydbV1::SslConfig
SSL configuration.
Corresponds to the JSON property sslConfig
783 784 785 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 783 def ssl_config @ssl_config end |
#state ⇒ String
Output only. The current serving state of the cluster.
Corresponds to the JSON property state
788 789 790 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 788 def state @state end |
#subscription_type ⇒ String
Optional. Subscription type of the cluster.
Corresponds to the JSON property subscriptionType
793 794 795 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 793 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
800 801 802 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 800 def @tags end |
#trial_metadata ⇒ Google::Apis::AlloydbV1::TrialMetadata
Contains information and all metadata related to TRIAL clusters.
Corresponds to the JSON property trialMetadata
805 806 807 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 805 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
811 812 813 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 811 def uid @uid end |
#update_time ⇒ String
Output only. Update time stamp
Corresponds to the JSON property updateTime
816 817 818 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 816 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 823 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) @backupdr_backup_source = args[:backupdr_backup_source] if args.key?(:backupdr_backup_source) @backupdr_info = args[:backupdr_info] if args.key?(:backupdr_info) @cloudsql_backup_run_source = args[:cloudsql_backup_run_source] if args.key?(:cloudsql_backup_run_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) @dataplex_config = args[:dataplex_config] if args.key?(:dataplex_config) @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) @maintenance_version_selection_policy = args[:maintenance_version_selection_policy] if args.key?(:maintenance_version_selection_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 |