Class: Aws::RDS::DBCluster
- Inherits:
-
Object
- Object
- Aws::RDS::DBCluster
- Extended by:
- Deprecations
- Defined in:
- lib/aws-sdk-rds/db_cluster.rb
Defined Under Namespace
Classes: Collection
Read-Only Attributes collapse
-
#allocated_storage ⇒ Integer
For all database engines except Amazon Aurora, ‘AllocatedStorage` specifies the allocated storage size in gigabytes (GB).
-
#associated_roles ⇒ Array<Types::DBClusterRole>
Provides a list of the AWS Identity and Access Management (IAM) roles that are associated with the DB cluster.
-
#availability_zones ⇒ Array<String>
Provides the list of EC2 Availability Zones that instances in the DB cluster can be created in.
-
#backup_retention_period ⇒ Integer
Specifies the number of days for which automatic DB snapshots are retained.
-
#character_set_name ⇒ String
If present, specifies the name of the character set that this cluster is associated with.
-
#clone_group_id ⇒ String
Identifies the clone group to which the DB cluster is associated.
-
#cluster_create_time ⇒ Time
Specifies the time when the DB cluster was created, in Universal Coordinated Time (UTC).
-
#database_name ⇒ String
Contains the name of the initial database of this DB cluster that was provided at create time, if one was specified when the DB cluster was created.
-
#db_cluster_arn ⇒ String
The Amazon Resource Name (ARN) for the DB cluster.
-
#db_cluster_members ⇒ Array<Types::DBClusterMember>
Provides the list of instances that make up the DB cluster.
-
#db_cluster_option_group_memberships ⇒ Array<Types::DBClusterOptionGroupStatus>
Provides the list of option group memberships for this DB cluster.
-
#db_cluster_parameter_group ⇒ String
Specifies the name of the DB cluster parameter group for the DB cluster.
-
#db_cluster_resource_id ⇒ String
The region-unique, immutable identifier for the DB cluster.
-
#db_subnet_group ⇒ String
Specifies information on the subnet group associated with the DB cluster, including the name, description, and subnets in the subnet group.
-
#earliest_restorable_time ⇒ Time
Specifies the earliest time to which a database can be restored with point-in-time restore.
-
#endpoint ⇒ String
Specifies the connection endpoint for the primary instance of the DB cluster.
-
#engine ⇒ String
Provides the name of the database engine to be used for this DB cluster.
-
#engine_version ⇒ String
Indicates the database engine version.
-
#hosted_zone_id ⇒ String
Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.
-
#iam_database_authentication_enabled ⇒ Boolean
True if mapping of AWS Identity and Access Management (IAM) accounts to database accounts is enabled; otherwise false.
- #id ⇒ String (also: #db_cluster_identifier)
-
#kms_key_id ⇒ String
If ‘StorageEncrypted` is true, the KMS key identifier for the encrypted DB cluster.
-
#latest_restorable_time ⇒ Time
Specifies the latest time to which a database can be restored with point-in-time restore.
-
#master_username ⇒ String
Contains the master username for the DB cluster.
-
#multi_az ⇒ Boolean
Specifies whether the DB cluster has instances in multiple Availability Zones.
-
#percent_progress ⇒ String
Specifies the progress of the operation as a percentage.
-
#port ⇒ Integer
Specifies the port that the database engine is listening on.
-
#preferred_backup_window ⇒ String
Specifies the daily time range during which automated backups are created if automated backups are enabled, as determined by the ‘BackupRetentionPeriod`.
-
#preferred_maintenance_window ⇒ String
Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).
-
#read_replica_identifiers ⇒ Array<String>
Contains one or more identifiers of the Read Replicas associated with this DB cluster.
-
#reader_endpoint ⇒ String
The reader endpoint for the DB cluster.
-
#replication_source_identifier ⇒ String
Contains the identifier of the source DB cluster if this DB cluster is a Read Replica.
-
#status ⇒ String
Specifies the current state of this DB cluster.
-
#storage_encrypted ⇒ Boolean
Specifies whether the DB cluster is encrypted.
-
#vpc_security_groups ⇒ Array<Types::VpcSecurityGroupMembership>
Provides a list of VPC security groups that the DB cluster belongs to.
Actions collapse
- #create(options = {}) ⇒ DBCluster
- #create_snapshot(options = {}) ⇒ DBClusterSnapshot
- #delete(options = {}) ⇒ DBCluster
- #failover(options = {}) ⇒ DBCluster
- #modify(options = {}) ⇒ DBCluster
- #restore(options = {}) ⇒ DBCluster
Associations collapse
- #events(options = {}) ⇒ Event::Collection
- #identifiers ⇒ Object deprecated private Deprecated.
- #members ⇒ DBInstance::Collection
- #option_groups ⇒ OptionGroup::Collection
- #parameter_group ⇒ DBClusterParameterGroup?
- #snapshots(options = {}) ⇒ DBClusterSnapshot::Collection
- #subnet_group ⇒ DBSubnetGroup?
Instance Method Summary collapse
- #client ⇒ Client
-
#data ⇒ Types::DBCluster
Returns the data for this DBCluster.
-
#data_loaded? ⇒ Boolean
Returns ‘true` if this resource is loaded.
-
#initialize(*args) ⇒ DBCluster
constructor
A new instance of DBCluster.
- #load ⇒ self (also: #reload)
Constructor Details
#initialize(id, options = {}) ⇒ DBCluster #initialize(options = {}) ⇒ DBCluster
Returns a new instance of DBCluster.
19 20 21 22 23 24 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 19 def initialize(*args) = Hash === args.last ? args.pop.dup : {} @id = extract_id(args, ) @data = .delete(:data) @client = .delete(:client) || Client.new() end |
Instance Method Details
#allocated_storage ⇒ Integer
For all database engines except Amazon Aurora, ‘AllocatedStorage` specifies the allocated storage size in gigabytes (GB). For Aurora, `AllocatedStorage` always returns 1, because Aurora DB cluster storage size is not fixed, but instead automatically adjusts as needed.
39 40 41 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 39 def allocated_storage data.allocated_storage end |
#associated_roles ⇒ Array<Types::DBClusterRole>
Provides a list of the AWS Identity and Access Management (IAM) roles that are associated with the DB cluster. IAM roles that are associated with a DB cluster grant permission for the DB cluster to access other AWS services on your behalf.
255 256 257 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 255 def associated_roles data.associated_roles end |
#availability_zones ⇒ Array<String>
Provides the list of EC2 Availability Zones that instances in the DB cluster can be created in.
46 47 48 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 46 def availability_zones data.availability_zones end |
#backup_retention_period ⇒ Integer
Specifies the number of days for which automatic DB snapshots are retained.
53 54 55 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 53 def backup_retention_period data.backup_retention_period end |
#character_set_name ⇒ String
If present, specifies the name of the character set that this cluster is associated with.
60 61 62 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 60 def character_set_name data.character_set_name end |
#client ⇒ Client
282 283 284 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 282 def client @client end |
#clone_group_id ⇒ String
Identifies the clone group to which the DB cluster is associated.
268 269 270 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 268 def clone_group_id data.clone_group_id end |
#cluster_create_time ⇒ Time
Specifies the time when the DB cluster was created, in Universal Coordinated Time (UTC).
275 276 277 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 275 def cluster_create_time data.cluster_create_time end |
#create(options = {}) ⇒ DBCluster
548 549 550 551 552 553 554 555 556 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 548 def create( = {}) = .merge(db_cluster_identifier: @id) resp = @client.create_db_cluster() DBCluster.new( id: resp.data.db_cluster.db_cluster_identifier, data: resp.data.db_cluster, client: @client ) end |
#create_snapshot(options = {}) ⇒ DBClusterSnapshot
586 587 588 589 590 591 592 593 594 595 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 586 def create_snapshot( = {}) = .merge(db_cluster_identifier: @id) resp = @client.create_db_cluster_snapshot() DBClusterSnapshot.new( cluster_id: resp.data.db_cluster_snapshot.db_cluster_identifier, snapshot_id: resp.data.db_cluster_snapshot.db_cluster_snapshot_identifier, data: resp.data.db_cluster_snapshot, client: @client ) end |
#data ⇒ Types::DBCluster
Returns the data for this Aws::RDS::DBCluster. Calls Client#describe_db_clusters if #data_loaded? is ‘false`.
302 303 304 305 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 302 def data load unless @data @data end |
#data_loaded? ⇒ Boolean
310 311 312 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 310 def data_loaded? !!@data end |
#database_name ⇒ String
Contains the name of the initial database of this DB cluster that was provided at create time, if one was specified when the DB cluster was created. This same name is returned for the life of the DB cluster.
68 69 70 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 68 def database_name data.database_name end |
#db_cluster_arn ⇒ String
The Amazon Resource Name (ARN) for the DB cluster.
246 247 248 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 246 def db_cluster_arn data.db_cluster_arn end |
#db_cluster_members ⇒ Array<Types::DBClusterMember>
Provides the list of instances that make up the DB cluster.
206 207 208 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 206 def db_cluster_members data.db_cluster_members end |
#db_cluster_option_group_memberships ⇒ Array<Types::DBClusterOptionGroupStatus>
Provides the list of option group memberships for this DB cluster.
171 172 173 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 171 def db_cluster_option_group_memberships data.db_cluster_option_group_memberships end |
#db_cluster_parameter_group ⇒ String
Specifies the name of the DB cluster parameter group for the DB cluster.
75 76 77 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 75 def db_cluster_parameter_group data.db_cluster_parameter_group end |
#db_cluster_resource_id ⇒ String
The region-unique, immutable identifier for the DB cluster. This identifier is found in AWS CloudTrail log entries whenever the KMS key for the DB cluster is accessed.
240 241 242 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 240 def db_cluster_resource_id data.db_cluster_resource_id end |
#db_subnet_group ⇒ String
Specifies information on the subnet group associated with the DB cluster, including the name, description, and subnets in the subnet group.
83 84 85 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 83 def db_subnet_group data.db_subnet_group end |
#delete(options = {}) ⇒ DBCluster
633 634 635 636 637 638 639 640 641 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 633 def delete( = {}) = .merge(db_cluster_identifier: @id) resp = @client.delete_db_cluster() DBCluster.new( id: resp.data.db_cluster.db_cluster_identifier, data: resp.data.db_cluster, client: @client ) end |
#earliest_restorable_time ⇒ Time
Specifies the earliest time to which a database can be restored with point-in-time restore.
102 103 104 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 102 def earliest_restorable_time data.earliest_restorable_time end |
#endpoint ⇒ String
Specifies the connection endpoint for the primary instance of the DB cluster.
109 110 111 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 109 def endpoint data.endpoint end |
#engine ⇒ String
Provides the name of the database engine to be used for this DB cluster.
140 141 142 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 140 def engine data.engine end |
#engine_version ⇒ String
Indicates the database engine version.
146 147 148 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 146 def engine_version data.engine_version end |
#events(options = {}) ⇒ Event::Collection
988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 988 def events( = {}) batches = Enumerator.new do |y| = .merge( source_type: "db-cluster", source_identifier: @id ) resp = @client.describe_events() resp.each_page do |page| batch = [] page.data.events.each do |e| batch << Event.new( source_id: e.source_identifier, date: e.date, data: e, client: @client ) end y.yield(batch) end end Event::Collection.new(batches) end |
#failover(options = {}) ⇒ DBCluster
655 656 657 658 659 660 661 662 663 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 655 def failover( = {}) = .merge(db_cluster_identifier: @id) resp = @client.failover_db_cluster() DBCluster.new( id: resp.data.db_cluster.db_cluster_identifier, data: resp.data.db_cluster, client: @client ) end |
#hosted_zone_id ⇒ String
Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.
219 220 221 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 219 def hosted_zone_id data.hosted_zone_id end |
#iam_database_authentication_enabled ⇒ Boolean
True if mapping of AWS Identity and Access Management (IAM) accounts to database accounts is enabled; otherwise false.
262 263 264 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 262 def iam_database_authentication_enabled data.iam_database_authentication_enabled end |
#id ⇒ String Also known as: db_cluster_identifier
29 30 31 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 29 def id @id end |
#identifiers ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1174 1175 1176 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 1174 def identifiers { id: @id } end |
#kms_key_id ⇒ String
If ‘StorageEncrypted` is true, the KMS key identifier for the encrypted DB cluster.
232 233 234 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 232 def kms_key_id data.kms_key_id end |
#latest_restorable_time ⇒ Time
Specifies the latest time to which a database can be restored with point-in-time restore.
153 154 155 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 153 def latest_restorable_time data.latest_restorable_time end |
#load ⇒ self Also known as: reload
Loads, or reloads #data for the current Aws::RDS::DBCluster. Returns ‘self` making it possible to chain methods.
db_cluster.reload.data
292 293 294 295 296 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 292 def load resp = @client.describe_db_clusters(db_cluster_identifier: @id) @data = resp.db_clusters[0] self end |
#master_username ⇒ String
Contains the master username for the DB cluster.
165 166 167 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 165 def master_username data.master_username end |
#members ⇒ DBInstance::Collection
1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 1012 def members batch = [] data.db_cluster_members.each do |d| batch << DBInstance.new( id: d.db_instance_identifier, data: d, client: @client ) end DBInstance::Collection.new([batch], size: batch.size) end |
#modify(options = {}) ⇒ DBCluster
796 797 798 799 800 801 802 803 804 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 796 def modify( = {}) = .merge(db_cluster_identifier: @id) resp = @client.modify_db_cluster() DBCluster.new( id: resp.data.db_cluster.db_cluster_identifier, data: resp.data.db_cluster, client: @client ) end |
#multi_az ⇒ Boolean
Specifies whether the DB cluster has instances in multiple Availability Zones.
133 134 135 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 133 def multi_az data.multi_az end |
#option_groups ⇒ OptionGroup::Collection
1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 1025 def option_groups batch = [] data.db_cluster_option_group_memberships.each do |d| batch << OptionGroup.new( name: d.db_cluster_option_group_name, data: d, client: @client ) end OptionGroup::Collection.new([batch], size: batch.size) end |
#parameter_group ⇒ DBClusterParameterGroup?
1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 1038 def parameter_group if data.db_cluster_parameter_group DBClusterParameterGroup.new( name: data.db_cluster_parameter_group, client: @client ) else nil end end |
#percent_progress ⇒ String
Specifies the progress of the operation as a percentage.
95 96 97 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 95 def percent_progress data.percent_progress end |
#port ⇒ Integer
Specifies the port that the database engine is listening on.
159 160 161 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 159 def port data.port end |
#preferred_backup_window ⇒ String
Specifies the daily time range during which automated backups are created if automated backups are enabled, as determined by the ‘BackupRetentionPeriod`.
179 180 181 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 179 def preferred_backup_window data.preferred_backup_window end |
#preferred_maintenance_window ⇒ String
Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).
186 187 188 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 186 def preferred_maintenance_window data.preferred_maintenance_window end |
#read_replica_identifiers ⇒ Array<String>
Contains one or more identifiers of the Read Replicas associated with this DB cluster.
200 201 202 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 200 def read_replica_identifiers data.read_replica_identifiers end |
#reader_endpoint ⇒ String
The reader endpoint for the DB cluster. The reader endpoint for a DB cluster load-balances connections across the Aurora Replicas that are available in a DB cluster. As clients request new connections to the reader endpoint, Aurora distributes the connection requests among the Aurora Replicas in the DB cluster. This functionality can help balance your read workload across multiple Aurora Replicas in your DB cluster.
If a failover occurs, and the Aurora Replica that you are connected to is promoted to be the primary instance, your connection will be dropped. To continue sending your read workload to other Aurora Replicas in the cluster, you can then reconnect to the reader endpoint.
126 127 128 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 126 def reader_endpoint data.reader_endpoint end |
#replication_source_identifier ⇒ String
Contains the identifier of the source DB cluster if this DB cluster is a Read Replica.
193 194 195 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 193 def replication_source_identifier data.replication_source_identifier end |
#restore(options = {}) ⇒ DBCluster
931 932 933 934 935 936 937 938 939 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 931 def restore( = {}) = .merge(source_db_cluster_identifier: @id) resp = @client.restore_db_cluster_to_point_in_time() DBCluster.new( id: resp.data.db_cluster.db_cluster_identifier, data: resp.data.db_cluster, client: @client ) end |
#snapshots(options = {}) ⇒ DBClusterSnapshot::Collection
1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 1142 def snapshots( = {}) batches = Enumerator.new do |y| batch = [] = .merge(db_cluster_identifier: @id) resp = @client.describe_db_cluster_snapshots() resp.data.db_cluster_snapshots.each do |d| batch << DBClusterSnapshot.new( cluster_id: @id, snapshot_id: d.db_cluster_snapshot_identifier, data: d, client: @client ) end y.yield(batch) end DBClusterSnapshot::Collection.new(batches) end |
#status ⇒ String
Specifies the current state of this DB cluster.
89 90 91 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 89 def status data.status end |
#storage_encrypted ⇒ Boolean
Specifies whether the DB cluster is encrypted.
225 226 227 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 225 def storage_encrypted data.storage_encrypted end |
#subnet_group ⇒ DBSubnetGroup?
1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 1161 def subnet_group if data.db_subnet_group DBSubnetGroup.new( name: data.db_subnet_group, client: @client ) else nil end end |
#vpc_security_groups ⇒ Array<Types::VpcSecurityGroupMembership>
Provides a list of VPC security groups that the DB cluster belongs to.
212 213 214 |
# File 'lib/aws-sdk-rds/db_cluster.rb', line 212 def vpc_security_groups data.vpc_security_groups end |