0% found this document useful (0 votes)
61 views

Training AWS - Module 8 - RDS, Aurora, ElastiCache

This training module covers AWS database services including RDS, Aurora and ElastiCache. It provides overviews of each service and their key features such as RDS providing a managed SQL database, Aurora being a proprietary high performance database, and ElastiCache providing in-memory caching. The module also details concepts like RDS backups, read replicas, security and networking configuration.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
61 views

Training AWS - Module 8 - RDS, Aurora, ElastiCache

This training module covers AWS database services including RDS, Aurora and ElastiCache. It provides overviews of each service and their key features such as RDS providing a managed SQL database, Aurora being a proprietary high performance database, and ElastiCache providing in-memory caching. The module also details concepts like RDS backups, read replicas, security and networking configuration.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 33

Training Course

Amazon Web Service

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 1


Module 8:

AWS Fundamentals
RDS, Aurora, ElastiCache

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 2


Module 8: RDS, Aurora, ElastiCache

 Goal: Understanding Database in AWS


 RDS
 Aurora
 ElastiCache
Lab: Create and configuring database

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 3


Module 8: RDS, Aurora, ElastiCache

AWS RDS Overview

• RDS stands for Relational Database Service


• It’s a managed DB service for DB use SQL as a query language
• It allows you to create databases in the cloud that are managed by AWS
• Postgre
• MySQL
• MariaDB
• Oracle
• Microsoft SQL Server
• Aurora (AWS Proprietary database)

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 4


Module 8: RDS, Aurora, ElastiCache

Advantage over using RDS versus deploying DB on EC2

• RDS is a managed service:


• Automated provisioning, OS patching
• Coninuous backups and restore to specific timestamp (Point in Time Restore)!
• Monitoring dashboards
• Read replicas for improved read performance
• Multi AZ setup for DR (Disaster Recovery)
• Maintenance windows for upgrades
• Scaling capability (Vertical and horizontal)
• Storage backed by EBS (gp2 or io1)
• BUT you can’t SSH into your instances

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 5


Module 8: RDS, Aurora, ElastiCache

RDS Backups

• Backups are automatically enabled in RDS


• Automated backups:
• Daily full backup of the database (during the maintenance window)
• Transaction logs are backed-up by RDS every 5 minutes -> ability to restore to any
point in time (from oldest backup to 5 minutes ago)
• 7 days retention (can be increased to 35 days)
• DB Snapshots:
• Manually triggerd by the user
• Retention of backup for as long as you want

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 6


Module 8: RDS, Aurora, ElastiCache

RDS – Storage Auto Scaling

• Helps you increase storage on your RDS DB


instance dynamically
• When RDS detects you are running out of free
database storage, it scales automatically
• Avoid manual scaling your database storage
• You have to set Maximum Storage Threhold
(maximum limit for DB storage)
• Useful for applications with unpredictable
workloads
• Supports all RDS database engines (MariaDB,
MySQL, PostgreSQL, SQL Server, Oracle)

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 7


Module 8: RDS, Aurora, ElastiCache

RDS Read Replicas for read


scalability

• Up to 5 Read Replicas
• Within AZ, Cross AZ or Cross
Region
• Replication is ASYNC, so reads are
eventually consistent
• Replicas can be promoted to their
own DB
• Applications must update the
connection string to leverage read
replicas

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 8


Module 8: RDS, Aurora, ElastiCache

RDS Read Replicas – Use Cases


• You have a production database that is
taking on normal load
• You want to run a reporting application
to run some analytics
• You create a Read Replica to run the
new workload there
• The production application is
unaffected
• Read replicas are used for SELECT
(=read) only kind of statements (not
INSERT, UPDATE, DELETE)

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 9


Module 8: RDS, Aurora, ElastiCache

RDS Read Replicas – Network Cost


• In AWS there’s a network cost when data goes from one AZ to another
• For RDS Read Replicas within the same region, you don’t pay that fee

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 10


Module 8: RDS, Aurora, ElastiCache

RDS Multi AZ (Disaster Recovery)


• SYNC replication
• One DNS name – automatic app failover to
standby
• Increase availability
• Failover in case of loss of AZ, loss of
network, instance or storage failure
• No manual intervention in apps
• Multi-AZ replication is free
• Note: The Read Replicas be setup as Multi
AZ for Disaster Recovery (DR)

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 11


Module 8: RDS, Aurora, ElastiCache

RDS – From Single AZ to Multi AZ


• Zero downtime operation (no need to
stop the DB)
• Just click on “modify” for the database
• The following happens internally
• A snapshot is taken
• A new DB is restored from the snapshot in a
new AZ
• Synchronization is established between the two
databases

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 12


Module 8: RDS, Aurora, ElastiCache

RDS Security - Encryption


• At rest encryption
• Possibility to encrypt the master & read replicas with AWS KMS – AES-256
encryption
• Encryption has to be defined at launch time
• If the master is not encrypted, the read replicas cannot be encrypted
• Transparent Data Encryption (TDE) available for Oracle and SQL Server
• In-flight encryption
• SSL certificates to encrypt data to RDS in flight
• Provide SSL options with trust certificate when connecting to database
• To enforce SSL:
• PostgreSQL: rds.force_ssl= 1 in the AWS RDS Console (Parameter Groups_
• MySQL: Within the DB: GRANT USAGE ON *.* TO ‘mysqluser’@’%’ REQUIRE SSL

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 13


Module 8: RDS, Aurora, ElastiCache

RDS Encryption Operation


• Encrypting RDS backups
• Snapshots of un-encrypted RDS databases are un-encrypted
• Snapshot of encrypted RDS databases are encypted
• Can copy a snapshot into an encrypted one
• To encrypt an un-encrypted RDS database
• Create a snapshot of the un-encrypted database
• Copy the snapshot and enable encryption for the snapshot
• Restore the database from the encrypted snapshot
• Migrate applications to the new database, and delete the old database

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 14


Module 8: RDS, Aurora, ElastiCache

RDS Security – Network & IAM


• Network Security
• RDS databases are usually deployed within a private subnet, not in a public one
• RDS security works by leveraging security groups (the same concept as for EC2
instances) – it controls which IP / security group can communicate with RDS
• Access Management
• IAM policies help control who can manage AWS RDS (through the RDS API)
• Traditional Username and Password can be used to login into the database
• IAM-based authentication can be used to login into RDS MySQL & PostgreSQL

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 15


Module 8: RDS, Aurora, ElastiCache

RDS – IAM Authentication


• IAM database authentication works with
MySQL and PostgreSQL
• You don’t need a password, just an
authentication token obtained through IAM &
RDS API calls
• Authe token has a lifetime of 15 minutes

• Benefits:
• Network in/out must be encrypted using SSL
• IAM to centrally manage users instead of DB
• Can leverage IAM Roles and EC2 Instance profiles
for easy integration

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 16


Module 8: RDS, Aurora, ElastiCache

RDS Security - Summary


• Encryption at rest
• Is done only when you first create the DB instance
• Or: unencrypted DB -> snapshot -> copy snapshot as encrypted -> create DB from snapshot
• Your responsibility
• Check the ports/ IP/ security group inbound rules in DB’s SG
• In-database user creation and permissions or manage through IAM
• Creating a database with or without public access
• Ensure parameter groups or DB is configured to only allow SSL connections
• AWS responsibility
• No SSH access
• No manual DB patching
• No manual OS patching
• No way to audit the underlying instance

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 17


Module 8: RDS, Aurora, ElastiCache

Amazon Aurora

• Aurora is a proprietary technology from AWS (not open source)


• Postgres and MySQL are both supported as Aurora DB (that means your
drivers will work as if Aurora was a Postgres or MySQL database)
• Aurora is “AWS cloud optimized” and claims 5x performance
improvement over MySQL on RDS, over 3x the performance of Postgres
on RDS
• Aurora storage automatically grows in increments of 10GB, up to 64 TB
• Aurora can have 15 replicas while MySQL has 5, and the replication
process is faster
• Failover in Aurora is instantaneous. It’s HA native
• Aurora costs more than RDS (20% more) – but it more efficient

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 18


Module 8: RDS, Aurora, ElastiCache

Amazon Aurora Cluster

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 19


Module 8: RDS, Aurora, ElastiCache

Features of Aurora

• Automatic fail-over
• Backup and Recovery
• Isolation and security
• Industry compliance
• Push-button scaling
• Automated Patching with Zero Downtime
• Advaced Monitoring
• Routine Maintenance
• Backtrack: restore data at any point of time without using backups

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 20


Module 8: RDS, Aurora, ElastiCache

Aurora Security

• Similar to RDS because uses the same engines


• Encryption at rest using KMS
• Automated backups, snapshots and replicas are also encrypted
• Encryption in flight using SSL (same process as MySQL or Postgres)
• Possibility to authenticate using IAM token (same method as RDS)
• You are responsible for protecting the instance with security groups
• You can’t SSH

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 21


Module 8: RDS, Aurora, ElastiCache

Aurora Replicas – Auto Scaling

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 22


Module 8: RDS, Aurora, ElastiCache

Aurora – Custom Endpoints


• Define a subset of Aurora Instances as a Custom Endpoint
• Example: Run analytical queries on specific replicas
• The reader: Endpoint is generally not used defining Custom Endpoint

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 23


Module 8: RDS, Aurora, ElastiCache

Aurora Multi-Master
• In case you want immediate failover for write node (HA)
• Every node does R/W – vs promoting a RR as the new master

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 24


Module 8: RDS, Aurora, ElastiCache

Global Aurora
• Aurora Cross Region Read Replicas
• Useful for disaster recovery
• Simple to put in place
• Aurora Global Database (recommend)
• I Primary Region (read/write)
• Up to 5 secondary (Read-only) regions, replication lag is less
than 1 second
• Up to 16 Read Replicas per secondary region
• Helps for decreasing latency
• Promoting another region (for disaster recovery) has an RTO of
< 1 minute

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 25


Module 8: RDS, Aurora, ElastiCache

Amazon ElastiCache Overview

• The same way RDS is to get managed Relational Databases


• ElastiCache is to get managed Redis or Memcached
• Caches are in-memory databases with really high performance, low latency
• Helps reduce load off of databases for read intensive workloads
• Helps make your application stateless
• AWS takes care of OS maintenance / patching, optimizations, setup
configuration, monitoring, failure recovery and backups
• Using ElastiCache involves heavy application code changes

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 26


Module 8: RDS, Aurora, ElastiCache

ElastiCache Solution Architecture


– DB Cache

• Applications queries ElastiCache, if not


available, get froup RDS and store in
ElastiCache
• Helps relieve load in RDS
• Cache must have an invalidation strategy to
make sure only the most current data is used
in there

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 27


Module 8: RDS, Aurora, ElastiCache

ElastiCache Solution Architecture


– User Session Store

• User logs into any of the application


• The application writes the session data into
ElastiCache
• The user hits another instance of our
application
• The instance retrieves the data and the user
is already logged in

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 28


Module 8: RDS, Aurora, ElastiCache

ElastiCache – Redis vs Memcached

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 29


Module 8: RDS, Aurora, ElastiCache

ElastiCache – Cache Security

• All cached in ElastiCache


• Do not support IAM authentication
• IAM policies on ElastiCache are only used for AWS API-
level security
• Redis AUTH
• You can set a “password/token” when you create a Redis
cluster
• This is an extra level of security for your cache (on top of
security groups)
• Support SSL in flight encryption
• Memcached
• Supports SASL-based authentication (advanced)

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 30


Module 8: RDS, Aurora, ElastiCache

Patterns for ElastiCache

• Lazy Loading: all the read data is


cached, data can become stale in
cache
• Write Through: Adds or update data in
the cache when written to a DB (no
stale data)
• Session Store: store temporary
session data in a cache (using TTL
features)

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 31


Module 8: RDS, Aurora, ElastiCache

ElastiCache – Redis Use Case

• Gaming Leaderboards are computationally complex


• Redis Sorted set guarantee both uniqueness and element ordering
• Each time a new element added, it’s ranked in real time, then added in
correct order

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 32


Module 4: Storage and Archiving in AWS

Thank you!!!

8/9/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 33

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy