Introduction to Project atomic (CentOS Dojo Bangalore)

25
Introduction to Project Atomic Lalatendu Mohanty @lalatenduM, lalatenduM on Freenode, [email protected]

Transcript of Introduction to Project atomic (CentOS Dojo Bangalore)

Page 1: Introduction to Project atomic (CentOS Dojo Bangalore)

Introduction to Project Atomic

Lalatendu Mohanty@lalatenduM,

lalatenduM on Freenode,[email protected]

Page 2: Introduction to Project atomic (CentOS Dojo Bangalore)

Topics● What is Project Atomic?● Rpm-ostree● Cockpit● Kubernets● /usr/bin/atomic● Docker● SPC● Nulecule● CentOS Atomic SIG● Getting Involved

Page 3: Introduction to Project atomic (CentOS Dojo Bangalore)

What is Project Atomic?

Page 4: Introduction to Project atomic (CentOS Dojo Bangalore)

To Begin With● It is not a new GNU/Linux distribution.● Framework to create an OS from RHEL,

CentOS and Fedora.● Aim of Project Atomic is to create a better OS

for containers.

Page 5: Introduction to Project atomic (CentOS Dojo Bangalore)

Why Atomic?● For running containers we don't need a full

fledged distribution.● Optimized OS for running and maintaining

containers.● Less number of packages to maintain.

Page 6: Introduction to Project atomic (CentOS Dojo Bangalore)

Why Atomic?● Maintaining these systems should be

relatively less painful.● Updating the system should be easy to deploy

and manage.● More secure than the traditional OS

Page 7: Introduction to Project atomic (CentOS Dojo Bangalore)

What Atomic Hosts Won't Provide

● YUM install will not work inside Atomic host● Official images would have minimal package

set.

Page 8: Introduction to Project atomic (CentOS Dojo Bangalore)

Atomic hosts comprises of

● Rpm-ostree● Cockpit● Kubernets● /usr/bin/atomic● Docker● SPC

Page 9: Introduction to Project atomic (CentOS Dojo Bangalore)

rpm-ostree

Page 10: Introduction to Project atomic (CentOS Dojo Bangalore)

OSTree“OSTree was born to help implement a continuous

delivery model for operating systems. One can be a lot

more confident in updating systems if one knows that a

reliable rollback system is always available.”

COLIN WALTERS

Senior Software Engineer, Inventor of OSTree

Red Hat

Page 11: Introduction to Project atomic (CentOS Dojo Bangalore)

rpm-ostree● Git for operating systems.● Update methods of containers and applied

them to operating system.● No more half way upgraded systems

# yum updatebash: yum: command not found

# atomic host upgradeUpgrade prepared for next boot

# atomic host rollbackSuccessfully reset deployment

Page 12: Introduction to Project atomic (CentOS Dojo Bangalore)

Why rpm-ostree?● Atomic host would only run containers.● Atomic update makes more sense for an

immutable system.● Allows reuse of RPMs.● No need to re-invent wheel on packaging.● Option to rollback to previous state (old good

state).

Page 13: Introduction to Project atomic (CentOS Dojo Bangalore)

How rpm-ostree works?

● Fiilesystem is read-only except /var and /etc● All data (e.g. containers) are unchanged on

upgrade.● /etc gets updated through a 3-way merge.

Page 14: Introduction to Project atomic (CentOS Dojo Bangalore)

Docker● Built-in Docker run time in Atomic host.● Docker run would just work.

– $docker run -t -i fedora /bin/bash

Page 15: Introduction to Project atomic (CentOS Dojo Bangalore)

Kubernetes● An open source system for managing

containerized applications across multiple

hosts● It gives basic mechanisms for deployment,

maintenance, and scaling of applications.

Page 16: Introduction to Project atomic (CentOS Dojo Bangalore)

Nulecule● Provide a simple, flexible way to describe a

multi-container application, including all

dependencies.

https://github.com/projectatomic/nulecule

● Nulecule: The mother of all atomic particles● Refer: http://simpsons.wikia.com/wiki/Made-

up_words

Page 17: Introduction to Project atomic (CentOS Dojo Bangalore)

Cockpit● Server manager for administrating Linux

servers via web browser.● Designed to be multi-server● Support for managing containers, Kubernetes.● http://cockpit-project.org/

Page 18: Introduction to Project atomic (CentOS Dojo Bangalore)
Page 19: Introduction to Project atomic (CentOS Dojo Bangalore)

/usr/bin/atomic● Coherent entry point : manage host and

containers with the atomic command.● Fill gaps in Linux container implementations.

– e.g. “atomic install foo” can install a container with

its k8s configuration and/or systemd unit file.

– “atomic run” grabs the LABEL “run” with its all

command line details.

– It can serve as metadata for containers for different

use cases

Page 20: Introduction to Project atomic (CentOS Dojo Bangalore)

SPC● SPC = Super Privileged Containers● Tools container● Allows applications inside of containers to

interact with or control the host, very useful

for system and monitoring tools

Page 21: Introduction to Project atomic (CentOS Dojo Bangalore)

Special interest groups (SIGs)

● For building specialized variants of CentOS that fulfill

specific sets of requirements.

● Freedom to modify and enhance CentOS in various

ways, including adding more cutting-edge software,

rebuilding existing packages.

● To get the best of both worlds – the overall stability of

CentOS and newer technology from various open

source projects.

Page 22: Introduction to Project atomic (CentOS Dojo Bangalore)

CentOS Atomic SIG● To deliver CentOS based Atomic host.● Also building a downstream of RHEL Atomic

host.● http://wiki.centos.org/SpecialInterestGroup/Atomic● Centos-devel Mailing list and irc channel.

Page 23: Introduction to Project atomic (CentOS Dojo Bangalore)

References● Introduction to Atomic - Joe Brockmeier -

https://www.youtube.com/watch?v=cPltG4Yd

KVE● https://github.com/GoogleCloudPlatform/kube

rnetes● https://github.com/projectatomic

Page 24: Introduction to Project atomic (CentOS Dojo Bangalore)

Get involved ● Website: projectatomic.io● Github: github.com/projectatomic● #atomic on Freenode● centos-devel, atomic-devel, atomic ML● Facebook.com/projectatomic● Twitter @projectatomic

Page 25: Introduction to Project atomic (CentOS Dojo Bangalore)

Thank you :-)

Any questions please?