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.
842 843 844 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 842 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
618 619 620 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 618 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
625 626 627 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 625 def automated_backup_policy @automated_backup_policy end |
#backup_source ⇒ Google::Apis::AlloydbV1::BackupSource
Message describing a BackupSource.
Corresponds to the JSON property backupSource
630 631 632 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 630 def backup_source @backup_source end |
#backupdr_backup_source ⇒ Google::Apis::AlloydbV1::BackupDrBackupSource
Message describing a BackupDrBackupSource.
Corresponds to the JSON property backupdrBackupSource
635 636 637 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 635 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
640 641 642 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 640 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
645 646 647 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 645 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
653 654 655 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 653 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
659 660 661 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 659 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
664 665 666 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 664 def continuous_backup_info @continuous_backup_info end |
#create_time ⇒ String
Output only. Create time stamp
Corresponds to the JSON property createTime
669 670 671 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 669 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
677 678 679 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 677 def database_version @database_version end |
#dataplex_config ⇒ Google::Apis::AlloydbV1::DataplexConfig
Configuration for Dataplex integration.
Corresponds to the JSON property dataplexConfig
682 683 684 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 682 def dataplex_config @dataplex_config end |
#delete_time ⇒ String
Output only. Delete time stamp
Corresponds to the JSON property deleteTime
687 688 689 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 687 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
692 693 694 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 692 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
698 699 700 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 698 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
703 704 705 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 703 def encryption_info @encryption_info end |
#etag ⇒ String
For Resource freshness validation (https://google.aip.dev/154)
Corresponds to the JSON property etag
708 709 710 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 708 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
714 715 716 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 714 def initial_user @initial_user end |
#labels ⇒ Hash<String,String>
Labels as key value pairs
Corresponds to the JSON property labels
719 720 721 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 719 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
728 729 730 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 728 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
733 734 735 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 733 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
739 740 741 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 739 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
745 746 747 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 745 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
754 755 756 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 754 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`
763 764 765 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 763 def network @network end |
#network_config ⇒ Google::Apis::AlloydbV1::NetworkConfig
Metadata related to network configuration.
Corresponds to the JSON property networkConfig
768 769 770 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 768 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
775 776 777 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 775 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
780 781 782 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 780 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
789 790 791 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 789 def reconciling @reconciling end |
#satisfies_pzs ⇒ Boolean Also known as: satisfies_pzs?
Output only. Reserved for future use.
Corresponds to the JSON property satisfiesPzs
795 796 797 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 795 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
802 803 804 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 802 def secondary_config @secondary_config end |
#ssl_config ⇒ Google::Apis::AlloydbV1::SslConfig
SSL configuration.
Corresponds to the JSON property sslConfig
807 808 809 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 807 def ssl_config @ssl_config end |
#state ⇒ String
Output only. The current serving state of the cluster.
Corresponds to the JSON property state
812 813 814 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 812 def state @state end |
#subscription_type ⇒ String
Optional. Subscription type of the cluster.
Corresponds to the JSON property subscriptionType
817 818 819 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 817 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
824 825 826 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 824 def @tags end |
#trial_metadata ⇒ Google::Apis::AlloydbV1::TrialMetadata
Contains information and all metadata related to TRIAL clusters.
Corresponds to the JSON property trialMetadata
829 830 831 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 829 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
835 836 837 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 835 def uid @uid end |
#update_time ⇒ String
Output only. Update time stamp
Corresponds to the JSON property updateTime
840 841 842 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 840 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 |
# File 'lib/google/apis/alloydb_v1/classes.rb', line 847 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 |