Linux serverNETWORK ADMINISTRATIONSredhat

How to install OpenShift 4 on Bare Metal – User Provisioned Infrastructure (UPI)

Quickly spin up an OpenShift 4 cluster to start building and running your container workloads.

This tutorial follows the Bare Metal UPI method of installation and uses ESXi to virtualise the ‘bare metal’ machines. More information and details instructions are available in the GitHub Repo.

GitHub Repo: https://github.com/ryanhay/ocp4-metal-install

Official OpenShift documentation: https://docs.openshift.com/container-platform/4.5/installing/installing_bare_metal/installing-bare-metal.html

Music: Chill, Sakura Hz – https://www.youtube.com/watch?v=pF2tXC1pXNo

source

by Ryan Hay

redhat openstack

31 thoughts on “How to install OpenShift 4 on Bare Metal – User Provisioned Infrastructure (UPI)

  • While booting coreos getting an error cant find /dev/sda….could anyone help on this please?

  • I'm stuck on bring up the worker node. anybody know why? the error is worker node failed to fetch ignition file. worker.ign

  • sometimes it works sometimes it doesnt, is this anything to do with the masking or DNS setup?

  • Hi Ryan, an awesome video. One addition, you need to add a firewall rule to ocp-svc – firewall-cmd –zone=internal –add-port=53/tcp –permanent. I found that random Pods would fail DNS lookup. Further investigation showed that happened when the DNS response exceeded 512 bytes on UDP.

  • Hi Ryan, i tried your mentioned method but two operators (Console and Authentication) shows not available, can you guide me on that i am stuck here.

  • Hello Ryan, I am trying to setup the lab by following this video. I am using VMware Vsphere to setup the openshift container cluster. I have a VLAn created for internal network but for external network, I don't know how to create an external VM network which you added as an additional network for the helper machine. I got struck here for past 1 week. I don't know how to take it further. Since I new to VMware and linux , learning it. Please guide me how to setup the external network and connect?

  • Hi, I am facing issue while bootstraping process, I have tried it several times and my bootstrap process is getting failed. from bootstrap node

    I am following exactly what is mentioning in this video

    [root@ocp-bootstrap ~]# journalctl -b -f -u bootkube.service

    — Logs begin at Sun 2023-09-03 18:26:26 UTC. —

    Sep 03 19:48:32 ocp-bootstrap.lab.ocp.lan bootkube.sh[2463]: Error: unhealthy cluster

    Sep 03 19:48:33 ocp-bootstrap.lab.ocp.lan bootkube.sh[2463]: etcdctl failed. Retrying in 5 seconds…

    Sep 03 19:48:43 ocp-bootstrap.lab.ocp.lan bootkube.sh[2463]: {"level":"warn","ts":"2023-09-03T19:48:43.415866Z","logger":"client","caller":"v3@v3.5.9/retry_interceptor.go:62","msg":"retrying of unary invoker failed","target":"etcd-endpoints://0xc0003d4a80/localhost:2379","attempt":0,"error":"rpc error: code = DeadlineExceeded desc = latest balancer error: last connection error: connection error: desc = "transport: Error while dialing dial tcp [::1]:2379: connect: connection refused""}

    Sep 03 19:48:43 ocp-bootstrap.lab.ocp.lan bootkube.sh[2463]: https://localhost:2379 is unhealthy: failed to commit proposal: context deadline exceeded

    Sep 03 19:48:43 ocp-bootstrap.lab.ocp.lan bootkube.sh[2463]: Error: unhealthy cluster

    Sep 03 19:48:43 ocp-bootstrap.lab.ocp.lan bootkube.sh[2463]: etcdctl failed. Retrying in 5 seconds…

    Sep 03 19:48:53 ocp-bootstrap.lab.ocp.lan bootkube.sh[2463]: {"level":"warn","ts":"2023-09-03T19:48:53.903948Z","logger":"client","caller":"v3@v3.5.9/retry_interceptor.go:62","msg":"retrying of unary invoker failed","target":"etcd-endpoints://0xc0003c0a80/localhost:2379","attempt":0,"error":"rpc error: code = DeadlineExceeded desc = latest balancer error: last connection error: connection error: desc = "transport: Error while dialing dial tcp [::1]:2379: connect: connection refused""}

    Sep 03 19:48:53 ocp-bootstrap.lab.ocp.lan bootkube.sh[2463]: https://localhost:2379 is unhealthy: failed to commit proposal: context deadline exceeded

    Sep 03 19:48:53 ocp-bootstrap.lab.ocp.lan bootkube.sh[2463]: Error: unhealthy cluster

    Sep 03 19:48:54 ocp-bootstrap.lab.ocp.lan bootkube.sh[2463]: etcdctl failed. Retrying in 5 seconds…

    ^C

  • Hi Ryan
    I have separate servers for DNS,AD and DHCP so which part I have to skip for creating it. As there are 18 section for building UPI.

  • Hi Ryan,

    OKD port group is the interface that facing to internet right ?

  • Hi Ryan , thank you for your effort , just want to inform you that I have problem follwing your steps , as the redhat interface has been changed and I cannot find the redhat coreOS

  • Can this be installed any regions? Is it payable?

  • Can it be like 3 control planes as VM and 2 worker nodes as baremetal ?

  • Hi Ryan,
    many thanks for this excellent tutorial, i have done on 4.12 successfully.
    Now I am able to login with kube:admin user only, not from other admin users. Can you or anyone can help on this?

  • quickly, LOL, uh no…..but so far that best instructions I have found!

  • Great video, I have a question, does bootstrap have to have internet? I did the lab but bootstrap doesn't have internet, how did you get it to?

  • Great Explanation. Could you please create more videos for OpenShift related? Not much videos for openShift in the Youtube found… Ty

  • Hello Ryan I was not able to find the CentOS 8 ISO image for linux online, instead I installed CentOS 8 Stream. Is there any difference? I am stuck at the Deploy Openshift step, the bootstrap command on git is not working. Is it because of the different vesion I installed. Any suggestion how to fix it?

  • What an amazing video Ryan. You ROCK !!. Thank you so much Sir. Really helpful and beneficial.

  • wow this video is excellent resource , thanks for your hard work. keep working like this.

  • Excellent video Ryan!, It helped me a lot to understand the whole installation process. I would like to know how to add advanced network configuration, for example to add bonding, I found related information on the RedHat documentation:

    bond=bond0:em1,em2:mode=active-backup
    ip=bond0:dhcp

    Where em1 and em2 are the physical network devices. Those two lines should be added during PXE booting on the RHCOS machines? I found also that we could modify a live install ISO image, with customized network settings profile (using coreos-installer binary). Could you please help me to clarify?

  • Hey Ryan , can l use just 1 network , for example if l dedicate complete 1 esxi to ocp ??

Comments are closed.