Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In...
Transcript of Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In...
![Page 1: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/1.jpg)
Creating Platform Agnostic Packages That Can Run Anywhere
@nellshamrell
Nell Shamrell-Harrington
Principal Engineer – Community Engineering Lead
Chef Software
![Page 2: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/2.jpg)
What is the one true way to deploy applications?
![Page 3: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/3.jpg)
?
![Page 4: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/4.jpg)
In the Cloud!
?
![Page 5: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/5.jpg)
In the Cloud!
In Cloud Foundry!
?
![Page 6: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/6.jpg)
In the Cloud! In Containers!
In Cloud Foundry!
?
![Page 7: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/7.jpg)
In the Cloud! In Containers!
In Kubernetes! In Cloud Foundry!
?
![Page 8: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/8.jpg)
There is no one true way to deploy applications…
![Page 9: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/9.jpg)
It depends on the needs of the business….
![Page 10: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/10.jpg)
It depends on the needs of the business….
for that particular application…
![Page 11: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/11.jpg)
It depends on the needs of the business….
for that particular application…
at that particular time….
![Page 12: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/12.jpg)
It will change…
![Page 13: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/13.jpg)
It will change…
as the application changes…
![Page 14: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/14.jpg)
It will change…
as the application changes…
as the business changes
![Page 15: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/15.jpg)
Today’s reality – mixed infrastructure
![Page 16: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/16.jpg)
Mixed Infrastructure • Containers for stateless parts of an application
![Page 17: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/17.jpg)
• Containers for stateless parts of an application
• Virtual Machines for persistent data stores
Mixed Infrastructure
![Page 18: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/18.jpg)
• Containers for stateless parts of an application
• Virtual Machines for persistant data stores
• Bare metal for static, compute heavy loads
Mixed Infrastructure
![Page 19: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/19.jpg)
Does this mean I need a different build and install process for each part of my
application?
![Page 20: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/20.jpg)
• Infrastructure Automation
Automation Evolution
![Page 21: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/21.jpg)
• Infrastructure Automation
• Container Automation
Automation Evolution
![Page 22: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/22.jpg)
• Infrastructure Automation
• Container Automation
• Application Automation
Automation Evolution
![Page 23: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/23.jpg)
![Page 24: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/24.jpg)
• Principal Software Engineer – Community Engineering Lead at
Chef
• Core maintainer of Habitat Open Source project
• @nellshamrell
Nell Shamrell-Harrington
Who am I?
![Page 25: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/25.jpg)
Why Application Automation?
![Page 26: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/26.jpg)
Building and running software is painful!
![Page 27: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/27.jpg)
• Tied to particular runtimes and environments
Building and running software is painful!
![Page 28: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/28.jpg)
• Tied to particular runtimes and environments
• Different packages for different flavors of Linux
Building and running software is painful!
![Page 29: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/29.jpg)
• Tied to particular runtimes and environments
• Different packages for different flavors of Linux
• Different packages for bare metal/virtual machines and
containers
Building and running software is painful!
![Page 30: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/30.jpg)
Modern Applications
![Page 31: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/31.jpg)
Modern application
• Is immutable
![Page 32: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/32.jpg)
• Is immutable
• Is agnostic to running environment
Modern application
![Page 33: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/33.jpg)
• Is immutable
• Is agnostic to running environment
• Reduces complexity
Modern application
![Page 34: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/34.jpg)
• Is immutable
• Is agnostic to running environment
• Reduces complexity
• Enables scaling
Modern application
![Page 35: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/35.jpg)
What is Habitat?
![Page 36: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/36.jpg)
Habitat is a new technology to build, deploy, and manage
applications…
![Page 37: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/37.jpg)
…in any environment from traditional datacenters
to containerized microservices
![Page 38: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/38.jpg)
In Habitat, the application is the unit of automation
![Page 39: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/39.jpg)
Packaging an application with Habitat
Sourc
e
Code
Repo
User
![Page 40: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/40.jpg)
Packaging an application with Habitat
Sourc
e
Code
Repo
User Plan
Written in
Bash
or
PowerShell
![Page 41: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/41.jpg)
Packaging an application with Habitat
Sourc
e
Code
Repo
User Plan Artifact
Signed with a key
Written in
Bash
or
PowerShell
![Page 42: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/42.jpg)
Packaging an application with Habitat
Sourc
e
Code
Repo
User Plan Artifact Depot
Signed with a key
(Optional) Written in
Bash
or
PowerShell
![Page 43: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/43.jpg)
Public Builder Depot https://bldr.habitat.sh
![Page 44: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/44.jpg)
Public Builder Depot https://bldr.habitat.sh
On Premises Depot Available Too!
![Page 45: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/45.jpg)
Demo – Creating a Linux Package
![Page 46: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/46.jpg)
Running an application with Habitat
Sourc
e
Code
Repo
Depot
(Optional)
![Page 47: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/47.jpg)
Running an application with Habitat
Sourc
e
Code
Repo
Depot Artifact
(Optional)
![Page 48: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/48.jpg)
Running an application with Habitat
Sourc
e
Code
Repo
Depot Artifact
Bare Metal Service
Supervisor
Virtual Machine
Container
Supervisor
Supervisor
Service
Service
(Optional)
![Page 49: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/49.jpg)
Demo – running a package with a
supervisor
![Page 50: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/50.jpg)
Running an application with Habitat
Sourc
e
Code
Repo
Virtual Machine Supervisor
Service
API
![Page 51: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/51.jpg)
Running an application with Habitat
Sourc
e
Code
Repo
Load Balancer
Virtual Machine Supervisor
Service
API
![Page 52: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/52.jpg)
Running an application with Habitat
Sourc
e
Code
Repo
Virtual Machine Supervisor
Service
Virtual Machine Supervisor
Service
Virtual Machine Supervisor
Service
Virtual Machine Supervisor
Service
![Page 53: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/53.jpg)
Running an application with Habitat
Sourc
e
Code
Repo
Virtual Machine Supervisor
Service
Virtual Machine Supervisor
Service
Virtual Machine Supervisor
Service
Virtual Machine Supervisor
Service
Encrypted
Encrypted
Encrypted
Encrypted
![Page 54: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/54.jpg)
Along with running HART packages with Habitat…
![Page 55: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/55.jpg)
…you can also export them to other formats…
![Page 56: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/56.jpg)
Including container images, by far the most popular is
Docker
![Page 57: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/57.jpg)
Habitat and Containers
![Page 58: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/58.jpg)
Getting artifacts to run anywhere is very difficult
![Page 59: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/59.jpg)
Containers were supposed to solve this problem, but…
![Page 60: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/60.jpg)
Current Container Pain
• Major learning cliff between development and production
![Page 61: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/61.jpg)
Current Container Pain
• Major learning cliff between development and production
• Containers become black boxes – don’t always know what is in them
![Page 62: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/62.jpg)
Current Container Pain
• Major learning cliff between development and production
• Containers become black boxes – don’t always know what is in them
• Black boxes cause security issues
![Page 63: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/63.jpg)
Current Container Pain
Operating System
Libraries
Application
Libraries
Application
![Page 64: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/64.jpg)
Containers with Habitat
Application
&
Libraries
Operating
System
![Page 65: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/65.jpg)
Containers with Habitat
• Habitat starts with the application – minimal operating system
comes later
![Page 66: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/66.jpg)
Containers with Habitat
• Habitat starts with the application – minimal operating system
comes later
• Application declares dependencies, dependencies are resolved from
the application
![Page 67: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/67.jpg)
Containers with Habitat
• Habitat starts with the application – minimal operating system
comes later
• Application declares dependencies, dependencies are resolved from
the application
• Exposes API for external services
![Page 68: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/68.jpg)
When you create a container image with Habitat…
![Page 69: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/69.jpg)
You know exactly what went into the container and
what is configurable about the container
![Page 70: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/70.jpg)
Demo – Exporting HART package to a Docker image
![Page 71: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/71.jpg)
Deploying Containers with Habitat
• You can deploy the container using…
![Page 72: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/72.jpg)
Deploying Containers with Habitat
• You can deploy the container using…
• Cloud based container services
• Azure Container Services, Amazon ECS
![Page 73: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/73.jpg)
Deploying Containers with Habitat
• You can deploy the container using…
• Cloud based container services
• Azure Container Services, Amazon ECS
• Container scheduling services
• Kubernetes, Mesosphere, Docker Swarm
![Page 74: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/74.jpg)
Wrap Up…
![Page 75: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/75.jpg)
Most of today’s applications run on mixed infrastructure
![Page 76: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/76.jpg)
![Page 77: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/77.jpg)
How do you get involved?
• Habitat.sh/community
![Page 78: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/78.jpg)
• Principal Software Engineer – Community Engineering Lead at
Chef
• Core maintainer of Habitat Open Source project
• @nellshamrell
Nell Shamrell-Harrington
Who am I?
![Page 79: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/79.jpg)
• Principal Software Engineer – Community Engineering Lead at
Chef
• Core maintainer of Habitat Open Source project
• @nellshamrell
Nell Shamrell-Harrington
Who am I?
Thank You!
![Page 80: Creating Platform Agnostic Packages That Can Run Anywhere€¦ · In the Cloud! ? In the Cloud! In Cloud Foundry! ? In the Cloud! In Containers! In Cloud Foundry! ? In the Cloud!](https://reader036.fdocuments.us/reader036/viewer/2022062607/605c81f9d97134445f7a875a/html5/thumbnails/80.jpg)