CoreOS introduction - Johann Romefort
-
Upload
johann-romefort -
Category
Documents
-
view
104 -
download
0
Transcript of CoreOS introduction - Johann Romefort
What is CoreOS?
What is CoreOS?
• A minimal Linux distro (~100MB)
• Huge focus on security: CoreOS mission is “Secure the Internet”
• The best way to run containers
• A read-only rootfs
• Automatic updates
Automatic Updates
• Active / Passive partitions
• Update Partition B while partition A is running. Reboot to partition B, reverse to A if any problem found.
• Reboot causes app downtime… unless…
etcd
• Distributed Key-Value store
• Service discovery
• No local configuration
Running Containers on CoreOS
Fleet
• Distributed init system for cluster
• Uses etcd
• Actually relies on systemd: Submit a systemd Unit file and handles scheduling on the cluster
• Enable high-availability services
Running Containers on fleet
Boot Sequence
• Look for cloud-config
• Lookup how to join an existing cluster
• Start etcd service
• Start fleet service
Creating a CoreOS cluster on
Digital Ocean
Pre-requesites
• Make sure you use a SSH key
• Create a DigitalOcean Personal Access Token (to use the DO API)
Generate a New Discovery URL
• Unique address that stores peer CoreOS addresses and metadata
Write a Cloud-Config
metadata: region=europe,public_ip=$public_ipv4
Create a Service Unit file
• hello.service
Using fleet to schedule a service
• fleetctl submit hello.service
• fleetctl list-unit-files
• fleetctl cat hello.service
• fleetctl start hello.service
• fleetctl list-units
• fleetctl status hello.service
• fleetctl journal hello.service
What’s next…
Thank [email protected] http://linkedin.com/in/romefort http://twitter.com/romefort
Ping me here: