aws webcast - getting started with aws opsworks

Download AWS Webcast - Getting Started with AWS OpsWorks

Post on 16-Jul-2015

630 views

Category:

Technology

3 download

Embed Size (px)

TRANSCRIPT

  • Getting Started with AWS OpsWorks

    Thomas Lobinger, Technical Program Manager, AWS

    March 18, 2015

  • AWS OpsWorks

    Model, control, and automate infrastructure of

    any scale and complexity

    Deploy your application often, fast, and reliable

    Easy to start with pre-build configurations

    No additional cost running on AWS

  • Infrastructure as code

    Reusable

    Documented

    Versioned

    Tested

  • Your host today

    Thomas LobingerTechnical Program Manager

    for AWS OpsWorks

  • Application

    Management

    Services

  • Application management services

    Convenience Control

    AWS Elastic Beanstalk AWS OpsWorks AWS CloudFormation

  • AWS Elastic Beanstalk

    as well as

    AWS OpsWorks

    can be controlled via

    AWS CloudFormation.

    AWS CloudFormation integration

    OpsWorks Elastic Beanstalk

    CloudFormation

  • AWS CloudFormation integration

    OpsWorks SQS VPC S3

    CloudFormation

  • Stack

  • Layer / Services

  • Instances

  • HAProxy

    Ruby

    Node.js

    Java

    PHP

    Static Web

    Ganglia

    Memcached

    MySQL

    Custom

    Build-in Layers

  • Community provided Layers

  • Community provided Layers

  • Community provided Layers

  • Community provided Layers

  • Amazon RDS

    Elastic Load Balancing

    Amazon CloudWatch

    AWS CloudFormation

    AWS CloudTrail

    AWS IAM(users and profiles)

    Deep service integration for

  • Integrate into 3rd party services

  • Technical deep dive

  • Agent

    Installed on every instance

    Can execute different commands on an instance

    Sends keep alive messages for auto healing

    And 14 host level metrics every minute to CloudWatch free of charge

  • AWS OpsWorks Agent Events

    setup configure deploy undeploy shutdown

  • Launch first instance

  • Setup triggers configure event

  • Deploy the static App

  • Add a database instance

  • Reconfigure Stack

  • Deploy and migrate database

  • Add more instances

  • Configure Stack

  • Execute recipes any time

  • Stop instance

  • Configure Stack

  • Example event matrix

    Setup Configure Deploy Undeploy Shutdown

    Load

    Balancer

    Install load

    balancer

    Sync app

    server IPs

    Drain

    connections

    App

    Server

    Install app

    server

    Update DB IP

    & restart

    Update app

    code & restart

    Remove app

    & restartShip logs

    DatabaseInstall

    database

    Sync DB

    ACLs

    Make

    snapshot

  • Chef configuration management

    Open Source

    Cookbooks& recipes

    Ruby DSL

    Many tutorials and resources on the web

  • Recipe setup.rb

    package "apache2"

    apache2 / recipes / setup.rb

  • Resources describe

    what to do or

    define the desired state

    Resources have

    attributes

    actions

    cron "daily_report" do

    minute "0"

    hour "0"

    day "*"

    command "/daily_report"

    action :create

    end

    Chef resources

  • Recipe setup.rb

    package "apache2" do

    action :install

    end

    apache2 / recipes / setup.rb

  • Recipe setup.rb

    package "apache2" do

    case node[:platform]

    when "centos","redhat","fedora","amazon"

    package_name "httpd"

    when "debian","ubuntu"

    package_name "apache2"

    end

    action :install

    end

    apache2 / recipes / setup.rb

  • On-premises / multi cloud

  • Prepare for large events

    that exceed your own

    data center capacity in

    terms of infrastructure

    or bandwidth.

    Scale out existing infrastructure

    On premise

    AWS OpsWorks

    DB read

    DB write

  • Ease the load in your existing data center by moving environments to AWS OpsWorks.

    Provide in minutes as many controlled and secure stacks for test and development to your QA teams or developers.

    Move test and dev to AWS OpsWorks

    prod teststaging

    dev1 dev2

  • Recipe setup.rb

    ...

    if node["cloud"]["provider"] == "ec2"

    Chef::Log.info("This is an EC2 instance.")

    else

    Chef::Log.info("This is an onprem instance.")

    include_recipe 'onprem::tweaks'

    end

    ...

    apache2 / recipes / setup.rb

  • Keep in touch

    @AWSOpsWorks on twitter

    blogs.aws.amazon.com/application-management

  • Thank you very much for

    joining the webinar today

    Please give us feedback

    @AWSOpsWorks

    @TLobinger