Slide 1

Slide 1 text

AWS OpsWorks Overview Ash Wu (hSATAC)

Slide 2

Slide 2 text

Why OpsWorks?

Slide 3

Slide 3 text

利⼤大於弊

Slide 4

Slide 4 text

What is OpsWorks? • A service built on top of AWS & Chef

Slide 5

Slide 5 text

OpsWorks Provides… • Chef server • Predefined instance lifecycle • Deployment • Auto-scaling • AWS integration • GUI & API • Open-sourced cookbooks • Clone Stack across region

Slide 6

Slide 6 text

OpsWorks Provides… • Chef server • One less Single Point of Failure • Sync cookbook, provisioning instance for you

Slide 7

Slide 7 text

OpsWorks Provides… • Predefined instance lifecycle • Deployment • Auto-scaling • AWS integration • Less scripts • Less mistakes • Faster development

Slide 8

Slide 8 text

OpsWorks Provides… • GUI & API • Open-sourced cookbooks • Enhance / rewrite if feature is not enough

Slide 9

Slide 9 text

OpsWorks Provides… • Clone Stack across region • Cross region recovery

Slide 10

Slide 10 text

OpsWorks Concept • Stack
 • Layer
 (HAProxy, Web, MySQL…)
 • App
 (RoR, PHP, Node, Static, Java…)

Slide 11

Slide 11 text

OpsWorks Lifecycle • Setup • Configure • Deploy • Undeploy • Shutdown

Slide 12

Slide 12 text

OpsWorks Lifecycle • Setup (After instance booted, triggers Deploy) • Configure
 (Whenever an instance became online / offline, all instances of the stack will be triggered configure) • Deploy (Deploy your App) • Undeploy • Shutdown

Slide 13

Slide 13 text

OpsWorks Auto-Scaling • Time-based instance
 (Predictable event like COSCUP) • Load-based instance
 (Add / Remove instance according to average CPU / load of a layer) • Auto Healing
 (Detect dead instance, shutdown and replace it)
 (Not suggested by @dlackty) • Integrated with Elastic Load Balancer

Slide 14

Slide 14 text

Notes • All App will be deployed to all instances of all layers of a stack
 (Need to cut the stack into minor unit) • Update custom cookbooks manually. • Only update, OpsWorks will not run cookbook automatically
 (Run command from web console / API) • One stack can have only one custom cookbook repo
 (Using Berkshelf to solve this) • Not sure how auto-scaling works with deploying • Check of a successful service start / deploy is not good enough
 (May need to modify the cookbook of write some scripts)

Slide 15

Slide 15 text

OpsWorks Provides… • Chef server • Predefined instance lifecycle • Deployment • Auto-scaling • AWS integration • GUI & API • Open-sourced cookbooks • Clone Stack across region

Slide 16

Slide 16 text

OpsWorks Provides… • Chef server • Predefined instance lifecycle • Deployment • Auto-scaling • AWS integration • GUI & API • Open-sourced cookbooks • Clone Stack across region • At least it’s chef

Slide 17

Slide 17 text

利⼤大於弊