SlideShare uma empresa Scribd logo
1 de 31
Baixar para ler offline
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 1
Training Course
Amazon Web Service
Day Content Lab
Day 1 System Operations on AWS
Day 2 Computing on AWS X
Day 3 Networking on AWS X
Day 4 Storage in AWS (EBS, EFS, Instance Store) X
Day 5 Elastic Load Balancing & Auto Scaling Group X
Day 6 Storage S3 in AWS X
Day 7 Route 53 X
Day 8 RDS, Aurora, ElastiCache X
Day 9 CloudWatch X
Author: Bui Quang Lam
Phone/Zalo: +84.0365.635.598
Mail: buiquanglam185@gmail.com
 Goal: Understanding Database in AWS
 RDS
 Aurora
 ElastiCache
Lab: Create and configuring database
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 2
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)
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 3
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 4
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 5
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)
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 6
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 7
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)
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 8
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 9
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)
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 10
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 11
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 12
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 13
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 14
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 15
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 16
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 17
Module 8: RDS, Aurora, ElastiCache
Amazon Aurora Cluster
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 18
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 19
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 20
Module 8: RDS, Aurora, ElastiCache
Aurora Replicas – Auto Scaling
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 21
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 22
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 23
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 24
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 25
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 26
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 27
Module 8: RDS, Aurora, ElastiCache
ElastiCache – Redis vs Memcached
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 28
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)
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 29
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)
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 30
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
AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 31
Module 8: RDS, Aurora, ElastiCache

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Uses and Best Practices for Amazon Redshift
Uses and Best Practices for Amazon Redshift Uses and Best Practices for Amazon Redshift
Uses and Best Practices for Amazon Redshift
 
Deep Dive on PostgreSQL Databases on Amazon RDS (DAT324) - AWS re:Invent 2018
Deep Dive on PostgreSQL Databases on Amazon RDS (DAT324) - AWS re:Invent 2018Deep Dive on PostgreSQL Databases on Amazon RDS (DAT324) - AWS re:Invent 2018
Deep Dive on PostgreSQL Databases on Amazon RDS (DAT324) - AWS re:Invent 2018
 
Getting Strated with Amazon Dynamo DB (Jim Scharf) - AWS DB Day
Getting Strated with Amazon Dynamo DB (Jim Scharf) - AWS DB DayGetting Strated with Amazon Dynamo DB (Jim Scharf) - AWS DB Day
Getting Strated with Amazon Dynamo DB (Jim Scharf) - AWS DB Day
 
Deep Dive on Amazon Aurora
Deep Dive on Amazon AuroraDeep Dive on Amazon Aurora
Deep Dive on Amazon Aurora
 
AWS Big Data Platform
AWS Big Data PlatformAWS Big Data Platform
AWS Big Data Platform
 
No Hassle NoSQL - Amazon DynamoDB & Amazon DocumentDB | AWS Summit Tel Aviv ...
 No Hassle NoSQL - Amazon DynamoDB & Amazon DocumentDB | AWS Summit Tel Aviv ... No Hassle NoSQL - Amazon DynamoDB & Amazon DocumentDB | AWS Summit Tel Aviv ...
No Hassle NoSQL - Amazon DynamoDB & Amazon DocumentDB | AWS Summit Tel Aviv ...
 
Introduction to Amazon DynamoDB
Introduction to Amazon DynamoDBIntroduction to Amazon DynamoDB
Introduction to Amazon DynamoDB
 
Amazon RDS 살펴보기 (김용우) - AWS 웨비나 시리즈
Amazon RDS 살펴보기 (김용우) - AWS 웨비나 시리즈 Amazon RDS 살펴보기 (김용우) - AWS 웨비나 시리즈
Amazon RDS 살펴보기 (김용우) - AWS 웨비나 시리즈
 
Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나
Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나
Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나
 
AWS Solution Architect Associate Report
AWS Solution Architect Associate ReportAWS Solution Architect Associate Report
AWS Solution Architect Associate Report
 
Introduction to Amazon Relational Database Service (Amazon RDS)
Introduction to Amazon Relational Database Service (Amazon RDS)Introduction to Amazon Relational Database Service (Amazon RDS)
Introduction to Amazon Relational Database Service (Amazon RDS)
 
Introduction to Amazon Aurora
Introduction to Amazon AuroraIntroduction to Amazon Aurora
Introduction to Amazon Aurora
 
워크로드 특성에 따른 안전하고 효율적인 Data Lake 운영 방안
워크로드 특성에 따른 안전하고 효율적인 Data Lake 운영 방안워크로드 특성에 따른 안전하고 효율적인 Data Lake 운영 방안
워크로드 특성에 따른 안전하고 효율적인 Data Lake 운영 방안
 
AWS Lake Formation Deep Dive
AWS Lake Formation Deep DiveAWS Lake Formation Deep Dive
AWS Lake Formation Deep Dive
 
Dynamodb Presentation
Dynamodb PresentationDynamodb Presentation
Dynamodb Presentation
 
HDInsight for Architects
HDInsight for ArchitectsHDInsight for Architects
HDInsight for Architects
 
Dynamodb ppt
Dynamodb pptDynamodb ppt
Dynamodb ppt
 
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
 
AWS Snowball
AWS SnowballAWS Snowball
AWS Snowball
 
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교
 

Semelhante a Training AWS: Module 8 - RDS, Aurora, ElastiCache

Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWSMigrating enterprise workloads to AWS
Migrating enterprise workloads to AWS
Tom Laszewski
 
Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWS Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWS
Tom Laszewski
 
T1 – Architecting highly available applications on aws
T1 – Architecting highly available applications on awsT1 – Architecting highly available applications on aws
T1 – Architecting highly available applications on aws
Amazon Web Services
 

Semelhante a Training AWS: Module 8 - RDS, Aurora, ElastiCache (20)

Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWSMigrating enterprise workloads to AWS
Migrating enterprise workloads to AWS
 
Amazon Relational Database Service (Amazon RDS)
Amazon Relational Database Service (Amazon RDS)Amazon Relational Database Service (Amazon RDS)
Amazon Relational Database Service (Amazon RDS)
 
Oracle Solutions on AWS : May 2014
Oracle Solutions on AWS : May 2014Oracle Solutions on AWS : May 2014
Oracle Solutions on AWS : May 2014
 
AWS Webcast - Backup & Restore for ElastiCache/Redis: Getting Started & Best ...
AWS Webcast - Backup & Restore for ElastiCache/Redis: Getting Started & Best ...AWS Webcast - Backup & Restore for ElastiCache/Redis: Getting Started & Best ...
AWS Webcast - Backup & Restore for ElastiCache/Redis: Getting Started & Best ...
 
AWS re:Invent 2016: Deep Dive on Amazon Relational Database Service (DAT305)
AWS re:Invent 2016: Deep Dive on Amazon Relational Database Service (DAT305)AWS re:Invent 2016: Deep Dive on Amazon Relational Database Service (DAT305)
AWS re:Invent 2016: Deep Dive on Amazon Relational Database Service (DAT305)
 
Scaling the Platform for Your Startup
Scaling the Platform for Your StartupScaling the Platform for Your Startup
Scaling the Platform for Your Startup
 
AWS Certified Cloud Practitioner Course S11-S17
AWS Certified Cloud Practitioner Course S11-S17AWS Certified Cloud Practitioner Course S11-S17
AWS Certified Cloud Practitioner Course S11-S17
 
AWS Webcast - Introduction to Amazon RDS: Low Admin, High Performance Databas...
AWS Webcast - Introduction to Amazon RDS: Low Admin, High Performance Databas...AWS Webcast - Introduction to Amazon RDS: Low Admin, High Performance Databas...
AWS Webcast - Introduction to Amazon RDS: Low Admin, High Performance Databas...
 
AWS Webcast - AWS Webinar Series for Education #3 - Discover the Ease of AWS ...
AWS Webcast - AWS Webinar Series for Education #3 - Discover the Ease of AWS ...AWS Webcast - AWS Webinar Series for Education #3 - Discover the Ease of AWS ...
AWS Webcast - AWS Webinar Series for Education #3 - Discover the Ease of AWS ...
 
002 AWSSlides.pdf
002 AWSSlides.pdf002 AWSSlides.pdf
002 AWSSlides.pdf
 
Create cloud service on AWS
Create cloud service on AWSCreate cloud service on AWS
Create cloud service on AWS
 
AWS Webcast - Website Hosting in the Cloud
AWS Webcast - Website Hosting in the CloudAWS Webcast - Website Hosting in the Cloud
AWS Webcast - Website Hosting in the Cloud
 
AWS Webcast - Build Agile Applications in AWS Cloud
AWS Webcast - Build Agile Applications in AWS CloudAWS Webcast - Build Agile Applications in AWS Cloud
AWS Webcast - Build Agile Applications in AWS Cloud
 
Scaling horizontally on AWS
Scaling horizontally on AWSScaling horizontally on AWS
Scaling horizontally on AWS
 
Brief theoretical overview on AWS Components
Brief theoretical overview on AWS ComponentsBrief theoretical overview on AWS Components
Brief theoretical overview on AWS Components
 
Introduction to Amazon Relational Database Service
Introduction to Amazon Relational Database ServiceIntroduction to Amazon Relational Database Service
Introduction to Amazon Relational Database Service
 
Running SQL Server on AWS | John McCormack | DataGrillen 2019
Running SQL Server on AWS | John McCormack | DataGrillen 2019Running SQL Server on AWS | John McCormack | DataGrillen 2019
Running SQL Server on AWS | John McCormack | DataGrillen 2019
 
Scaling the Platform for Your Startup
Scaling the Platform for Your StartupScaling the Platform for Your Startup
Scaling the Platform for Your Startup
 
Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWS Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWS
 
T1 – Architecting highly available applications on aws
T1 – Architecting highly available applications on awsT1 – Architecting highly available applications on aws
T1 – Architecting highly available applications on aws
 

Mais de Bùi Quang Lâm

Mais de Bùi Quang Lâm (9)

Linux Day2
Linux Day2Linux Day2
Linux Day2
 
Linux Day1
Linux Day1Linux Day1
Linux Day1
 
Training AWS: Module 9 - CloudWatch
Training AWS: Module 9 - CloudWatchTraining AWS: Module 9 - CloudWatch
Training AWS: Module 9 - CloudWatch
 
Training AWS: Module 6 - Storage S3 in AWS
Training AWS: Module 6 - Storage S3 in AWSTraining AWS: Module 6 - Storage S3 in AWS
Training AWS: Module 6 - Storage S3 in AWS
 
Training AWS: Module 5 - Elastic Load Balancing & ASG
Training AWS: Module 5 - Elastic Load Balancing & ASGTraining AWS: Module 5 - Elastic Load Balancing & ASG
Training AWS: Module 5 - Elastic Load Balancing & ASG
 
Training AWS: Module 4 - Storage in AWS
Training AWS: Module 4 - Storage in AWSTraining AWS: Module 4 - Storage in AWS
Training AWS: Module 4 - Storage in AWS
 
Training AWS: Module 3 - Networking in AWS
Training AWS: Module 3 - Networking in AWSTraining AWS: Module 3 - Networking in AWS
Training AWS: Module 3 - Networking in AWS
 
Training AWS: Module 2 - Computing in AWS
Training AWS: Module 2 - Computing in AWSTraining AWS: Module 2 - Computing in AWS
Training AWS: Module 2 - Computing in AWS
 
Training AWS: Module 1 - System Operation in AWS
Training AWS: Module 1 - System Operation in AWSTraining AWS: Module 1 - System Operation in AWS
Training AWS: Module 1 - System Operation in AWS
 

Último

Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night StandCall Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
dollysharma2066
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Christo Ananth
 
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
ankushspencer015
 

Último (20)

VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
 
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night StandCall Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 
Unit 1 - Soil Classification and Compaction.pdf
Unit 1 - Soil Classification and Compaction.pdfUnit 1 - Soil Classification and Compaction.pdf
Unit 1 - Soil Classification and Compaction.pdf
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . ppt
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
 
Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01
 

Training AWS: Module 8 - RDS, Aurora, ElastiCache

  • 1. AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 1 Training Course Amazon Web Service Day Content Lab Day 1 System Operations on AWS Day 2 Computing on AWS X Day 3 Networking on AWS X Day 4 Storage in AWS (EBS, EFS, Instance Store) X Day 5 Elastic Load Balancing & Auto Scaling Group X Day 6 Storage S3 in AWS X Day 7 Route 53 X Day 8 RDS, Aurora, ElastiCache X Day 9 CloudWatch X Author: Bui Quang Lam Phone/Zalo: +84.0365.635.598 Mail: buiquanglam185@gmail.com
  • 2.  Goal: Understanding Database in AWS  RDS  Aurora  ElastiCache Lab: Create and configuring database AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 2 Module 8: RDS, Aurora, ElastiCache
  • 3. 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) AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 3 Module 8: RDS, Aurora, ElastiCache
  • 4. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 4 Module 8: RDS, Aurora, ElastiCache
  • 5. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 5 Module 8: RDS, Aurora, ElastiCache
  • 6. 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) AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 6 Module 8: RDS, Aurora, ElastiCache
  • 7. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 7 Module 8: RDS, Aurora, ElastiCache
  • 8. 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) AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 8 Module 8: RDS, Aurora, ElastiCache
  • 9. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 9 Module 8: RDS, Aurora, ElastiCache
  • 10. 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) AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 10 Module 8: RDS, Aurora, ElastiCache
  • 11. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 11 Module 8: RDS, Aurora, ElastiCache
  • 12. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 12 Module 8: RDS, Aurora, ElastiCache
  • 13. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 13 Module 8: RDS, Aurora, ElastiCache
  • 14. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 14 Module 8: RDS, Aurora, ElastiCache
  • 15. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 15 Module 8: RDS, Aurora, ElastiCache
  • 16. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 16 Module 8: RDS, Aurora, ElastiCache
  • 17. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 17 Module 8: RDS, Aurora, ElastiCache
  • 18. Amazon Aurora Cluster AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 18 Module 8: RDS, Aurora, ElastiCache
  • 19. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 19 Module 8: RDS, Aurora, ElastiCache
  • 20. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 20 Module 8: RDS, Aurora, ElastiCache
  • 21. Aurora Replicas – Auto Scaling AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 21 Module 8: RDS, Aurora, ElastiCache
  • 22. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 22 Module 8: RDS, Aurora, ElastiCache
  • 23. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 23 Module 8: RDS, Aurora, ElastiCache
  • 24. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 24 Module 8: RDS, Aurora, ElastiCache
  • 25. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 25 Module 8: RDS, Aurora, ElastiCache
  • 26. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 26 Module 8: RDS, Aurora, ElastiCache
  • 27. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 27 Module 8: RDS, Aurora, ElastiCache
  • 28. ElastiCache – Redis vs Memcached AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 28 Module 8: RDS, Aurora, ElastiCache
  • 29. 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) AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 29 Module 8: RDS, Aurora, ElastiCache
  • 30. 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) AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 30 Module 8: RDS, Aurora, ElastiCache
  • 31. 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 AWS COURSE DOCUMENT- BUI QUANG LAM - TRAINING 31 Module 8: RDS, Aurora, ElastiCache