| Ubuntu | Container Linux | CentOS | |
|---|---|---|---|
| AWS | ✓ | ✓ | ✓ |
| Openstack | ✓ | ✓ | ✓ |
| Digitalocean | ✓ | ✓ | ✓ |
| Google Cloud Platform | ✓ | ✓ | x |
| Hetzner | ✓ | x | ✓ |
| Linode | ✓ | x | x |
The operating system to use can be set via machine.spec.providerConfig.operatingSystem.
Allowed values:
coreosubuntu
OS specific settings can be set via machine.spec.providerConfig.operatingSystemSpec.
apiVersion: "cluster.k8s.io/v1alpha1"
kind: MachineDeployment
metadata:
name: machine1
namespace: kube-system
spec:
paused: false
replicas: 1
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
minReadySeconds: 0
selector:
matchLabels:
foo: bar
template:
metadata:
labels:
foo: bar
spec:
providerConfig:
value:
...
operatingSystem: "ubuntu"
operatingSystemSpec:
# do a apt-get dist-upgrade on start and reboot if required
distUpgradeOnBoot: trueapiVersion: "cluster.k8s.io/v1alpha1"
kind: MachineDeployment
metadata:
name: machine1
namespace: kube-system
spec:
paused: false
replicas: 1
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
minReadySeconds: 0
selector:
matchLabels:
foo: bar
template:
metadata:
labels:
foo: bar
spec:
providerConfig:
value:
...
operatingSystem: "coreos"
operatingSystemSpec:
# disable auto update
disableAutoUpdate: trueapiVersion: "cluster.k8s.io/v1alpha1"
kind: MachineDeployment
metadata:
name: machine1
namespace: kube-system
spec:
paused: false
replicas: 1
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
minReadySeconds: 0
selector:
matchLabels:
foo: bar
template:
metadata:
labels:
foo: bar
spec:
providerConfig:
value:
...
operatingSystem: "centos"