Setup assisted service
From this repository: https://github.com/openshift/assisted-service
We’re not using Openshift but OKD (Openshift kube distrib)
Setup assisted installation interface
The repository is saved (just in case) on Gitlab “LeoCloud Plateform”
Install Podman
apt install podmanClone the repository
git clone https://github.com/openshift/assisted-serviceConfigure before running
In the “deploy/podman/okd-configmap.yml”, replace ASSISTED_SERVICE_HOST, IMAGE_SERVICE_BASE_URL, SERVICE_BASE_URL by your IP address
apiVersion: v1
kind: ConfigMap
metadata:
name: config
data:
ASSISTED_SERVICE_HOST: <your ip>:8090
ASSISTED_SERVICE_SCHEME: http
AUTH_TYPE: none
DB_HOST: 127.0.0.1
DB_NAME: installer
DB_PASS: admin
DB_PORT: "5432"
DB_USER: admin
DEPLOY_TARGET: onprem
DISK_ENCRYPTION_SUPPORT: "false"
DUMMY_IGNITION: "false"
ENABLE_SINGLE_NODE_DNSMASQ: "false"
HW_VALIDATOR_REQUIREMENTS: '[{"version":"default","master":{"cpu_cores":4,"ram_mib":16384,"disk_size_gb":100,"installation_disk_speed_threshold_ms":10,"network_latency_threshold_ms":100,"packet_loss_percentage":0},"worker":{"cpu_cores":2,"ram_mib":8192,"disk_size_gb":100,"installation_disk_speed_threshold_ms":10,"network_latency_threshold_ms":1000,"packet_loss_percentage":10},"sno":{"cpu_cores":8,"ram_mib":16384,"disk_size_gb":100,"installation_disk_speed_threshold_ms":10},"edge-worker":{"cpu_cores":2,"ram_mib":8192,"disk_size_gb":15,"installation_disk_speed_threshold_ms":10}}]'
IMAGE_SERVICE_BASE_URL: http://<your ip>:8888
IPV6_SUPPORT: "true"
ISO_IMAGE_TYPE: "full-iso"
LISTEN_PORT: "8888"
NTP_DEFAULT_SERVER: ""
POSTGRESQL_DATABASE: installer
POSTGRESQL_PASSWORD: admin
POSTGRESQL_USER: admin
PUBLIC_CONTAINER_REGISTRIES: 'quay.io'
SERVICE_BASE_URL: http://<your ip>:8090
STORAGE: filesystem
OS_IMAGES: '[{"openshift_version":"4.12","cpu_architecture":"x86_64","url":"https://builds.coreos.fedoraproject.org/prod/streams/stable/builds/37.20221225.3.0/x86_64/fedora-coreos-37.20221225.3.0-live.x86_64.iso","version":"37.20221225.3.0"}]'
RELEASE_IMAGES: '[{"openshift_version":"4.12","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift/okd:4.12.0-0.okd-2023-01-21-055900","version":"4.12.0-0.okd-2023-01-21-055900","default":true}]'
ENABLE_UPGRADE_AGENT: "false"Execute
podman play kube --configmap okd-configmap.yml pod-persistent.ymlTo be operational, it takes less than 5min depending on your internet connection.
Create your cluster with assisted service
Go to your interface
Go to your interface with http://<your ip>:8080.
Welcome to RedHat Openshift Assisted Service
You found this page.

Then click on “Create New Cluster”
Cluster details
You need to fill cluster name and base domain with you informations, it can be “cluster1” and “mylab.local”.
With default settings, openshift version and cpu arch is not fully available with all versions.
And in my case, I want to setup SNO mode.

Now the time to fill “Pull secret” field, you don’t need an actual redhat account, you can use this as pull secret:
{"auths":{"fake":{"auth": "b3BlbnNoaWZ0LXJlbGVhc2UtZGV2K29jbV9hY2Nlc3NfZmFrZTpmb29iYXIK"}}}Then you can setup disk encryption or network configuration.

Operators
You can install Openshift virtualization or Logical Volume Manager Storage.
For my case I won’t select these two options.

Host discovery
That’s the MOST difficult (kidding 🙃)
Add host
Click on “Add host”

This box popped out:

Tips on macOS
You can do this command cat .ssh/id_rsa.pub | pbcopy, and you have your public ssh key in clipboard.
Then click on “Generate Discovery ISO”
And you have this:

Download the ISO and put it wherever you want to boot your server.
Start the host
Personally, I’m using Proxmox for this tutorial.
I mount my discovery ISO on my VM

And now boot it up !
Now in the host inventory section, you can found your first host:
It can takes a few minutes to appear in this list

By clicking on the “>” you can see few information about your host:

And here, we can see that NTP is not configured, to configure it click on “Unreachable” and enter your favorite NTP server. (https://www.ntppool.org/fr/use.html)
Then click on “next”
Storage
If your doing like me, don’t touch anything. But it’s now that you touch your storage configuration for your hosts.

Then click on “next”.
Networking
Apply your networking settings, in my case I leave default values


Then click on “next”.
Review
In review, you can review your cluster configuration, preflight checks



Then click on “Install cluster”.
Installation in progress
You can take a coffee while installing, if your BIOS configuration or your VM configuration is good, it will install the cluster by itself without humain needed.

You can see the detail installation status on “View cluster events”.
The installation took me at least 1h20
Installation success
Now you can go to the given url

You might be on outdated version then update it
Once connected to the web console, you are on this page.

Add ephemeral storage on image registry
When the node restart, it’s can’t reboot ⚠️
With the downloaded kubeconfig-noingress:
export KUBECONFIG=~/Downloads/kubeconfig-noingress
oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"managementState":"Managed"}}'
oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"storage":{"emptyDir":{}}}}'