Skip to content

Conversation

@rajaSahil
Copy link
Contributor

  • Update machine controller docs

@kubermatic-bot kubermatic-bot added dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Jan 6, 2026
@kubermatic-bot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please ask for approval from rajasahil. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@rajaSahil rajaSahil force-pushed the update-machine-controller-docs branch from 339532b to e1835ae Compare January 6, 2026 08:48
@rajaSahil rajaSahil force-pushed the update-machine-controller-docs branch from 8530589 to 6b4063a Compare January 6, 2026 09:09
┌─────────────────────────────────────┐
│ Cloud Instances (Worker Nodes) │
└─────────────────────────────────────┘
```
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

for of the vertical borders are unaligned

Image


### Supported Operating Systems

- Ubuntu (20.04, 22.04, 24.04 LTS)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

24.04 LTS only


- Ubuntu (20.04, 22.04, 24.04 LTS)
- Flatcar Container Linux
- RHEL (Red Hat Enterprise Linux) 8.x
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

RHEL 9 only

- Ubuntu (20.04, 22.04, 24.04 LTS)
- Flatcar Container Linux
- RHEL (Red Hat Enterprise Linux) 8.x
- Rocky Linux 8.5+
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rocky 9 only


### Prerequisites

- Go 1.21 or later
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's recommend the latest and greatest Go 1.25

│ ├── e2e/ # End-to-end tests
│ └── tools/ # Test utilities
└── Makefile # Build automation
```
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This schema is not accurate anymore: we introduced a dedicated module skd, we dropped userdata.


To add support for a new operating system:

1. **Create userdata package**: `pkg/userdata/<os-name>/`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All that's referred to userdata should be removed


Before installing machine-controller, ensure you have:

- A running Kubernetes cluster (version 1.31 or later)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To avoid constantly updating this kubernetes version let's simply omit it

machine-controller uses webhooks that require TLS certificates. Install cert-manager to automatically manage these certificates:

```bash
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.11.2/cert-manager.yaml
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.11.2/cert-manager.yaml
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.19.2/cert-manager.crds.yaml
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.19.2/cert-manager.yaml

The Operating System Manager is responsible for managing user data and operating system configurations for worker nodes:

```bash
kubectl apply -f https://github.com/kubermatic/machine-controller/raw/main/examples/operating-system-manager.yaml
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this gives 404

operatingSystemSpec:
distUpgradeOnBoot: false
versions:
kubelet: "1.28.0"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
kubelet: "1.28.0"
kubelet: "<YOUR-KUBERNETES-VERSION>"

To avoid having outdated versions

"template": {
"spec": {
"versions": {
"kubelet": "1.29.0"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"kubelet": "1.29.0"
"kubelet": "<YOUR-UPGRADED-KUBERNETES-VERSION>"

To avoid having outdated versions

operatingSystemSpec:
distUpgradeOnBoot: false
versions:
kubelet: "1.28.0"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

here too

operatingSystemSpec:
distUpgradeOnBoot: false
versions:
kubelet: "1.28.0"
Copy link
Member

@kron4eg kron4eg Jan 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+

operatingSystemSpec:
distUpgradeOnBoot: false
versions:
kubelet: "1.28.0"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+

@@ -0,0 +1,170 @@
+++
title = "Installation"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
title = "Installation"
title = "Quick Start"

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know you didn't write this file but it contains URL for outdated ubuntu jammy, let's replace it with current LTS (24.04).

- **Systemd**: Uses systemd for service management

{{% notice warning %}}
Amazon Linux 2 support ends on June 30, 2025. Consider migrating to Amazon Linux 2023 or other distributions for new deployments.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we need to rethink this doc as AL2 is EOL already and we should kill it too from our end


## Supported Versions

Machine-controller officially supports:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Machine-controller officially supports:
OSM officially supports:

Comment on lines +36 to +37
- **Rocky Linux 8.x** (stable)
- **Rocky Linux 9.x** (latest)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- **Rocky Linux 8.x** (stable)
- **Rocky Linux 9.x** (latest)
- **Rocky Linux 9.x**

```bash
aws ec2 describe-images \
--owners 792107900819 \
--filters "Name=name,Values=Rocky-8-EC2-Base-*" \
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
--filters "Name=name,Values=Rocky-8-EC2-Base-*" \
--filters "Name=name,Values=Rocky-9-EC2-*" \

Comment on lines +111 to +114
publisher: "erockyenterprisesoftwarefoundationinc1653071250513"
offer: "rockylinux"
sku: "rocky-linux-8"
version: "latest"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
publisher: "erockyenterprisesoftwarefoundationinc1653071250513"
offer: "rockylinux"
sku: "rocky-linux-8"
version: "latest"
publisher: "resf"
offer: "rockylinux-x86_64"
sku: "9-base"
version: "latest"

Comment on lines +134 to +149
wget https://download.rockylinux.org/pub/rocky/8/images/x86_64/Rocky-8-GenericCloud-Base.latest.x86_64.qcow2
```

2. Upload to OpenStack Glance:
```bash
openstack image create \
--disk-format qcow2 \
--container-format bare \
--file Rocky-8-GenericCloud-Base.latest.x86_64.qcow2 \
rocky-linux-8
```

3. Reference in MachineDeployment:
```yaml
cloudProviderSpec:
image: "rocky-linux-8"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same, please update to the Rocky9

Comment on lines +12 to +14
- **Ubuntu 20.04 LTS** (Focal Fossa)
- **Ubuntu 22.04 LTS** (Jammy Jellyfish)
- **Ubuntu 24.04 LTS** (Noble Numbat)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- **Ubuntu 20.04 LTS** (Focal Fossa)
- **Ubuntu 22.04 LTS** (Jammy Jellyfish)
- **Ubuntu 24.04 LTS** (Noble Numbat)
- **Ubuntu 24.04 LTS** (Noble Numbat)

Comment on lines +92 to +94
offer: "0001-com-ubuntu-server-jammy"
sku: "22_04-lts-gen2"
version: "latest"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
offer: "0001-com-ubuntu-server-jammy"
sku: "22_04-lts-gen2"
version: "latest"
offer: "ubuntu-24_04-lts"
sku: "server-gen1"
version: "latest"

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please replace all the old references of 22.04 with 24.04

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

too much of outdated OS versions here too

Comment on lines +41 to +45
- Ubuntu (20.04, 22.04, 24.04 LTS)
- Flatcar Container Linux
- RHEL 8.x, 9.x
- Rocky Linux 8.x, 9.x
- Amazon Linux 2
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Ubuntu (20.04, 22.04, 24.04 LTS)
- Flatcar Container Linux
- RHEL 8.x, 9.x
- Rocky Linux 8.x, 9.x
- Amazon Linux 2
- Ubuntu (24.04 LTS)
- Flatcar Container Linux
- RHEL 9.x
- Rocky Linux 9.x

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants