Skip to content

Latest commit

 

History

History
85 lines (66 loc) · 2.68 KB

11-installation.md

File metadata and controls

85 lines (66 loc) · 2.68 KB

Installation

With everything prepared, it is time to install the baremetal servers. If the previous steps have been doing properly, the ISOs are modified to avoid requiring manual input and the ignition files shall configure the networking to use the DNS we have set.

NOTE: In my environment, it is required to have an iDRAC version >= 2.60.60.60 to be able to map virtual media iso from http.

We will be using a racadm directly from the iDRAC connecting via ssh to avoid installing it locally via sshpass.

Install bootstrap

# Note: racadm commands will complain about certificates
sudo yum install -y sshpass

# Bootstrap
export IDRACIP=${BOOTSTRAP_IDRAC_IP}
racadm="sshpass -e ssh -oStrictHostKeyChecking=no ${IDRACUSER}@${IDRACIP} racadm"
$racadm remoteimage -d
$racadm remoteimage -c -u "foo" -p "bar" -l ${URL}/bootstrap.iso
$racadm jobqueue delete -i JID_CLEARALL
$racadm set BIOS.OneTimeBoot.OneTimeBootMode OneTimeBootSeq
$racadm set BIOS.OneTimeBoot.OneTimeBootSeqDev Optical.iDRACVirtual.1-1
$racadm jobqueue create BIOS.Setup.1-1 -r pwrcycle

Install hosts

install_host(){
  racadm="sshpass -e ssh -oStrictHostKeyChecking=no ${IDRACUSER}@${IDRACIP} racadm"
  $racadm remoteimage -d
  $racadm remoteimage -c -u "foo" -p "bar" -l ${URL}/${NODE}.iso
  $racadm jobqueue delete -i JID_CLEARALL
  $racadm set BIOS.OneTimeBoot.OneTimeBootMode OneTimeBootSeq
  $racadm set BIOS.OneTimeBoot.OneTimeBootSeqDev Optical.iDRACVirtual.1-1
  $racadm jobqueue create BIOS.Setup.1-1 -r pwrcycle
}

# Masters
export IDRACIP=${MASTER0_IDRAC_IP}
export NODE='master-0'
install_host

export IDRACIP=${MASTER1_IDRAC_IP}
export NODE='master-1'
install_host

export IDRACIP=${MASTER2_IDRAC_IP}
export NODE='master-2'
install_host

# Workers
export IDRACIP=${WORKER0_IDRAC_IP}
export NODE='worker-0'
install_host

After a while, the hosts will be running RHCOS, then wait until the bootstrap process ends:

openshift-install --dir=$(readlink -f ~/ocp-clusters/${CLUSTER_NAME}) --log-level debug \
  wait-for bootstrap-complete

Then, wait until the install is complete:

openshift-install --dir=$(readlink -f ~/ocp-clusters/${CLUSTER_NAME}) --log-level debug \
  wait-for install-complete

WARNING: The installation won't finish until the image registry has been deployed. As there is no storage available, emptydir will be used (not recommended for production!!!):

oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"storage":{"emptyDir":{}}}}'

<< Previous: Configure oc command | README | Next: Post installation >>