project atomic - rootconf2015

12
Running your containers in a sane environment, Project Atomic Aditya Patawari Contributor to Fedora Admin team Lead Engineer (Infrastructure) at BrowserStack.com [email protected] adimania on freenode irc http://blog.adityapatawari.com April 21, 2015 Aditya Patawari Running your containers in a sane environment, Project Atomic

Upload: aditya-patawari

Post on 16-Jul-2015

61 views

Category:

Technology


2 download

TRANSCRIPT

Running your containers in a sane environment,Project Atomic

Aditya Patawari

Contributor to Fedora Admin team

Lead Engineer (Infrastructure) at BrowserStack.com

[email protected]

adimania on freenode irc

http://blog.adityapatawari.com

April 21, 2015

Aditya Patawari Running your containers in a sane environment, Project Atomic

Topics

What is Docker?

Why not LXC or VM?

Project Atomic is here!

.. Along with some components

Starting our Atomic Host

Docker Commands

Docker Repository

Aditya Patawari Running your containers in a sane environment, Project Atomic

What is the problem?

We need a stable environment to run containers

We need to support automation

Managing hosts should involve minimal efforts

Aditya Patawari Running your containers in a sane environment, Project Atomic

Project Atomic is here!

Minimal operating system

Benefits of our favorite Enterprise Linux

Robust atomic upgrades and systemd

Ready to take on cloud, virtualized or bare metal

Aditya Patawari Running your containers in a sane environment, Project Atomic

.. including rpm-ostree ..

Bootable, immutable, versioned filesystem trees

Composed from standard rpms

Atomic upgrade and rollbacks

Only /etc and /var are writable

Aditya Patawari Running your containers in a sane environment, Project Atomic

.. and Systemd ..

System and service manager for Linux

Replacing the init in Centos 7

Highly modular and much more powerful than sysV

Check out http://0pointer.de/blog/projects/why.html

Aditya Patawari Running your containers in a sane environment, Project Atomic

.. also Introducing Cockpit..

Aditya Patawari Running your containers in a sane environment, Project Atomic

.. and lastly Kubernetes ..

Master-slave arch

Boot new containers

Scalable and fault tolerant

Lots of examples and setup instructions athttps://github.com/GoogleCloudPlatform/kubernetes

Aditya Patawari Running your containers in a sane environment, Project Atomic

Starting Atomic Host

Atomic host needs cloud-init data

Info about the host, i.e. meta-data

Info about the user, i.e. user-data

Aditya Patawari Running your containers in a sane environment, Project Atomic

cloud-init data

$ cat meta-data

instance-id: iid-local01;

local-hostname: myhost;

$ cat user-data

#cloud-config

password: mypassword

ssh_pwauth: True

chpasswd: { expire: False }

ssh_authorized_keys:

- ssh-rsa ... [email protected]

$ genisoimage -output init.iso -volid cidata -joliet \

-rock user-data meta-data

Aditya Patawari Running your containers in a sane environment, Project Atomic

Demo!

Start a container.

Verify that it works.

Kill the container.

OOOOO... Magic!

Aditya Patawari Running your containers in a sane environment, Project Atomic

Questions?

Now is your chance :)

Aditya Patawari Running your containers in a sane environment, Project Atomic