Class: Aws::RDS::DBCluster
- Inherits:
-
Object
- Object
- Aws::RDS::DBCluster
- Defined in:
- gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb
Defined Under Namespace
Classes: Collection
Read-Only Attributes collapse
-
#activity_stream_kinesis_stream_name ⇒ String
The name of the Amazon Kinesis data stream used for the database activity stream.
-
#activity_stream_kms_key_id ⇒ String
The Amazon Web Services KMS key identifier used for encrypting messages in the database activity stream.
-
#activity_stream_mode ⇒ String
The mode of the database activity stream.
-
#activity_stream_status ⇒ String
The status of the database activity stream.
-
#allocated_storage ⇒ Integer
For all database engines except Amazon Aurora,
AllocatedStorage
specifies the allocated storage size in gibibytes (GiB). -
#associated_roles ⇒ Array<Types::DBClusterRole>
Provides a list of the Amazon Web Services Identity and Access Management (IAM) roles that are associated with the DB cluster.
-
#auto_minor_version_upgrade ⇒ Boolean
A value that indicates that minor version patches are applied automatically.
-
#automatic_restart_time ⇒ Time
The time when a stopped DB cluster is restarted automatically.
-
#availability_zones ⇒ Array<String>
Provides the list of Availability Zones (AZs) where instances in the DB cluster can be created.
-
#backtrack_consumed_change_records ⇒ Integer
The number of change records stored for Backtrack.
-
#backtrack_window ⇒ Integer
The target backtrack window, in seconds.
-
#backup_retention_period ⇒ Integer
Specifies the number of days for which automatic DB snapshots are retained.
-
#capacity ⇒ Integer
The current capacity of an Aurora Serverless v1 DB cluster.
-
#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).
-
#copy_tags_to_snapshot ⇒ Boolean
Specifies whether tags are copied from the DB cluster to snapshots of the DB cluster.
-
#cross_account_clone ⇒ Boolean
Specifies whether the DB cluster is a clone of a DB cluster owned by a different Amazon Web Services account.
-
#custom_endpoints ⇒ Array<String>
Identifies all custom endpoints associated with the cluster.
-
#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_instance_class ⇒ String
The name of the compute and memory capacity class of the DB instance.
-
#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 Amazon Web Services 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.
-
#deletion_protection ⇒ Boolean
Indicates if the DB cluster has deletion protection enabled.
-
#domain_memberships ⇒ Array<Types::DomainMembership>
The Active Directory Domain membership records associated with the DB cluster.
-
#earliest_backtrack_time ⇒ Time
The earliest time to which a DB cluster can be backtracked.
-
#earliest_restorable_time ⇒ Time
The earliest time to which a database can be restored with point-in-time restore.
-
#enabled_cloudwatch_logs_exports ⇒ Array<String>
A list of log types that this DB cluster is configured to export to CloudWatch Logs.
-
#endpoint ⇒ String
Specifies the connection endpoint for the primary instance of the DB cluster.
-
#engine ⇒ String
The name of the database engine to be used for this DB cluster.
-
#engine_mode ⇒ String
The DB engine mode of the DB cluster, either
provisioned
,serverless
,parallelquery
,global
, ormultimaster
. -
#engine_version ⇒ String
Indicates the database engine version.
-
#global_write_forwarding_requested ⇒ Boolean
Specifies whether you have requested to enable write forwarding for a secondary cluster in an Aurora global database.
-
#global_write_forwarding_status ⇒ String
Specifies whether a secondary cluster in an Aurora global database has write forwarding enabled, not enabled, or is in the process of enabling it.
-
#hosted_zone_id ⇒ String
Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.
-
#http_endpoint_enabled ⇒ Boolean
A value that indicates whether the HTTP endpoint for an Aurora Serverless v1 DB cluster is enabled.
-
#iam_database_authentication_enabled ⇒ Boolean
A value that indicates whether the mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled.
-
#id ⇒ String
(also: #db_cluster_identifier)
-
#iops ⇒ Integer
The Provisioned IOPS (I/O operations per second) value.
-
#kms_key_id ⇒ String
If
StorageEncrypted
is enabled, the Amazon Web Services 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.
-
#monitoring_interval ⇒ Integer
The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB cluster.
-
#monitoring_role_arn ⇒ String
The ARN for the IAM role that permits RDS to send Enhanced Monitoring metrics to Amazon CloudWatch Logs.
-
#multi_az ⇒ Boolean
Specifies whether the DB cluster has instances in multiple Availability Zones.
-
#pending_modified_values ⇒ Types::ClusterPendingModifiedValues
A value that specifies that changes to the DB cluster are pending.
-
#percent_progress ⇒ String
Specifies the progress of the operation as a percentage.
-
#performance_insights_enabled ⇒ Boolean
True if Performance Insights is enabled for the DB cluster, and otherwise false.
-
#performance_insights_kms_key_id ⇒ String
The Amazon Web Services KMS key identifier for encryption of Performance Insights data.
-
#performance_insights_retention_period ⇒ Integer
The number of days to retain Performance Insights data.
-
#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).
-
#publicly_accessible ⇒ Boolean
Specifies the accessibility options for the DB instance.
-
#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.
-
#scaling_configuration_info ⇒ Types::ScalingConfigurationInfo
Shows the scaling configuration for an Aurora DB cluster in
serverless
DB engine mode. -
#serverless_v2_scaling_configuration ⇒ Types::ServerlessV2ScalingConfigurationInfo
Shows the scaling configuration for an Aurora Serverless v2 DB cluster.
-
#status ⇒ String
Specifies the current state of this DB cluster.
-
#storage_encrypted ⇒ Boolean
Specifies whether the DB cluster is encrypted.
-
#storage_type ⇒ String
The storage type associated with the DB cluster.
-
#tag_list ⇒ Array<Types::Tag>
A list of tags.
-
#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
-
#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)
-
#wait_until(options = {}) {|resource| ... } ⇒ Resource
deprecated
Deprecated.
Use [Aws::RDS::Client] #wait_until instead
Constructor Details
#initialize(id, options = {}) ⇒ DBCluster #initialize(options = {}) ⇒ DBCluster
Returns a new instance of DBCluster.
22 23 24 25 26 27 28 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 22 def initialize(*args) = Hash === args.last ? args.pop.dup : {} @id = extract_id(args, ) @data = .delete(:data) @client = .delete(:client) || Client.new() @waiter_block_warned = false end |
Instance Method Details
#activity_stream_kinesis_stream_name ⇒ String
The name of the Amazon Kinesis data stream used for the database activity stream.
427 428 429 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 427 def activity_stream_kinesis_stream_name data[:activity_stream_kinesis_stream_name] end |
#activity_stream_kms_key_id ⇒ String
The Amazon Web Services KMS key identifier used for encrypting messages in the database activity stream.
The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.
420 421 422 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 420 def activity_stream_kms_key_id data[:activity_stream_kms_key_id] end |
#activity_stream_mode ⇒ String
The mode of the database activity stream. Database events such as a change or access generate an activity stream event. The database session can handle these events either synchronously or asynchronously.
404 405 406 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 404 def activity_stream_mode data[:activity_stream_mode] end |
#activity_stream_status ⇒ String
The status of the database activity stream.
410 411 412 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 410 def activity_stream_status data[:activity_stream_status] end |
#allocated_storage ⇒ Integer
For all database engines except Amazon Aurora, AllocatedStorage
specifies the allocated storage size in gibibytes (GiB). For Aurora,
AllocatedStorage
always returns 1, because Aurora DB cluster storage
size isn't fixed, but instead automatically adjusts as needed.
43 44 45 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 43 def allocated_storage data[:allocated_storage] end |
#associated_roles ⇒ Array<Types::DBClusterRole>
Provides a list of the Amazon Web Services 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 Amazon Web Services on your behalf.
272 273 274 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 272 def associated_roles data[:associated_roles] end |
#auto_minor_version_upgrade ⇒ Boolean
A value that indicates that minor version patches are applied automatically.
This setting is only for non-Aurora Multi-AZ DB clusters.
539 540 541 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 539 def auto_minor_version_upgrade data[:auto_minor_version_upgrade] end |
#automatic_restart_time ⇒ Time
The time when a stopped DB cluster is restarted automatically.
99 100 101 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 99 def automatic_restart_time data[:automatic_restart_time] end |
#availability_zones ⇒ Array<String>
Provides the list of Availability Zones (AZs) where instances in the DB cluster can be created.
50 51 52 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 50 def availability_zones data[:availability_zones] end |
#backtrack_consumed_change_records ⇒ Integer
The number of change records stored for Backtrack.
313 314 315 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 313 def backtrack_consumed_change_records data[:backtrack_consumed_change_records] end |
#backtrack_window ⇒ Integer
The target backtrack window, in seconds. If this value is set to 0, backtracking is disabled for the DB cluster. Otherwise, backtracking is enabled.
307 308 309 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 307 def backtrack_window data[:backtrack_window] end |
#backup_retention_period ⇒ Integer
Specifies the number of days for which automatic DB snapshots are retained.
57 58 59 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 57 def backup_retention_period data[:backup_retention_period] end |
#capacity ⇒ Integer
The current capacity of an Aurora Serverless v1 DB cluster. The capacity is 0 (zero) when the cluster is paused.
For more information about Aurora Serverless v1, see Using Amazon Aurora Serverless v1 in the Amazon Aurora User Guide.
342 343 344 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 342 def capacity data[:capacity] end |
#character_set_name ⇒ String
If present, specifies the name of the character set that this cluster is associated with.
64 65 66 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 64 def character_set_name data[:character_set_name] end |
#client ⇒ Client
624 625 626 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 624 def client @client end |
#clone_group_id ⇒ String
Identifies the clone group to which the DB cluster is associated.
286 287 288 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 286 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).
293 294 295 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 293 def cluster_create_time data[:cluster_create_time] end |
#copy_tags_to_snapshot ⇒ Boolean
Specifies whether tags are copied from the DB cluster to snapshots of the DB cluster.
434 435 436 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 434 def data[:copy_tags_to_snapshot] end |
#create(options = {}) ⇒ DBCluster
1510 1511 1512 1513 1514 1515 1516 1517 1518 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 1510 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
1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 1548 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 |
#cross_account_clone ⇒ Boolean
Specifies whether the DB cluster is a clone of a DB cluster owned by a different Amazon Web Services account.
441 442 443 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 441 def cross_account_clone data[:cross_account_clone] end |
#custom_endpoints ⇒ Array<String>
Identifies all custom endpoints associated with the cluster.
141 142 143 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 141 def custom_endpoints data[:custom_endpoints] end |
#data ⇒ Types::DBCluster
Returns the data for this Aws::RDS::DBCluster. Calls
Client#describe_db_clusters if #data_loaded? is false
.
644 645 646 647 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 644 def data load unless @data @data end |
#data_loaded? ⇒ Boolean
652 653 654 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 652 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.
72 73 74 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 72 def database_name data[:database_name] end |
#db_cluster_arn ⇒ String
The Amazon Resource Name (ARN) for the DB cluster.
263 264 265 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 263 def db_cluster_arn data[:db_cluster_arn] end |
#db_cluster_instance_class ⇒ String
The name of the compute and memory capacity class of the DB instance.
This setting is only for non-Aurora Multi-AZ DB clusters.
493 494 495 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 493 def db_cluster_instance_class data[:db_cluster_instance_class] end |
#db_cluster_members ⇒ Array<Types::DBClusterMember>
Provides the list of instances that make up the DB cluster.
220 221 222 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 220 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.
185 186 187 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 185 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.
79 80 81 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 79 def db_cluster_parameter_group data[:db_cluster_parameter_group] end |
#db_cluster_resource_id ⇒ String
The Amazon Web Services Region-unique, immutable identifier for the DB cluster. This identifier is found in Amazon Web Services CloudTrail log entries whenever the KMS key for the DB cluster is accessed.
257 258 259 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 257 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.
87 88 89 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 87 def db_subnet_group data[:db_subnet_group] end |
#delete(options = {}) ⇒ DBCluster
1596 1597 1598 1599 1600 1601 1602 1603 1604 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 1596 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 |
#deletion_protection ⇒ Boolean
Indicates if the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled.
376 377 378 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 376 def deletion_protection data[:deletion_protection] end |
#domain_memberships ⇒ Array<Types::DomainMembership>
The Active Directory Domain membership records associated with the DB cluster.
448 449 450 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 448 def domain_memberships data[:domain_memberships] end |
#earliest_backtrack_time ⇒ Time
The earliest time to which a DB cluster can be backtracked.
299 300 301 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 299 def earliest_backtrack_time data[:earliest_backtrack_time] end |
#earliest_restorable_time ⇒ Time
The earliest time to which a database can be restored with point-in-time restore.
112 113 114 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 112 def earliest_restorable_time data[:earliest_restorable_time] end |
#enabled_cloudwatch_logs_exports ⇒ Array<String>
A list of log types that this DB cluster is configured to export to CloudWatch Logs.
Log types vary by DB engine. For information about the log types for each DB engine, see Amazon RDS Database Log Files in the Amazon Aurora User Guide.
328 329 330 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 328 def enabled_cloudwatch_logs_exports data[:enabled_cloudwatch_logs_exports] end |
#endpoint ⇒ String
Specifies the connection endpoint for the primary instance of the DB cluster.
119 120 121 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 119 def endpoint data[:endpoint] end |
#engine ⇒ String
The name of the database engine to be used for this DB cluster.
154 155 156 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 154 def engine data[:engine] end |
#engine_mode ⇒ String
The DB engine mode of the DB cluster, either provisioned
,
serverless
, parallelquery
, global
, or multimaster
.
For more information, see CreateDBCluster.
355 356 357 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 355 def engine_mode data[:engine_mode] end |
#engine_version ⇒ String
Indicates the database engine version.
160 161 162 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 160 def engine_version data[:engine_version] end |
#events(options = {}) ⇒ Event::Collection
2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 2590 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
1621 1622 1623 1624 1625 1626 1627 1628 1629 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 1621 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 |
#global_write_forwarding_requested ⇒ Boolean
Specifies whether you have requested to enable write forwarding for a
secondary cluster in an Aurora global database. Because write
forwarding takes time to enable, check the value of
GlobalWriteForwardingStatus
to confirm that the request has
completed before using the write forwarding feature for this cluster.
477 478 479 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 477 def global_write_forwarding_requested data[:global_write_forwarding_requested] end |
#global_write_forwarding_status ⇒ String
Specifies whether a secondary cluster in an Aurora global database has write forwarding enabled, not enabled, or is in the process of enabling it.
467 468 469 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 467 def global_write_forwarding_status data[:global_write_forwarding_status] end |
#hosted_zone_id ⇒ String
Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.
233 234 235 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 233 def hosted_zone_id data[:hosted_zone_id] end |
#http_endpoint_enabled ⇒ Boolean
A value that indicates whether the HTTP endpoint for an Aurora Serverless v1 DB cluster is enabled.
When enabled, the HTTP endpoint provides a connectionless web service API for running SQL queries on the Aurora Serverless v1 DB cluster. You can also query your database from inside the RDS console with the query editor.
For more information, see Using the Data API for Aurora Serverless v1 in the Amazon Aurora User Guide.
395 396 397 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 395 def http_endpoint_enabled data[:http_endpoint_enabled] end |
#iam_database_authentication_enabled ⇒ Boolean
A value that indicates whether the mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled.
280 281 282 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 280 def iam_database_authentication_enabled data[:iam_database_authentication_enabled] end |
#id ⇒ String Also known as: db_cluster_identifier
33 34 35 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 33 def id @id end |
#iops ⇒ Integer
The Provisioned IOPS (I/O operations per second) value.
This setting is only for non-Aurora Multi-AZ DB clusters.
509 510 511 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 509 def iops data[:iops] end |
#kms_key_id ⇒ String
If StorageEncrypted
is enabled, the Amazon Web Services KMS key
identifier for the encrypted DB cluster.
The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.
249 250 251 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 249 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.
167 168 169 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 167 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
634 635 636 637 638 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 634 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.
179 180 181 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 179 def master_username data[:master_username] end |
#members ⇒ DBInstance::Collection
2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 2614 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
2143 2144 2145 2146 2147 2148 2149 2150 2151 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 2143 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 |
#monitoring_interval ⇒ Integer
The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB cluster.
This setting is only for non-Aurora Multi-AZ DB clusters.
548 549 550 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 548 def monitoring_interval data[:monitoring_interval] end |
#monitoring_role_arn ⇒ String
The ARN for the IAM role that permits RDS to send Enhanced Monitoring metrics to Amazon CloudWatch Logs.
This setting is only for non-Aurora Multi-AZ DB clusters.
557 558 559 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 557 def monitoring_role_arn data[:monitoring_role_arn] end |
#multi_az ⇒ Boolean
Specifies whether the DB cluster has instances in multiple Availability Zones.
148 149 150 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 148 def multi_az data[:multi_az] end |
#option_groups ⇒ OptionGroup::Collection
2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 2627 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?
2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 2640 def parameter_group if data[:db_cluster_parameter_group] DBClusterParameterGroup.new( name: data[:db_cluster_parameter_group], client: @client ) else nil end end |
#pending_modified_values ⇒ Types::ClusterPendingModifiedValues
A value that specifies that changes to the DB cluster are pending. This element is only included when changes are pending. Specific changes are identified by subelements.
485 486 487 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 485 def pending_modified_values data[:pending_modified_values] end |
#percent_progress ⇒ String
Specifies the progress of the operation as a percentage.
105 106 107 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 105 def percent_progress data[:percent_progress] end |
#performance_insights_enabled ⇒ Boolean
True if Performance Insights is enabled for the DB cluster, and otherwise false.
This setting is only for non-Aurora Multi-AZ DB clusters.
566 567 568 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 566 def performance_insights_enabled data[:performance_insights_enabled] end |
#performance_insights_kms_key_id ⇒ String
The Amazon Web Services KMS key identifier for encryption of Performance Insights data.
The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.
This setting is only for non-Aurora Multi-AZ DB clusters.
578 579 580 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 578 def performance_insights_kms_key_id data[:performance_insights_kms_key_id] end |
#performance_insights_retention_period ⇒ Integer
The number of days to retain Performance Insights data. The default is 7 days. The following values are valid:
7
month * 31, where month is a number of months from 1-23
731
For example, the following values are valid:
93 (3 months * 31)
341 (11 months * 31)
589 (19 months * 31)
731
This setting is only for non-Aurora Multi-AZ DB clusters.
603 604 605 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 603 def performance_insights_retention_period data[:performance_insights_retention_period] end |
#port ⇒ Integer
Specifies the port that the database engine is listening on.
173 174 175 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 173 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
.
193 194 195 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 193 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).
200 201 202 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 200 def preferred_maintenance_window data[:preferred_maintenance_window] end |
#publicly_accessible ⇒ Boolean
Specifies the accessibility options for the DB instance.
When the DB instance is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB instance's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB instance's VPC. Access to the DB instance is ultimately controlled by the security group it uses. That public access is not permitted if the security group assigned to the DB instance doesn't permit it.
When the DB instance isn't publicly accessible, it is an internal DB instance with a DNS name that resolves to a private IP address.
For more information, see CreateDBInstance.
This setting is only for non-Aurora Multi-AZ DB clusters.
530 531 532 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 530 def publicly_accessible data[:publicly_accessible] end |
#read_replica_identifiers ⇒ Array<String>
Contains one or more identifiers of the read replicas associated with this DB cluster.
214 215 216 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 214 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 is dropped. To continue sending your read workload to other Aurora Replicas in the cluster, you can then reconnect to the reader endpoint.
135 136 137 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 135 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.
207 208 209 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 207 def replication_source_identifier data[:replication_source_identifier] end |
#restore(options = {}) ⇒ DBCluster
2533 2534 2535 2536 2537 2538 2539 2540 2541 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 2533 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 |
#scaling_configuration_info ⇒ Types::ScalingConfigurationInfo
Shows the scaling configuration for an Aurora DB cluster in
serverless
DB engine mode.
For more information, see Using Amazon Aurora Serverless v1 in the Amazon Aurora User Guide.
369 370 371 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 369 def scaling_configuration_info data[:scaling_configuration_info] end |
#serverless_v2_scaling_configuration ⇒ Types::ServerlessV2ScalingConfigurationInfo
Shows the scaling configuration for an Aurora Serverless v2 DB cluster.
For more information, see Using Amazon Aurora Serverless v2 in the Amazon Aurora User Guide.
617 618 619 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 617 def serverless_v2_scaling_configuration data[:serverless_v2_scaling_configuration] end |
#snapshots(options = {}) ⇒ DBClusterSnapshot::Collection
2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 2736 def snapshots( = {}) batches = Enumerator.new do |y| = .merge(db_cluster_identifier: @id) resp = @client.describe_db_cluster_snapshots() resp.each_page do |page| batch = [] page.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 end DBClusterSnapshot::Collection.new(batches) end |
#status ⇒ String
Specifies the current state of this DB cluster.
93 94 95 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 93 def status data[:status] end |
#storage_encrypted ⇒ Boolean
Specifies whether the DB cluster is encrypted.
239 240 241 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 239 def storage_encrypted data[:storage_encrypted] end |
#storage_type ⇒ String
The storage type associated with the DB cluster.
This setting is only for non-Aurora Multi-AZ DB clusters.
501 502 503 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 501 def storage_type data[:storage_type] end |
#subnet_group ⇒ DBSubnetGroup?
2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 2757 def subnet_group if data[:db_subnet_group] DBSubnetGroup.new( name: data[:db_subnet_group], client: @client ) else nil end end |
#tag_list ⇒ Array<Types::Tag>
A list of tags. For more information, see Tagging Amazon RDS Resources in the Amazon RDS User Guide.
459 460 461 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 459 def tag_list data[:tag_list] end |
#vpc_security_groups ⇒ Array<Types::VpcSecurityGroupMembership>
Provides a list of VPC security groups that the DB cluster belongs to.
226 227 228 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 226 def vpc_security_groups data[:vpc_security_groups] end |
#wait_until(options = {}) {|resource| ... } ⇒ Resource
Use [Aws::RDS::Client] #wait_until instead
The waiting operation is performed on a copy. The original resource remains unchanged.
Waiter polls an API operation until a resource enters a desired state.
Basic Usage
Waiter will polls until it is successful, it fails by entering a terminal state, or until a maximum number of attempts are made.
# polls in a loop until condition is true
resource.wait_until() {|resource| condition}
Example
instance.wait_until(max_attempts:10, delay:5) do |instance|
instance.state.name == 'running'
end
Configuration
You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. The waiting condition is set by passing a block to #wait_until:
# poll for ~25 seconds
resource.wait_until(max_attempts:5,delay:5) {|resource|...}
Callbacks
You can be notified before each polling attempt and before each
delay. If you throw :success
or :failure
from these callbacks,
it will terminate the waiter.
started_at = Time.now
# poll for 1 hour, instead of a number of attempts
proc = Proc.new do |attempts, response|
throw :failure if Time.now - started_at > 3600
end
# disable max attempts
instance.wait_until(before_wait:proc, max_attempts:nil) {...}
Handling Errors
When a waiter is successful, it returns the Resource. When a waiter fails, it raises an error.
begin
resource.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
# resource did not enter the desired state in time
end
attempts attempt in seconds invoked before each attempt invoked before each wait
736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 |
# File 'gems/aws-sdk-rds/lib/aws-sdk-rds/db_cluster.rb', line 736 def wait_until( = {}, &block) self_copy = self.dup attempts = 0 [:max_attempts] = 10 unless .key?(:max_attempts) [:delay] ||= 10 [:poller] = Proc.new do attempts += 1 if block.call(self_copy) [:success, self_copy] else self_copy.reload unless attempts == [:max_attempts] :retry end end Aws::Waiters::Waiter.new().wait({}) end |