typhoon/azure/container-linux/kubernetes
Dalton Hubble 358854e712 Fix Calico install-cni crash loop on Pod restarts
* Set a consistent MCS level/range for Calico install-cni
* Note: Rebooting a node was a workaround, because Kubelet
relabels /etc/kubernetes(/cni/net.d)

Background:

* On SELinux enforcing systems, the Calico CNI install-cni
container ran with default SELinux context and a random MCS
pair. install-cni places CNI configs by first creating a
temporary file and then moving them into place, which means
the file MCS categories depend on the containers SELinux
context.
* calico-node Pod restarts creates a new install-cni container
with a different MCS pair that cannot access the earlier
written file (it places configs every time), causing the
init container to error and calico-node to crash loop
* https://github.com/projectcalico/cni-plugin/issues/874

```
mv: inter-device move failed: '/calico.conf.tmp' to
'/host/etc/cni/net.d/10-calico.conflist'; unable to remove target:
Permission denied
Failed to mv files. This may be caused by selinux configuration on
the
host, or something else.
```

Note, this isn't a host SELinux configuration issue.

Related:

* https://github.com/poseidon/terraform-render-bootstrap/pull/186
2020-05-09 16:01:44 -07:00
..
cl Enable Kubelet TLS bootstrap and NodeRestriction 2020-04-28 19:35:33 -07:00
workers Enable Kubelet TLS bootstrap and NodeRestriction 2020-04-28 19:35:33 -07:00
LICENSE Add new tutorial docs and links 2018-08-27 23:30:32 -07:00
README.md Update Kubernetes from v1.18.1 to v1.18.2 2020-04-16 23:40:52 -07:00
bootstrap.tf Fix Calico install-cni crash loop on Pod restarts 2020-05-09 16:01:44 -07:00
controllers.tf Revert Flatcar Linux Azure to manual upload images 2020-04-18 15:40:57 -07:00
lb.tf Fix UDP outbound and clock sync timeouts on Azure workers 2020-03-31 21:00:16 -07:00
network.tf Upgrade terraform-provider-azurerm to v2.0+ 2020-03-08 17:40:13 -07:00
outputs.tf Output resource_group_id in Azure (#577) 2019-10-31 01:05:04 -07:00
security.tf Enable kube-proxy metrics and allow Prometheus scrapes 2020-01-06 21:11:18 -08:00
ssh.tf Upgrade terraform-provider-azurerm to v2.0+ 2020-03-08 17:40:13 -07:00
variables.tf Revert Flatcar Linux Azure to manual upload images 2020-04-18 15:40:57 -07:00
versions.tf Upgrade terraform-provider-azurerm to v2.0+ 2020-03-08 17:40:13 -07:00
workers.tf Fix terraform fmt 2020-03-31 21:42:51 -07:00

README.md

Typhoon

Typhoon is a minimal and free Kubernetes distribution.

  • Minimal, stable base Kubernetes distribution
  • Declarative infrastructure and configuration
  • Free (freedom and cost) and privacy-respecting
  • Practical for labs, datacenters, and clouds

Typhoon distributes upstream Kubernetes, architectural conventions, and cluster addons, much like a GNU/Linux distribution provides the Linux kernel and userspace components.

Features

Docs

Please see the official docs and the Azure tutorial.