• Share
  • Email
  • Embed
  • Like
  • Private Content
AWS Summit Berlin 2013 - Your first week with EC2
 

AWS Summit Berlin 2013 - Your first week with EC2

on

  • 1,226 views

Amazon Elastic Compute Cloud (Amazon EC2) provides resizable compute capacity in the cloud and is often the starting point for your first week using AWS. This session will introduce these concepts, ...

Amazon Elastic Compute Cloud (Amazon EC2) provides resizable compute capacity in the cloud and is often the starting point for your first week using AWS. This session will introduce these concepts, along with the fundamentals of EC2, by employing an agile approach that is made possible by the cloud. Attendees will experience the reality of what a first week on EC2 looks like from the perspective of someone deploying an actual application on EC2. You will follow them as they progress from deploying their entire application from an EC2 AMI on day 1 to more advanced features and patterns available in EC2 by day 5. Throughout the process we will identify cloud best practices that can be applied to your first week on EC2 and beyond.

Statistics

Views

Total Views
1,226
Views on SlideShare
1,226
Embed Views
0

Actions

Likes
0
Downloads
24
Comments
0

0 Embeds 0

No embeds

Accessibility

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    AWS Summit Berlin 2013 - Your first week with EC2 AWS Summit Berlin 2013 - Your first week with EC2 Presentation Transcript

    • Ryan Shuttleworth, Technical EvangelistYour first week with EC2(and other AWS things…)
    • things you should know/think about up frontsome best practices for getting startedessential technologies to dive into and get familiar witharchitectural principles you should immerse yourself inWhat are we going to cover?Your first 5 days with EC2…
    • hear a ‘looking back at our first year’ customer storycompressed into 5 daysWhat are we going to cover?Your first 5 days with EC2…
    • organise yourhouse1DAY
    • Users & RolesStart as you mean to go onSecure your console with IAMrolesA little time spent now will saveheadaches later
    • Users & RolesStart as you mean to go onSecure your console with IAMrolesA little time spent now will saveheadaches laterAccounts & BillingCreate a structure that makes senseDev & Test accounts vs productionConsolidated billingResource tagging
    • Master Accountaws.invoices@mycompany.com
    • Division Badmin@divisionB.comUser2Dev2Admin2IAMMaster Accountaws.invoices@mycompany.comconsolidated billing information
    • Division Badmin@divisionB.comUser2Dev2Admin2IAMTags:Own=DivProj=PTags:Own=DivProj=QTags:Own=DivProj=RMaster Accountaws.invoices@mycompany.comconsolidated billing information Tags: (key-value)e.g Own=DivProj=R
    • Operating Co. Aadmin@opcoa.comUser1Dev1Admin1IAMTags:Own=OpCoProj=ATags:Own=OpCoProj=BTags:Own=OpCoProj=CDivision Badmin@divisionB.comUser2Dev2Admin2IAMTags:Own=DivProj=PTags:Own=DivProj=QTags:Own=DivProj=RBusiness Unit Cadmin@busUnitC.comUser3Dev3Admin3IAMTags:Own=BusCProj=XTags:Own=BusCProj=YTags:Own=BusCProj=ZMaster Accountaws.invoices@mycompany.comconsolidated billing information
    • Operating Co. Aadmin@opcoa.comUser1Dev1Admin1IAMTags:Own=OpCoProj=ATags:Own=OpCoProj=BTags:Own=OpCoProj=CDivision Badmin@divisionB.comUser2Dev2Admin2IAMTags:Own=DivProj=PTags:Own=DivProj=QTags:Own=DivProj=RBusiness Unit Cadmin@busUnitC.comUser3Dev3Admin3IAMTags:Own=BusCProj=XTags:Own=BusCProj=YTags:Own=BusCProj=ZMaster Accountaws.invoices@mycompany.comconsolidated billing information
    • Master Accountaws.invoices@mycompany.comconsolidated billing informationProgrammatic billing accessS3 CSVOperating Co. Aadmin@opcoa.comUser1Dev1Admin1IAMTags:Own=OpCoProj=ATags:Own=OpCoProj=BTags:Own=OpCoProj=CDivision Badmin@divisionB.comUser2Dev2Admin2IAMTags:Own=DivProj=PTags:Own=DivProj=QTags:Own=DivProj=RBusiness Unit Cadmin@busUnitC.comUser3Dev3Admin3IAMTags:Own=BusCProj=XTags:Own=BusCProj=YTags:Own=BusCProj=Z
    • Operating Co. Aadmin@opcoa.comUser1Dev1Admin1IAMTags:Own=OpCoProj=ATags:Own=OpCoProj=BTags:Own=OpCoProj=CDivision Badmin@divisionB.comUser2Dev2Admin2IAMTags:Own=DivProj=PTags:Own=DivProj=QTags:Own=DivProj=RBusiness Unit Cadmin@busUnitC.comUser3Dev3Admin3IAMTags:Own=BusCProj=XTags:Own=BusCProj=YTags:Own=BusCProj=ZMaster Accountaws.invoices@mycompany.comconsolidated billing informationProgrammatic billing accessS3 CSV
    • Secrets & Keys
    • Secrets & KeysYour front door keys
    • Secrets & KeysYour front door keysControl access toyour instancesKey managementstrategy
    • Secrets & KeysControl access toyour APIsYour front door keysUse IAM Roles todistribute to instancesControl access toyour instancesKey managementstrategy
    • learn thebasics2DAY
    • What is EC2?Elastic capacity FlexibleComplete controlReliableInexpensiveSecure
    • Disposable compute
    • Instance
    • Instance Unit of scaleUnit of resilienceUnit of control
    • Instance Unit of scaleUnit of resilienceUnit of controlYour stack
    • InstanceInstanceInstanceInstanceUnit of scaleUnit of resilienceUnit of controlScaleout
    • InstanceInstanceInstanceInstanceUnit of scaleUnit of resilienceUnit of control
    • InstanceInstanceInstanceUnit of scaleUnit of resilienceUnit of control
    • InstanceInstanceInstanceUnit of scaleUnit of resilienceUnit of controlInstance
    • Think differentlyCompute is transient
    • ProgrammaticresourcesTreat your datacentreresources like code
    • DistributedsystemsProgrammaticresourcesDesign for decoupledsystems up frontTreat your datacentreresources like code
    • Late bindingDistributedsystemsProgrammaticresourcesDecide what it willrun on at point ofdeploymentDesign for decoupledsystems up frontTreat your datacentreresources like code
    • go wild withtools3DAY
    • ComputeStorageSecurity ScalingDatabaseNetworkingMonitoringMessagingWorkflowDNSLoad BalancingBackupCDNAccess everythingvia CLI, API orConsoleAchieve the highest levelsof automationsophistication with easeEverything is programmable
    • ec2-run-instances ami-54cf5c3d--instance-count 2--group webservers--key mykey--instance-type m1.small$>
    • >>> import boto.ec2>>> conn = boto.ec2.connect_to_region("us-east-1")>>> conn.run_instances(ami-54cf5c3d,key_name=mykey,instance_type=m1.small,security_groups=[webservers])
    • Resources created programmatically
    • Resources created programmaticallyConfigure automatically
    • Bake an AMIStart an instanceConfigure theinstanceCreate an AMI fromyour instanceStart new ones fromthe AMIBootstrapping
    • Bake an AMIStart an instanceConfigure theinstanceCreate an AMI fromyour instanceStart new ones fromthe AMIBootstrappingec2-run-instances<your ami-id>$>
    • Bake an AMI Configure dynamicallyStart an instanceConfigure theinstanceCreate an AMI fromyour instanceStart new ones fromthe AMIBootstrappingLaunch an instanceUse metadata serviceand cloud-init toperform actions oninstance when itlaunchesvsBootstrapping
    • Bake an AMIBuild your baseimages and setupcustom initialisationscriptsMaintain your ‘golden’baseBootstrappingUse bootstrapping topass custominformation in andperform post launchtasks like pullingcode from SVN+BootstrappingConfigure dynamically
    • Bake an AMIBootstrappingTime consuming configuration(e.g startup time)Static configurations(e.g less change management)BootstrappingConfigure dynamically
    • Bake an AMIBootstrappingContinuous deployment(e.g latest code)Environment specific(e.g dev-test-prod)BootstrappingConfigure dynamically
    • Goal is bring an instance up in auseful stateThe balance will vary depending upon yourapplication
    • InstancerequestUserdata
    • InstancerequestUserdataMeta-dataservice
    • InstancerequestUserdataInstanceMeta-dataservice
    • #!/bin/shyum -y install httpd php mysql php-mysqlchkconfig httpd on/etc/init.d/httpd startShell script in user-data will be executed on launch:
    • Amazon Windows EC2Config Service executes user-data on launch:<script>dir > c:test.log</script><powershell>any command that you can run</powershell><powershell>Read-S3Object -BucketName myS3Bucket-Key myFolder/myFile.zip-File c:destinationFile.zip</powershell>AWS Powershell Tools
    • Why do this?AutomationLess fingers, less mistakesAvailabilityDrive higheravailability withself-healingSecurityInstanceslocked down bydefaultFlexibleShell,Powershell,CloudFormation,Chef, Puppet,OpsWorksScaleManage large scaledeployments and driveautoscalingEfficiencyAudit and manageyour estate withless time & effort
    • try somethingnew4DAY
    • UnconstrainedEC2 resources
    • UnconstrainedComplimentary services
    • My little instance(created programmatically)
    • A bit of S3 code(pulled down automatically from S3)>>> from boto.s3.key import Key>>> k = Key(bucket)>>> k.key = foobar>>> k.set_contents_from_string(This is a test of S3)My little instance(created programmatically)
    • A bit of S3 code(installed automatically)>>> from boto.s3.key import Key>>> k = Key(bucket)>>> k.key = foobar>>> k.set_contents_from_string(This is a test of S3)My little instance(created programmatically)UNLIMITED storagefrom my little instance
    • Services instead of softwareRemoves undifferentiated heavy lifting
    • Services instead of softwareRemoves undifferentiated heavy liftingS3 for object storageSQS for queuesRDS for databasesCloudWatch for monitoring
    • put somethingtogether5DAY
    • 1. Use multipleavailability zones
    • 2. Use RDS with replicasand slaves
    • 3. Use auto-scalinggroups
    • 4. Use Elastic LoadBalancing
    • 5. Use Route53 to hostDNS zones
    • Find out more about model architectures in:Building Web Scale Applications session
    • Get set up right from the startUnderstand programmable computeUse the tools and have a playExplore the services beyond EC2Build something! (you can always throw it away)SummaryLessons learned…aws.typepad.com
    • Thank you