Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Habitat by Chef
Jessica DeVita, Evangelist @ubergeekgirl
Trevor Hess, Customer Architect @trevorghess
Agenda
State of the World
An Overview of Habitat
How Habitat Makes Containers Better
Demo
Questions & Answers
>1k
>25k
Company Background
▪ At the forefront of agile, lean, and DevOps movements
▪ Open Source foundation
▪ Tens of mil...
Chef Customers
1. BMC
2. Splunk
3. IBM
4. HP
5. New Relic
6. AWS
7. Servicenow
8. CA
9. Microsoft
10.Chef
11. Solarwinds
12. Atlassian
Ch...
The Chef Automate Platform
Continuous Automation for High Velocity IT
Workflow • Local development • Integration • Tooling...
Product Software
Development
Quality
Assurance
Operations Security
Enterprise Application LifecycleRUNTIME
Grid PaaS Conta...
Containers
Cloud & IaaS
PaaS
New World Infrastructure/Architecture
Data Services
VMs
Applications
VMs
Data Services
Contai...
The reality of modern architectures
AWS ECS
Google Container
EngineFor
Containers
For Traditional
Applications
Build
Deploy
Manage
Brent’s Desk
database cluster
Configuration Management
13
The Reality
Application
Concerns
OS
Concerns
How do you...
Build immutable infrastructure but
allow last mile Application config changes?
How do you...
Decouple the application build from
the final production ready container?
How do you...
Orchestrate the application launch
order & topology required?
19
20
What if you could
defer infrastructure
decisions until
runtime?
Automation travels with the application
Existing & Cloud Native Software
Application Automation
For new and legacy
applications.
For stateless and
stateful applications
No matter the runtime
environment
Habitat’s Appro...
Habitat Components
• Habitat Studio - an applicationpackager
Habitat Components
• Habitat Studio - an applicationpackager
• Habitat Plans - instructions todownload, compile,and install
Habitat Components
• Habitat Studio - an applicationpackager
• Habitat Plans - instructions todownload, compile,and instal...
Habitat Components
• Habitat Studio - an applicationpackager
• Habitat Plans - instructions todownload, compile,and instal...
How do you...
Decouple the application build from
the final production ready artifact?
Provide a “DSL” to describe the app...
Starts with a plan
Simple, Native, and Declarative
pkg_origin=core
pkg_name=redis
pkg_version=3.2.1
pkg_license=('BSD')
pkg_maintainer="TheHa...
https://github.com/docker-library/redis/blob/master/3.2/Dockerfile
https://github.com/docker-library/redis/blob/master/3.2/Dockerfile
Clean room environment
Safe by default
Installs dependences
Built in a studio
Central location
Publicly hosted
Lightweight channels
Stored in a depot
Easy pattern
Shortcuts
Increasing specificity
Installed by hab
Binaries and Config
Metadata
Side-by-side
Packages Contain
Install automatically
Keep things running
Manage configuration
Supervisors run services
Print config options
12-Factor style
Externally enforced
Environment configuration
More flexible than environment
Universal location
Externally enforced
File configuration
How do you...
Build immutable infrastructure but
allow last mile Application config changes?
Ship the config along side an...
Supervisors provide a REST API
External Actors
Health and Status
Supervisor
Debugging
How do you...
Orchestrate the application launch
order & topology required?
Provide config aware, autonomous, self-organiz...
Supervisors form a ring
Peers
Service Groups
Gossip
Availability
increases with scale
Supervisors support topologies
Dynamic
configuration
Service group level
Uses the ring
Supervisors provide update strategies
Topology aware
Tracks views in the
depot
Ideal for Continuous
Delivery
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
USER ARTIFACT
How we do it
Packaging Applicati...
How we do it
LEADER
INITIALIZE
R
STAND ALONE
Topologies Update StrategyRunning Applications
Confidential & subject to NDA....
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
How we d...
How do you...
Build containers with
the Minimum Viable OS?
Allow applications to declare their runtime
dependencies, and r...
Docker
ACI
Mesosphere
Post-process packages
Habitat + Containers
● Container formats recreate the traditional
model of infrastructure and applications.
● Poor at abst...
Operable ApplicationContainers
•Isolated
•Immutable
•Configurable
•Common interface for monitoring health
•Rebuild from so...
Habitat’s technology
Confidential & subject to NDA. Patents Pending.
● Describes how to build the
software
● Explicit abou...
What the modern application team gets
Developers, System Administrators, CIOs; Enterprise and Tech Innovators
▪ Runs the s...
It’s all open source
Apache License
Support, services, and training
Chef as your partner for success with continuous automation
▪ On Demand.
Chef can provide ...
Habitat Community
• Join the Habitat Slack Team - http://slack.habitat.sh/
• Work through the tutorial at https://www.habi...
Thank you!
DevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to Habitat
Upcoming SlideShare
Loading in …5
×

of

DevOps LA Meetup Intro to Habitat Slide 1 DevOps LA Meetup Intro to Habitat Slide 2 DevOps LA Meetup Intro to Habitat Slide 3 DevOps LA Meetup Intro to Habitat Slide 4 DevOps LA Meetup Intro to Habitat Slide 5 DevOps LA Meetup Intro to Habitat Slide 6 DevOps LA Meetup Intro to Habitat Slide 7 DevOps LA Meetup Intro to Habitat Slide 8 DevOps LA Meetup Intro to Habitat Slide 9 DevOps LA Meetup Intro to Habitat Slide 10 DevOps LA Meetup Intro to Habitat Slide 11 DevOps LA Meetup Intro to Habitat Slide 12 DevOps LA Meetup Intro to Habitat Slide 13 DevOps LA Meetup Intro to Habitat Slide 14 DevOps LA Meetup Intro to Habitat Slide 15 DevOps LA Meetup Intro to Habitat Slide 16 DevOps LA Meetup Intro to Habitat Slide 17 DevOps LA Meetup Intro to Habitat Slide 18 DevOps LA Meetup Intro to Habitat Slide 19 DevOps LA Meetup Intro to Habitat Slide 20 DevOps LA Meetup Intro to Habitat Slide 21 DevOps LA Meetup Intro to Habitat Slide 22 DevOps LA Meetup Intro to Habitat Slide 23 DevOps LA Meetup Intro to Habitat Slide 24 DevOps LA Meetup Intro to Habitat Slide 25 DevOps LA Meetup Intro to Habitat Slide 26 DevOps LA Meetup Intro to Habitat Slide 27 DevOps LA Meetup Intro to Habitat Slide 28 DevOps LA Meetup Intro to Habitat Slide 29 DevOps LA Meetup Intro to Habitat Slide 30 DevOps LA Meetup Intro to Habitat Slide 31 DevOps LA Meetup Intro to Habitat Slide 32 DevOps LA Meetup Intro to Habitat Slide 33 DevOps LA Meetup Intro to Habitat Slide 34 DevOps LA Meetup Intro to Habitat Slide 35 DevOps LA Meetup Intro to Habitat Slide 36 DevOps LA Meetup Intro to Habitat Slide 37 DevOps LA Meetup Intro to Habitat Slide 38 DevOps LA Meetup Intro to Habitat Slide 39 DevOps LA Meetup Intro to Habitat Slide 40 DevOps LA Meetup Intro to Habitat Slide 41 DevOps LA Meetup Intro to Habitat Slide 42 DevOps LA Meetup Intro to Habitat Slide 43 DevOps LA Meetup Intro to Habitat Slide 44 DevOps LA Meetup Intro to Habitat Slide 45 DevOps LA Meetup Intro to Habitat Slide 46 DevOps LA Meetup Intro to Habitat Slide 47 DevOps LA Meetup Intro to Habitat Slide 48 DevOps LA Meetup Intro to Habitat Slide 49 DevOps LA Meetup Intro to Habitat Slide 50 DevOps LA Meetup Intro to Habitat Slide 51 DevOps LA Meetup Intro to Habitat Slide 52 DevOps LA Meetup Intro to Habitat Slide 53 DevOps LA Meetup Intro to Habitat Slide 54 DevOps LA Meetup Intro to Habitat Slide 55 DevOps LA Meetup Intro to Habitat Slide 56 DevOps LA Meetup Intro to Habitat Slide 57 DevOps LA Meetup Intro to Habitat Slide 58 DevOps LA Meetup Intro to Habitat Slide 59 DevOps LA Meetup Intro to Habitat Slide 60 DevOps LA Meetup Intro to Habitat Slide 61 DevOps LA Meetup Intro to Habitat Slide 62 DevOps LA Meetup Intro to Habitat Slide 63 DevOps LA Meetup Intro to Habitat Slide 64 DevOps LA Meetup Intro to Habitat Slide 65
Upcoming SlideShare
SoCal DevOps Meetup 1/26/2017 - Habitat by Chef
Next
Download to read offline and view in fullscreen.

0 Likes

Share

Download to read offline

DevOps LA Meetup Intro to Habitat

Download to read offline

For the DevOps LA Meetup January 18, 2017 - An introduction to Habitat, a new open source application by Chef for application automation.

Related Books

Free with a 30 day trial from Scribd

See all
  • Be the first to like this

DevOps LA Meetup Intro to Habitat

  1. 1. Habitat by Chef Jessica DeVita, Evangelist @ubergeekgirl Trevor Hess, Customer Architect @trevorghess
  2. 2. Agenda State of the World An Overview of Habitat How Habitat Makes Containers Better Demo Questions & Answers
  3. 3. >1k >25k Company Background ▪ At the forefront of agile, lean, and DevOps movements ▪ Open Source foundation ▪ Tens of millions of machines under management by Chef ▪ 265 employees. Offices in Seattle, San Francisco, London, Berlin OUR VISION The most enduring and transformative companies use Chef to become fast, efficient, and innovative software driven organizations 70% of the Fortune 500 tech sector uses Chef Customers use Chef, including Alaska Airlines, Disney, Facebook, Intuit & Target Organizations using Chef to improve their speed, efficiency& risk management Quick Stats
  4. 4. Chef Customers
  5. 5. 1. BMC 2. Splunk 3. IBM 4. HP 5. New Relic 6. AWS 7. Servicenow 8. CA 9. Microsoft 10.Chef 11. Solarwinds 12. Atlassian Chef has driven the automation revolution Our platform is a leader in Continuous Automation Infrastructure Automation Compliance Automation Application Automation Strategic Vendor of F500OSS Leadership With which vendor do you think you will be spending the most on IT tools in three years? Goldman Sachs Spending Survey, 2016 Key Partners
  6. 6. The Chef Automate Platform Continuous Automation for High Velocity IT Workflow • Local development • Integration • Tooling (APIs & SDKs) COLLABORATE ▪ Package ▪ Test ▪ Approve BUILD ▪ Provision ▪ Configure ▪ Execute ▪ Update DEPLOY ▪ Secure ▪ Comply ▪ Audit ▪ Measure ▪ Log MANAGE Infrastructure Automation Compliance AutomationApplication Automation OSS AUTOMATION ENGINES Increase Speed ▪ Package infrastructure and app configuration as code ▪ Continuously automate infrastructure and app updates Improve Efficiency ▪ Define and execute standard workflows and automation ▪ Audit and measure effectiveness of automation Decrease Risk ▪ Define compliance rules as code ▪ Deliver continuous compliance as part of standard workflow
  7. 7. Product Software Development Quality Assurance Operations Security Enterprise Application LifecycleRUNTIME Grid PaaS Containers & Discovery Traditional Applications INFRASTRUCTUR E Bare Metal Virtualization Cloud & IaaS OS Application Delivery
  8. 8. Containers Cloud & IaaS PaaS New World Infrastructure/Architecture Data Services VMs Applications VMs Data Services Container Schedulers
  9. 9. The reality of modern architectures AWS ECS Google Container EngineFor Containers For Traditional Applications
  10. 10. Build Deploy Manage
  11. 11. Brent’s Desk database cluster
  12. 12. Configuration Management
  13. 13. 13 The Reality
  14. 14. Application Concerns OS Concerns
  15. 15. How do you... Build immutable infrastructure but allow last mile Application config changes?
  16. 16. How do you... Decouple the application build from the final production ready container?
  17. 17. How do you... Orchestrate the application launch order & topology required?
  18. 18. 19
  19. 19. 20
  20. 20. What if you could defer infrastructure decisions until runtime?
  21. 21. Automation travels with the application Existing & Cloud Native Software Application Automation
  22. 22. For new and legacy applications. For stateless and stateful applications No matter the runtime environment Habitat’s Approach Confidential & subject to NDA. Patents Pending. The solution should be the same: ● Applications: portable & responsible for their own automation ● Small OS serves the application ● Make application components aware of each other over a network ● Continuous deployment without traditional “ARA”
  23. 23. Habitat Components • Habitat Studio - an applicationpackager
  24. 24. Habitat Components • Habitat Studio - an applicationpackager • Habitat Plans - instructions todownload, compile,and install
  25. 25. Habitat Components • Habitat Studio - an applicationpackager • Habitat Plans - instructions todownload, compile,and install • Habitat Depot - a place to upload and download your app packages
  26. 26. Habitat Components • Habitat Studio - an applicationpackager • Habitat Plans - instructions todownload, compile,and install • Habitat Depot - a place to upload and download your app packages • Habitat Supervisor - an intelligent runtime withdeployment coordination and service discovery built in
  27. 27. How do you... Decouple the application build from the final production ready artifact? Provide a “DSL” to describe the application build (plan.sh), and provide an isolated environment (studio) to build the application artifact (Habitat Package).
  28. 28. Starts with a plan
  29. 29. Simple, Native, and Declarative pkg_origin=core pkg_name=redis pkg_version=3.2.1 pkg_license=('BSD') pkg_maintainer="TheHabitat Maintainers <humans@habitat.sh>" pkg_source=http://download.redis.io/releases/${pkg_name}-${pkg_version}.tar.gz pkg_shasum=b2a791c4ea3bb7268795c45c6321ea5abcc24457178373e6a6e3be6372737f23 pkg_bin_dirs=(bin) pkg_build_deps=(core/make core/gcc) pkg_deps=(core/glibc) pkg_svc_run="redis-server $pkg_svc_config_path/redis.config" pkg_expose=(6379) do_build() { make } plan.sh Low abstraction Complete dependencies Declare services Simple functions
  30. 30. https://github.com/docker-library/redis/blob/master/3.2/Dockerfile
  31. 31. https://github.com/docker-library/redis/blob/master/3.2/Dockerfile
  32. 32. Clean room environment Safe by default Installs dependences Built in a studio
  33. 33. Central location Publicly hosted Lightweight channels Stored in a depot
  34. 34. Easy pattern Shortcuts Increasing specificity Installed by hab
  35. 35. Binaries and Config Metadata Side-by-side Packages Contain
  36. 36. Install automatically Keep things running Manage configuration Supervisors run services
  37. 37. Print config options 12-Factor style Externally enforced Environment configuration
  38. 38. More flexible than environment Universal location Externally enforced File configuration
  39. 39. How do you... Build immutable infrastructure but allow last mile Application config changes? Ship the config along side an immutable application artifact. Provide a supervisor to dynamically update the config based on environment or service discovery.
  40. 40. Supervisors provide a REST API External Actors Health and Status Supervisor Debugging
  41. 41. How do you... Orchestrate the application launch order & topology required? Provide config aware, autonomous, self-organizing peers (supervisors) with built in topologies for clustering strategies.
  42. 42. Supervisors form a ring Peers Service Groups Gossip Availability increases with scale
  43. 43. Supervisors support topologies Dynamic configuration Service group level Uses the ring
  44. 44. Supervisors provide update strategies Topology aware Tracks views in the depot Ideal for Continuous Delivery
  45. 45. SERVICE SUPERVISOR SERVICE SUPERVISOR SERVICE SUPERVISOR SERVICE SUPERVISOR USER ARTIFACT How we do it Packaging Applications Running Applications Confidential & subject to NDA. Patents Pending. PLAN DEPOT DEPOT ARTIFACT BARE METAL CONTAINERS AMI VM
  46. 46. How we do it LEADER INITIALIZE R STAND ALONE Topologies Update StrategyRunning Applications Confidential & subject to NDA. Patents Pending. SERVICE SUPERVISOR SERVICE SUPERVISOR SERVICE SUPERVISOR SERVICE SUPERVISOR SERVICE SUPERVISOR SERVICE SUPERVISOR “ALL AT ONCE” ARTIFACT DEPOT SERVICE SUPERVISOR
  47. 47. SERVICE SUPERVISOR SERVICE SUPERVISOR SERVICE SUPERVISOR SERVICE SUPERVISOR SERVICE SUPERVISOR SERVICE SUPERVISOR How we do it Security PUB KEY SYMMETRIC ENCRYPTION LOAD BALANCER Build Service BUILD SERVICE USER SECRET PAYLOADS SERVICE SUPERVISOR SERVICE SUPERVISOR SERVICE SUPERVISOR SERVICE SUPERVISOR SERVICE SUPERVISOR SERVICE SUPERVISOR ARTIFACTPLAN DEPOT Confidential & subject to NDA. Patents Pending.
  48. 48. How do you... Build containers with the Minimum Viable OS? Allow applications to declare their runtime dependencies, and resolve those dependencies from the application to the infrastructure.
  49. 49. Docker ACI Mesosphere Post-process packages
  50. 50. Habitat + Containers ● Container formats recreate the traditional model of infrastructure and applications. ● Poor at abstracting the Build + Run aspects of Applications Libraries Operating System Application Application & Libraries ● Habitat builds containers from the application down ● Small lightweight OS included ● Embedded Supervisor for Application Management Application Libraries
  51. 51. Operable ApplicationContainers •Isolated •Immutable •Configurable •Common interface for monitoring health •Rebuild from source •Common packaging •Runtime Independence
  52. 52. Habitat’s technology Confidential & subject to NDA. Patents Pending. ● Describes how to build the software ● Explicit about dependencies ● Includes what is configurable about the application ● Built in service discovery ● Self-organizes into topologies ● Handles inter-service discovery through binding ● Has no single point of failure BUILD DEPLOY MANAGE ● Encrypted, authenticated run-time configuration ● Automatic, safe, atomic software updates ● Dynamic topology updates
  53. 53. What the modern application team gets Developers, System Administrators, CIOs; Enterprise and Tech Innovators ▪ Runs the same way in any environment ▪ Management travels with the application; no drift ▪ Autonomous and self- organizing ▪ Legacy and Greenfield ▪ Lets the enterprise modernize without re-writing the world ▪ Faster to build, easier to deploy, safer to manage ▪ Easiest way to deploy containers and microservices in production ▪ Developers can focus on building great applications ▪ Systems Administrators can focus on how thoseapplications should behave ▪ Gives both a language they can share, with clear boundaries Simplification Acceleration Empowerment Confidential & subject to NDA. Patents Pending.
  54. 54. It’s all open source Apache License
  55. 55. Support, services, and training Chef as your partner for success with continuous automation ▪ On Demand. Chef can provide dedicated support for your installation with experts from our customer success team. ▪ Vibrant Community. In addition to direct support, Chef has a huge and active community ready and willing to provide guidance and best practice. ▪ Custom development. Chef can design and build configuration cookbooks, compliance profiles and application packages using our in-house experts. ▪ Accelerators. Our architects and DevOps practitioners can provide the experience needed to get to success quickly ▪ Public and Private Training. We can deliver in-person and on- demand training to suit your needs. ▪ Certification. Chef can help ensure your team has the right knowledge for continued success. Support from the source Services for outcomes Training for capability By bringing in Chef, we were able to automate very heterogeneous infrastructures that included both legacy and new applications
  56. 56. Habitat Community • Join the Habitat Slack Team - http://slack.habitat.sh/ • Work through the tutorial at https://www.habitat.sh/tutorials/ • Explore Habitat packages on the depot - https://app.habitat.sh/ • Explore the Habitat projects - https://github.com/habitat-sh • Read Habitat Blog posts - https://blog.chef.io/?s=habitat • Join the Habitat Forums - https://forums.habitat.sh/
  57. 57. Thank you!

For the DevOps LA Meetup January 18, 2017 - An introduction to Habitat, a new open source application by Chef for application automation.

Views

Total views

307

On Slideshare

0

From embeds

0

Number of embeds

0

Actions

Downloads

4

Shares

0

Comments

0

Likes

0

×