5/19/2023 0 Comments Ign master reboot![]() Now that we have added our customizations, we can just proceed with the openshift-install create ignition-configs -dir=/ command again, retrieve our. I think this snipped is pretty straight-forward, and you see in the source how we "inject" the content of the file itself (previous base64 value we got in previous step) 99 _openshift - machineconfig_99 -$įilesystem: root mode: 0644 path: / etc / NetworkManager / conf. yml pushd openshift for variant in master worker do cat. # To ensure that provisioned master will try to become master as soon as they are installed sed - i ' s/mastersSchedulable: true/mastersSchedulable: false/g ' manifests / cluster - scheduler - 02 - config. Let's so use those informations to create what we need and start a fresh deploy.Īssuming that we want to create our manifest in : That's how I understood the concept of MachineConfig and how that's then supposed to work for a provisioned cluster, but also for the bootstrap process. That's then that we found this : Customing deployment with Day0 config : here is a simple example for Chrony With the traditional "CentOS Linux" sysadmin mindset, I thought : "good, we can just automate with ansible ssh'ing into each provisioned rhcos to just disable it", but there should be a clever other way to deal with this, as it was also impacting our initial bootstrap and master nodes (so no way to get cluster up) We discovered that RHCOS still uses NetworkManager but that default settings would be to enable all NICs with DHCP if nothing else declared which is what we need to disable.Īfter some research and help from Colin Walters, we were pointed to this bug report for coreos The "good" thing is that you can still ssh into each deployed RHCOS (even if not adviced to), to troubleshoot this. That was suddenly "interesting" as we don't fully control the network where those machines are, and each physical node has 4 NICs, all in the same vlan, in which we have also a small dhcp range for other deployments.ĭo you see the problem about etcd and members in the same subnet and multiple IP addresses ? yeah, it wasn't working as we saw some requests coming from the dhcp interfaces instead of the first properly configured NIC in each system. So we kicked off first the bootstrap node (ephemeral node being used as a temporary master, from which the real master forming the etcd cluster will get their initial config from), but then we realized that, while RHCOS was installed and responding with the fixed IP we set through pxeboot kernel parameters (and correctly applied on the reboot), each RHCOS node was also trying by default to activate all present NICs on the machine. The other part is really easy, as it's a matter (with ansible in our case) to just configure the tftp boot argument, and call an ad-hoc task to remotely force a physical reinstall of the machine (through ipmi): Those ignition files are (more or less) like traditional kickstart files to let you automate the RHCOS deploy on bare-metal. ![]() It's true that we ended up with some ignition files like: ![]() Have you read it ? Good, now we can move forward :)Īfter we had configured our install-config.yaml (with our needed values) and also generated the manifests with openshift-install create manifests -dir=/path/ we thought that it would be just deploying with the ignition files built by the openshift-install create ignition-configs -dir=/path step (see in the above doc for all details) To cut a long story short, you can read the basic steps needed to deploy Openshift on bare-metal in the official doc The goal of this blog post is not to dive into all the technical steps required to deploy/bootstrap the openshift cluster, but to discuss of one particular 'issue' that I found myself annoying while deploying: how to disable dhcp on the CoreOS provisioned nodes. With 4.x, OCP is completely different as instead of deploying "normal" Linux distro (like CentOS in our case), it's now using RHCOS (so CoreOS) as it's foundation. I never really looked at OpenShift but knew the basic concepts, at least on OKD 3.x. Recently I had to work with one of my colleagues (David) on something that was new to me : Openshift.
0 Comments
Leave a Reply. |