Slide 1

Slide 1 text

By Camilo Aguilar - founder at Hooklift, Inc. @c4milo at Twitter Hooklift, Inc. DevOps tooling for the impatient engineer

Slide 2

Slide 2 text

What is DevOps? Hooklift, Inc.

Slide 3

Slide 3 text

Hooklift, Inc. It is a concept very often misused

Slide 4

Slide 4 text

DevOps is not a team or role, it is an organizational change in practices and communication to enable agility delivering business value Hooklift, Inc.

Slide 5

Slide 5 text

DevOps Infrastructure tooling for the impatient engineer Hooklift, Inc.

Slide 6

Slide 6 text

What do we want to automate? • Development environments • Network creation • Storage • Virtual machines • Application deployment • Application scalability • Load balancers • etc Hooklift, Inc.

Slide 7

Slide 7 text

Why do we want to automate? Essentially because we want to deliver business value as fast as possible Hooklift, Inc.

Slide 8

Slide 8 text

Why do we want to automate? • Etsy: 50 • Flickr: 10 • HubSpot: 300 • Amazon: 7800 • Netflix: 100 • Twitter: 7200 Deployments per day at some well known companies: Hooklift, Inc.

Slide 9

Slide 9 text

What’s the current tooling landscape like? Hooklift, Inc.

Slide 10

Slide 10 text

Hooklift, Inc. Docker Compose Docker Swarm Docker Machine

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

Containers Image source: http://opensource.com/government/14/12/how-linux-containers-can-solve-problem-defense-virtualization Hooklift, Inc.

Slide 13

Slide 13 text

Operating systems for Containers • Usually very minimal: ~200mb • Have auto-updates • Only host containers • Secure • Reliable Hooklift, Inc. Image source: https://coreos.com/using-coreos/

Slide 14

Slide 14 text

Docker Machine Development environments Allows you to easily create lightweight and reproducible dev environments Hooklift, Inc.

Slide 15

Slide 15 text

Infrastructure orchestration Creates and destroys infrastructure resources such as: • Virtual machines • Networks • DNS records • Load balancers • Volumes • Security groups • etc. Terraform does the above on multiple cloud providers and with a simpler configuration language Hooklift, Inc.

Slide 16

Slide 16 text

Configuration management • Especially useful for managing configuration of thousands of servers with multiple operating systems. IT people loves these tools. • For devs to provision individual applications, it becomes an unnecessary knowledge and maintenance burden Hooklift, Inc. • Slow running • Save you from writing shell scripts • Helps to keep configuration consistent across all machines

Slide 17

Slide 17 text

Schedulers • Allows you to place containers on hosts, using different constrains such as: region, memory and cpu available, kernel version, bandwidth, etc. • Mostly used for cluster utilization optimization • You don't need them in your local dev environments Hooklift, Inc. Docker Swarm

Slide 18

Slide 18 text

Image builders Allows you to build machine images for multiple platforms from a single source of configuration A machine image is a single static unit that contains a pre- configured operating system and installed software which is used to quickly create new running machines. Machine image formats change for each platform. Some examples include AMIs for EC2, VMDK/VMX files for VMware, OVF exports for VirtualBox, etc. Some text was taken from: https://www.packer.io/intro Hooklift, Inc.

Slide 19

Slide 19 text

Demo Hooklift, Inc.

Slide 20

Slide 20 text

Q&A Hooklift, Inc.