The talk was given in CentOS Dojo Bangalore on 29th April 2015
http://wiki.centos.org/Events/Dojo/Bangalore2015
This slides contains introduction to Project Atomic and CentOS Atomic SIG.
4. 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.
5. 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.
6. 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
7. What Atomic Hosts Won't Provide
●
YUM install will not work inside Atomic host
●
Official images would have minimal package
set.
10. 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
11. rpm-ostree
●
Git for operating systems.
●
Update methods of containers and applied
them to operating system.
●
No more half way upgraded systems
# yum update
bash: yum: command not found
# atomic host upgrade
Upgrade prepared for next boot
# atomic host rollback
Successfully reset deployment
12. 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).
13. 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.
14. Docker
●
Built-in Docker run time in Atomic host.
●
Docker run would just work.
– $docker run -t -i fedora /bin/bash
15. Kubernetes
●
An open source system for managing
containerized applications across multiple
hosts
●
It gives basic mechanisms for deployment,
maintenance, and scaling of applications.
16. 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
17. Cockpit
●
Server manager for administrating Linux
servers via web browser.
●
Designed to be multi-server
●
Support for managing containers, Kubernetes.
●
http://cockpit-project.org/
18.
19. /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
20. 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
21. 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.
22. 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.
23. References
●
Introduction to Atomic - Joe Brockmeier -
https://www.youtube.com/watch?v=cPltG4Yd
KVE
●
https://github.com/GoogleCloudPlatform/kube
rnetes
●
https://github.com/projectatomic