Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP
System Development Team LeaderOct 11, 2018
Awareness of
Outline
• Gartner Magic Quadrant
• Pace of Innovation
• Certification Path
• Global Infrastructure
• Shared Responsibility Model
• General Services
• Serverless Services
• CI/CD Services
• Monitoring Services
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 2
Gartner Magic Quadrant for IaaS
Oct 11, 2018 3Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP
OEM vs ODM
Pace of Innovation
10 24 61
159
516
1017
1430
0
200
400
600
800
1000
1200
1400
1600
2006 2008 2010 2012 2014 2016 2017
AWS has launched 1,430 new features and services in 2017 only, and over 3,000 features and services since 2006
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 4
Certification Path
5Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP
Global Infrastructure
6Oct 11, 2018
Region & Number of Availability Zones
New Region (coming soon)
Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP
Global Infrastructure
7Oct 11, 2018
Region
Edge Location
Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP
Shared Responsibility Model
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 8
General Services
• Universal service
• Immediate effect
• Enable Access to AWS by Console, APIs or CLI
• Users, Groups, Roles and Policies
• Web identity federation
• Amazon Cognito
Identity and Access Management (IAM)
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 9
General Services
• Pricing models• On demand instance
• Spot instance
• Reserved instance
• Dedicated instance
• Type of instances• General purpose
• Compute optimized
• Memory optimized
• Accelerated computing
• Storage optimized
• Auto scaling
• DB on instance
• Elastic IP address Elastic Compute Cloud (EC2)
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 10
Auto Scaling DB on instance Elastic IP
General Services
• Object based storage “not bootable”
• 99.99% availability and 99.999999999% durability
• Unlimited 0 to 5 TB files stored in “Buckets”
• Universal unique namespace
• Can host a static website
• Encryption can be applied in• Server side (AES, KMS, Custom)
• In transit (SSL/TSL)
• Client side
Simple Storage Service (S3)
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 11
EBS Glacier Snowball
• Relational SQL database service
• OLTP based
• Supports• SQL Server
• Oracle
• MySQL
• Aurora
• MariaDB
• Multi AZ
• Read replicas
Relational Database Service (RDS)
General Services
• Fast and scalable data warehouse service
• OLAP based
• Data warehousing
• BI and big data
Redshift
• Managed NoSQL database service
• Low latency
• Key-value data model
• Consistency• Strong
• Eventual
• Can be cached by DAX with a write through cache
DynamoDB
• Fully managed caching service
• Memcached
• Redis
• Caching strategies:• Lazy loading
• Write through
ElasticCache
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 12
General Services
• Application load balancer• Works on OSI layer 7
• Best for HTTP/HTTPS traffic
• Can balance across web apps, web servers and containers
• Network load balancer• Works on OSI layer 4
• Best for TCP traffic
• High performance and costly solution
• VPC is service that enables the users to• logically isolate their IT infrastructure
• CloudFront• Caching and content delivery
• Represent the edge locations
• Route 53 is a DNS service that allows to map• Domain names to EC2, ELB or S3
• HTTP responses• (2xx) vs (3xx) vs (4xx) vs (5xx)
Elastic Load Balancing (ELB)
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 13
Virtual Private Cloud (VPC) CloudFront Route 53
General Services
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 14
• Free service to automatically deploy and scale the web app
• Supported stacks and technologies• Languages: Java, Python, Ruby, Go, .NET and Node.js
• Web servers: IIS, Tomcat, Passenger and Puma
• Can fully manage the EC2 including • Updates, monitoring, metrics and health checks
• Deployment strategies• All at once
• Rolling
• Rolling with additional batch
• Immutable
• Blue/Green
Elastic Beanstalk
• Free service to describe and provision all AWS infrastructure components
• By using text files (JSON or YAML) you can template and code your cloud infrastructure
CloudFormation
Sample 3-Tier Auto-Scalable Web Application Architecture
Serverless Services
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 16
Data Centers
IaaS
PaaS
Containers
ServerlessEC2 Launched in 2006
History of Cloud Computing
Serverless Services
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 17
• Serverless computing service
• Running modes
• Triggered by another services (event-driven) e.g. Change in S3
• Respond to API calls
• Scales “out” not “up”
• 1 event = 1 function, 1 function can trigger other functions → 1 event = X functions
• Can do things globally (across regions)
• X-Ray used to debug lambda
• Some limits
• 300 sec maximum execution time
• 3008 MB maximum memory allocation
Lambda
• Fully managed serverless service to build APIs that can control and manage all AWS services
• Expose HTTPS endpoints to define RESTful API
• Can be custom exposed as SOAP API
• Use API stages to manage and optimize deployments
• Use API keys to track and control usage
• Can have a custom domain
• Response can be cached for TTL
• Can create a custom API by importing a swagger file
• Can be throttled to control traffic or prevent attacks
• Monitor API request by CLoudtrail
API Gateway
Serverless Services
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 18
• Serverless distributed message queueing service
• Enhance decoupling and independence
• Pull-Based queueing service
• Queue types
• Standard queue: do the best for ordering, message delivered at least once
• FIFO queue: strictly ordered, message delivered once, no duplication
• Short Polling VS Long Polling
• Limits
• Message size: max 256 KB (use S3 for larger messages)
• Visibility timeout: 30 sec and 12 hours max
• Retention period: 4 days default and 14 days max
• Dead letter queue for unprocessed messages
Simple Queue Service (SQS)
• Serverless, scalable and high available notification service allows you to send push notifications from the cloud
• Push-Based queueing service
• Supported formats
• SMS
• SQS
• HTTP
• Subscription based with pub-sub model where users can subscribe to
• One to one topic
• One to many topic
• Dead letter queue for unprocessed messages
Simple Notification Service (SNS)
Sample IOT by Serverless Architecture
Amazon Alexa API Gateway
Lambda Function
Lambda Function
SQS Queue SNS Topic
API Gateway Raspberry PI Robocar
Synchronous Path
Asynchronous Path
CI/CD Services
• Do you know in the last few years AWS have seamlessly handed over 50 million deployments per year?
• And that equates to at least one deployment taking place every single second without any service outages
• So how do they do that?
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 20
By automating their software development process and software release process through well
implemented CI/CD practices!
CI/CD Services
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 21
Code Build Test Release Deploy
Code Build Test
Code Build Test Release
Continuous Integration
Continuous Delivery
Continuous Deployment
• Source control service based on Git
• Manage code versions
• Track code changes
• Enable collaboration
CodeCommit
CI/CD Services
• Fully managed build service
• Build code
• Run tests
• Produce packages
• Debug builds by
• CodeBuild logs
• CloudWatch
• Configued and customized by BuildSpec file (YAML)
CodeBuild
• Fully managed deployment service
• Deployment strategies
• In-Place or Rolling
• Blue/Green
• Configured and customized by AppSpec file (YAML or JSON)
CodeDeploy
• Service to automate end-to-end CI/CD process
• Based on user defined workflow
• Can be configured to auto trigger after commit
CodePipeline
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 22
Sample CI/CD Pipeline Architecture
• Monitoring and management service
• Provides data and insights about AWS resources
• Collects data in the form of• Logs
• Metrics
• Events
• Alarms
• Can be integrated with on-premises servers
CloudWatch
Monitoring Services
• Governance and operational auditing service
• Logs requests and actions taken through
• AWS console
• AWS SDKs
• CLI tools
• Services’ APIs
CloudTrail
• BI service that helps to
• Reduce cost
• Increase performance
• Improve security
• Provides
• Insights
• Guides
• Best practices
Trusted Advisor
• Debugging and troubleshooting service
• Analyze development and production environments
• Track requests travelling across AWS services
• Able to troubleshoot from a simple 3-tier application to a complex microservices application
X-Ray
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 24
Oct 11, 2018 Majd Aldeen Masriah AWS CDA, MCSD, PMI-ACP 25
Happy Weekend