High availability for IP-based Applications Flashcards
how to make an application like this highly available and fault tolerant?
- Use an EIP;
- Understand why auto scaling will not work
- create a standby instances in other availability zones
- increase instance size to scale.
RDS Multi-AZ Failover
provisions and maintains a standby replica in a different AZ
The primary synchronously replicates to the standby instance for redundancy
can reduce downtime in the event of a failure on the primary
Replication
- feature can be turned on from the console or API
- amazon automatically handles replication
- the primary instance synchronously replicates to the standby instance for redundancy
- Replication can cause higher write and commit latency
- Using provisioned IOPD is recommended.
Other benefits of replication – Patching
patch the standby instance first; failover to the standby instance once the patching is done; patch the primary.
Other benefits of replication – Backups
We can eliminate IO locking and minimize latency spikes
create backups from the standby instance.
what can trigger a failover?
- Loss of availability in the primary az
- loss of network connectivity to the primary instance
- resource failure with the underlying virtualized resources
- storage failure on the primary database
- the db instance’s server type is changed
- Software/OS patching
- a manual reboot with failover was initiated.
what does not cause a failover?
Responses slow down
corrupted data
How do failovers work?
automated by AWS
- Amazon detects an issue and starts the failover process
- DNS records are modified to point to the standby instance
- The application re-establishes any existing DB connections
How do we know when a failover happens?
- Use RDS events to notify via email or SMS
- Use the API or console to manually check events
- Use the API or console to check the state of the Multi-AZ deployment.
Bastion Hosts
- -“gate” that protects our infrastructure but allows access for updates or other management
- Used to control remote access
- for inbound traffic exposed to the internet
- these should be hardened and secured very carefully and regularly
- can have an Elastic IP address that never changes and can be whitelisted.
- We can have standby Bastion Hosts for higher availability