Tutorial Series

Getting Started with CoreOS

CoreOS is a powerful Linux distribution built to make large, scalable deployments on varied infrastructure simple to manage. Based on a build of Chrome OS, CoreOS maintains a lightweight host system and uses Docker containers for all applications. In this series, we will introduce you to the basics of CoreOS, teach you how to set up a CoreOS cluster, and get you started with using docker containers with CoreOS.
  1. An Introduction to CoreOS System Components

    September 3, 2014
    CoreOS is an exciting Linux distribution focused on getting clustered environments up and running quickly. By leveraging technologies like Docker containers and service discovery, CoreOS clusters can be easily managed as a single unit. In this guide, we will discuss some of the background technologies that make CoreOS possible.
  2. How To Set Up a CoreOS Cluster on DigitalOcean

    September 4, 2014
    If you are planning on using CoreOS in your infrastructure, the first thing you will want to set up is a CoreOS cluster. In order for CoreOS machines to form a cluster, their etcd2 instances must be connected. In this tutorial, we will give step-by-step instructions to...
  3. How To Use Fleet and Fleetctl to Manage your CoreOS Cluster

    September 12, 2014
    The fleet daemon and the fleetctl utility program are essential for managing your CoreOS cluster. A cluster-wide interface to individual systemd instances, this system allows you to manage services throughout your clustered environment. In this guide, we'll get familiar with these components.
  4. How To Use Etcdctl and Etcd, CoreOS's Distributed Key-Value Store

    September 12, 2014
    Etcd is a globally distributed key-value store that forms the basis of the clustering technology in CoreOS. In this guide, we'll look at etcd and the etcdctl utility and discuss how they can be used to store and retrieve application and cluster data.
  5. How To Create and Run a Service on a CoreOS Cluster

    September 4, 2014
    CoreOS enables cluster-wide service definitions that can easily start applications on any member machine. In this guide, we will demonstrate the basic work flow required to create and run a service of your own. We will build a Docker container with our application installed, create systemd-style service unit files, and then use fleet to schedule and start our services.
  6. How to Create Flexible Services for a CoreOS Cluster with Fleet Unit Files

    September 12, 2014
    Fleet is the cluster-wide service management component of CoreOS. In this guide, we will take an in-depth look at the unit files that define services for CoreOS. We will learn how to create flexible services that take advantage of the power of the CoreOS platform.
  7. How To Use Confd and Etcd to Dynamically Reconfigure Services in CoreOS

    September 16, 2014
    Etcd is a globally distributed key-value store that is available in CoreOS installations. By registering services in this store, related applications can adjust their configuration based on the values available. In this guide, we will demonstrate how to configure `confd` to monitor `etcd` in order to dynamically generate an Nginx configuration. Continuous polling of `etcd` allows us to configure Nginx as a load balancer that adjusts its list of backend servers as they are started or stopped.
  8. How To Troubleshoot Common Issues with your CoreOS Servers

    September 18, 2014
    CoreOS is an extremely powerful operating system focused on cluster management, security, and containerized service deployments. However, the unconventional way that the system is set up can make troubleshooting somewhat difficult. In this guide, we'll cover the basics of how to track down issues in your deployment as well as your services.
  9. How To Secure Your CoreOS Cluster with TLS/SSL and Firewall Rules

    November 27, 2015
    If you are planning to run a CoreOS cluster in a network environment outside of your control, you may be concerned that etcd communicates over plain HTTP. This guide describes enabling TLS/SSL security and a basic firewall on CoreOS machines.