diff --git a/CHANGES.md b/CHANGES.md index a37bf805..ff43d0ab 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -14,6 +14,7 @@ Notable changes between versions. ### Addons +* Introduce [fleetlock](https://github.com/poseidon/fleetlock) for Fedora CoreOS reboot coordination ([#814](https://github.com/poseidon/typhoon/pull/814)) * Update Grafana from v7.1.3 to [v7.1.5](https://github.com/grafana/grafana/releases/tag/v7.1.5) ## v1.18.8 diff --git a/docs/addons/fleetlock.md b/docs/addons/fleetlock.md new file mode 100644 index 00000000..212676ae --- /dev/null +++ b/docs/addons/fleetlock.md @@ -0,0 +1,39 @@ +## fleetlock + +[fleetlock](https://github.com/poseidon/fleetlock) is a reboot coordinator for Fedora CoreOS nodes. It implements the [FleetLock](https://github.com/coreos/airlock/pull/1/files) protocol for use as a [Zincati](https://github.com/coreos/zincati) lock [strategy](https://github.com/coreos/zincati/blob/master/docs/usage/updates-strategy.md) backend. + +Declare a Zincati `fleet_lock` strategy when provisioning Fedora CoreOS nodes via [snippets](/advanced/customization/#hosts). + +```yaml +variant: fcos +version: 1.0.0 +storage: + files: + - path: /etc/zincati/config.d/55-update-strategy.toml + contents: + inline: | + [updates] + strategy = "fleet_lock" + [updates.fleet_lock] + base_url = "http://10.3.0.15/" +``` + +```tf +module "nemo" { + ... + controller_snippets = [ + file("./snippets/zincati-strategy.yaml"), + ] + worker_snippets = [ + file("./snippets/zincati-strategy.yaml"), + ] +} +``` + +Apply fleetlock based on the example manifests. + +```sh +git clone git@github.com:poseidon/fleetlock.git +kubectl apply -f examples/k8s +``` + diff --git a/docs/addons/overview.md b/docs/addons/overview.md index e15988b7..13708c2b 100644 --- a/docs/addons/overview.md +++ b/docs/addons/overview.md @@ -1,8 +1,9 @@ # Addons -Every Typhoon cluster is verified to work well with several post-install addons. +Typhoon clusters are verified to work well with several post-install addons. * Nginx [Ingress Controller](ingress.md) * [Prometheus](prometheus.md) * [Grafana](grafana.md) +* [fleetlock](fleetlock.md) diff --git a/docs/architecture/operating-systems.md b/docs/architecture/operating-systems.md index 3ebdbd05..abab632b 100644 --- a/docs/architecture/operating-systems.md +++ b/docs/architecture/operating-systems.md @@ -16,10 +16,10 @@ Together, they diversify Typhoon to support a range of container technologies. | Property | Flatcar Linux | Fedora CoreOS | |-------------------|---------------------------------|---------------| -| Kernel | ~4.19.x | ~5.5.x | +| Kernel | ~4.19.x | ~5.7.x | | systemd | 241 | 243 | | Ignition system | Ignition v2.x spec | Ignition v3.x spec | -| Container Engine | docker 18.06.3-ce | docker 18.09.8 | +| Container Engine | docker 18.06.3-ce | docker 19.03.11 | | storage driver | overlay2 (extfs) | overlay2 (xfs) | | logging driver | json-file | journald | | cgroup driver | cgroupfs (except Flatcar edge) | systemd | @@ -37,8 +37,8 @@ Together, they diversify Typhoon to support a range of container technologies. | control plane images | upstream images | upstream images | | on-host etcd | rkt-fly | podman | | on-host kubelet | rkt-fly | podman | -| CNI plugins | calico or flannel | calico or flannel | -| coordinated drain & OS update | [CLUO](https://github.com/coreos/container-linux-update-operator) addon | (planned) | +| CNI plugins | calico, cilium, flannel | calico, cilium, flannel | +| coordinated drain & OS update | [FLUO](https://github.com/kinvolk/flatcar-linux-update-operator) addon | [fleetlock](https://github.com/poseidon/fleetlock) | ## Directory Locations diff --git a/mkdocs.yml b/mkdocs.yml index c5dc1f44..a2a7b272 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -82,3 +82,4 @@ nav: - 'Nginx Ingress': 'addons/ingress.md' - 'Prometheus': 'addons/prometheus.md' - 'Grafana': 'addons/grafana.md' + - 'fleetlock': 'addons/fleetlock.md'