phpnw14 - getting started with aws
TRANSCRIPT
Getting Started With Amazon Web Services
Sunday, 5 July 15
Ben Waine
• Worked With PHP For 5 Years
• Worked With AWS for 3 Years
• Software / Infrastructure ‘Gun For Hire’
Sunday, 5 July 15
Signed Up For AWS? - http://aws.amazon.com/free/
Sunday, 5 July 15
Todays Roadmap
1. Working With EC22. Automating With Cloud Formation3. Creating A Cloud Front Distribution4. Lessons Learnt In The Cloud
5.RDS - Relational Database Service6. IAM - Mutli user management7. The PHP SDK
Critical
Extension
Sunday, 5 July 15
1.Use the AWS management console to create a new IAM account.
http://aws.amazon.com/console/
Exercise 1:Creating An IAM User
Sunday, 5 July 15
1. Produce an infrastructure capable of hosting a traditional php web application.
2. Components: Webserver, database, CDN
3. The design should be resilient to failure
4. The design should be secure
Infrastructure Goals
Sunday, 5 July 15
1. Build a simple architecture in the management console.
2. Install a ‘hello world’ application on a webserver
3. Use Cloud Former to create a Cloud Formation template
4. Use Cloud Formation to create a new stack
Exercise 2: Building The Basics
Sunday, 5 July 15
1. Produce an infrastructure capable of hosting a traditional php web application.
2. Components: Webserver, database, CDN
3. The design should be resilient to failure
4. The design should be secure
Infrastructure Goals
Sunday, 5 July 15
1. Produce an infrastructure capable of hosting a traditional php web application.
2. Components: Webserver, database, CDN
3. The design should be resilient to failure
4. The design should be secure
Infrastructure Goals
Sunday, 5 July 15
1.Add another subnet in another availability zone
2. Swap the single web server for an autoscaling group of servers, spanning two availability zones
3. Add a load balancer
Exercise 3: Availability & Redundancy
Sunday, 5 July 15
1. Produce an infrastructure capable of hosting a traditional php web application.
2. Components: Webserver, database, CDN
3. The design should be resilient to failure
4. The design should be secure
Infrastructure Goals
Sunday, 5 July 15
1. Create two private subnets
2. Create a new autoscaling web group which launches into the private subnets
3. Create a ‘Bastion’ host and security group
4. Update the webserver security group
Exercise 4: Security
Sunday, 5 July 15
1. Produce an infrastructure capable of hosting a traditional php web application.
2. Components: Webserver, database, CDN
3. The design should be resilient to failure
4. The design should be secure
Infrastructure Goals
Sunday, 5 July 15
1. Add an additional database security group
2.Create an RDS subnet group
3. Launch An RDS database
Exercise 5:Create An RDS Database
Sunday, 5 July 15
1. Produce an infrastructure capable of hosting a traditional php web application.
2. Components: Webserver, database, CDN
3. The design should be resilient to failure
4. The design should be secure
Infrastructure Goals
Sunday, 5 July 15
1. Create an S3 Bucket
2. Modify the buckets access rights
3. Create a cloud front distribution backed by the bucket
Exercise 6:Create A Cloud Front
Distribution
Sunday, 5 July 15
1. Produce an infrastructure capable of hosting a traditional php web application.
2. Components: Webserver, database, CDN
3. The design should be resilient to failure
4. The design should be secure
Infrastructure Goals
Sunday, 5 July 15
General Tips1. Deploy In Multiple AZ’s 2. Deploy Multiple Regions3. Think Ephemeral4. Automate Everything5. Name Everything Consistently6. Invest Time in Provisioning Software7. Will Your Customers Accept Cloud?8. Are You Legally Compliant?9. Is It cost effective? 10. Reserved Instances
Sunday, 5 July 15
The PHP SDK
1. Install Using Composer2. Vast majority of features supported3. Uses Guzzle under the hood4. Use with IAM for credential-less use in production
Sunday, 5 July 15
1. Use the PHP SDK to create a command line app to upload images to S3
Exercise 7: The PHP SDK
Sunday, 5 July 15
Any running resources could eventually incur usage costs
Delete all stacks, instances, databases, IP addresses etc.
Final Exercise: Clean Up
Sunday, 5 July 15