Which AWS storage and database architecture meets the requirements of the application?

Prev Question
Next Question

A 3-tier e-commerce web application is current deployed on-premises and will be migrated to AWS for greater
scalability and elasticity The web server currently shares read-only data using a network distributed file system
The app server tier uses a clustering mechanism for discovery and shared session state that depends on IPmulticast The database tier uses shared-storage clustering to provide database fall over capability, and uses
several read slaves for scaling Data on all servers and the distributed file system directory is backed up weekly
to off-site tapes.
Which AWS storage and database architecture meets the requirements of the application?

A.
Web servers: store read-only data in S3, and copy from S3 to root volume at boot time. App servers: share
state using a combination of DynamoDB and IP unicast. Database: use RDS with multi-AZ deployment and
one or more read replicas. Backup: web servers, app servers, and database backed up weekly to Glacier
using snapshots.

B.
Web servers: store read-only data in an EC2 NFS server; mount to each web server at boot time. App
servers: share state using a combination of DynamoDB and IP multicast. Database: use RDS with multi-AZ
deployment and one or more Read Replicas. Backup: web and app servers backed up weekly via AMIs,
database backed up via DB snapshots.

C.
Web servers: store read-only data in S3, and copy from S3 to root volume at boot time. App servers: share
state using a combination of DynamoDB and IP unicast. Database: use RDS with multi-AZ deployment and
one or more Read Replicas. Backup: web and app servers backed up weekly via AMIs, database backed
up via DB snapshots.

D.
Web servers: store read-only data in S3, and copy from S3 to root volume at boot time. App servers: share
state using a combination of DynamoDB and IP unicast. Database: use RDS with multi-AZ deployment.
Backup: web and app servers backed up weekly via AMIs, database backed up via DB snapshots.

Explanation:
Amazon RDS Multi-AZ deployments provide enhanced availability and durability for Database (DB) Instances,
making them a natural fit for production database workloads. When you provision a Multi-AZ DB Instance,
Amazon RDS automatically creates a primary DB Instance and synchronously replicates the data to a standby
instance in a different Availability Zone (AZ). Each AZ runs on its own physically distinct, independent
infrastructure, and is engineered to be highly reliable. In case of an infrastructure failure (for example, instance
hardware failure, storage failure, or network disruption), Amazon RDS performs an automatic failover to the
standby, so that you can resume database operations as soon as the failover is complete. Since the endpoint
for your DB Instance remains the same after a failover, your application can resume database operation without
the need for manual administrative intervention.
Benefits
Enhanced Durability
Multi-AZ deployments for the MySQL, Oracle, and PostgreSQL engines utilize synchronous physical replication
to keep data on the standby up-to-date with the primary. Multi-AZ deployments for the SQL Server engine use
synchronous logical replication to achieve the same result, employing SQL Server-native Mirroring technology.
Both approaches safeguard your data in the event of a DB Instance failure or loss of an Availability Zone.
If a storage volume on your primary fails in a Multi-AZ deployment, Amazon RDS automatically initiates a
failover to the up-to-date standby. Compare this to a Single-AZ deployment: in case of a Single-AZ database
failure, a user-initiated point-in-time-restore operation will be required. This operation can take several hours to
complete, and any data updates that occurred after the latest restorable time (typically within the last five
minutes) will not be available.
Amazon Aurora employs a highly durable, SSD-backed virtualized storage layer purpose-built for database
workloads. Amazon Aurora automatically replicates your volume six ways, across three Availability Zones.
Amazon Aurora storage is fault-tolerant, transparently handling the loss of up to two copies of data without
affecting database write availability and up to three copies without affecting read availability. Amazon Aurora
storage is also self-healing. Data blocks and disks are continuously scanned for errors and replaced
automatically.
Increased Availability
You also benefit from enhanced database availability when running Multi-AZ deployments. If an Availability
Zone failure or DB Instance failure occurs, your availability impact is limited to the time automatic failover takes
to complete: typically under one minute for Amazon Aurora and one to two minutes for other database engines
(see the RDS FAQ for details).The availability benefits of Multi-AZ deployments also extend to planned maintenance and backups. In the case
of system upgrades like OS patching or DB Instance scaling, these operations are applied first on the standby,
prior to the automatic failover. As a result, your availability impact is, again, only the time required for automatic
failover to complete.
Unlike Single-AZ deployments, I/O activity is not suspended on your primary during backup for Multi-AZ
deployments for the MySQL, Oracle, and PostgreSQL engines, because the backup is taken from the standby.
However, note that you may still experience elevated latencies for a few minutes during backups for Multi-AZ
deployments.
On instance failure in Amazon Aurora deployments, Amazon RDS uses RDS Multi-AZ technology to automate
failover to one of up to 15 Amazon Aurora Replicas you have created in any of three Availability Zones. If no
Amazon Aurora Replicas have been provisioned, in the case of a failure, Amazon RDS will attempt to create a
new Amazon Aurora DB instance for you automatically.
No Administrative Intervention
DB Instance failover is fully automatic and requires no administrative intervention. Amazon RDS monitors the
health of your primary and standbys, and initiates a failover automatically in response to a variety of failure
conditions.
Failover conditions
Amazon RDS detects and automatically recovers from the most common failure scenarios for Multi-AZ
deployments so that you can resume database operations as quickly as possible without administrative
intervention. Amazon RDS automatically performs a failover in the event of any of the following:
Loss of availability in primary Availability Zone
Loss of network connectivity to primary
Compute unit failure on primary
Storage failure on primary
Note: When operations such as DB Instance scaling or system upgrades like OS patching are initiated for MultiAZ deployments, for enhanced availability, they are applied first on the standby prior to an automatic failover.
As a result, your availability impact is limited only to the time required for automatic failover to complete. Note
that Amazon RDS Multi-AZ deployments do not failover automatically in response to database operations such
as long running queries, deadlocks or database corruption errors.

Prev Question
Next Question

Leave a Reply

Your email address will not be published. Required fields are marked *