The Pre-Install Toolkit (PIT) node needs to be bootstrapped from the LiveCD. There are two media available to bootstrap the PIT node: the RemoteISO or a bootable USB device. This procedure describes using the USB device. If not using the USB device, see Bootstrap Pit Node from LiveCD Remote ISO.
There are 5 overall steps that provide a bootable USB with SSH enabled, capable of installing Shasta v1.5 (or higher).
Fetch the base installation CSM tarball, extract it, and install the contained CSI tool.
Set up the initial typescript.
linux# cd ~
linux# script -af csm-install-usb.$(date +%Y-%m-%d).txt
linux# export PS1='\u@\H \D{%Y-%m-%d} \t \w # '
Download and expand the CSM software release.
Important: In order to ensure that the CSM release plus any patches, workarounds, or hot fixes are included, follow the instructions in Update CSM Product Stream
Important: Download to a location that has sufficient space for both the tarball and the expanded tarball.
Note: Expansion of the tarball may take more than 45 minutes.
The rest of this procedure will use the CSM_RELEASE variable and expects to have the
contents of the CSM software release tarball plus any patches, workarounds, or hot fixes.
linux# CSM_RELEASE=csm-x.y.z
linux# echo $CSM_RELEASE
linux# tar -zxvf ${CSM_RELEASE}.tar.gz
linux# ls -l ${CSM_RELEASE}
linux# CSM_PATH=$(pwd)/${CSM_RELEASE}
The ISO and other files are now available in the directory from the extracted CSM tarball.
Install the latest version of CSI tool.
linux# rpm -Uvh --force $(find ${CSM_PATH}/rpm/cray/csm/ -name "cray-site-init-*.x86_64.rpm" | sort -V | tail -1)
Download and install/upgrade the workaround and documentation RPMs. If this machine does not have direct internet access these RPMs will need to be externally downloaded and then copied to this machine.
Important: In order to ensure that the latest workarounds and documentation updates are available, see Check for Latest Workarounds and Documentation Updates
Show the version of CSI installed.
linux# csi version
Expected output looks similar to the following:
CRAY-Site-Init build signature...
Build Commit : b3ed3046a460d804eb545d21a362b3a5c7d517a3-release-shasta-1.4
Build Time : 2021-02-04T21:05:32Z
Go Version : go1.14.9
Git Version : b3ed3046a460d804eb545d21a362b3a5c7d517a3
Platform : linux/amd64
App. Version : 1.5.18
Configure zypper with the embedded repository from the CSM release.
linux# zypper ar -fG "${CSM_PATH}/rpm/embedded" "${CSM_RELEASE}-embedded"
Install Podman or Docker to support container tools required to generate sealed secrets.
Podman RPMs are included in the embedded repository in the CSM release and
may be installed in your pre-LiveCD environment using zypper as follows:
Install podman and podman-cni-config packages:
linux# zypper in --repo ${CSM_RELEASE}-embedded -y podman podman-cni-config
Alternatively, you may use rpm -Uvh to install RPMs (and their dependencies) manually
from the ${CSM_PATH}/rpm/embedded directory.
linux# rpm -Uvh ${CSM_PATH}/rpm/embedded/suse/SLE-Module-Containers/15-SP2/x86_64/update/podman-*.x86_64.rpm
linux# rpm -Uvh ${CSM_PATH}/rpm/embedded/suse/SLE-Module-Containers/15-SP2/x86_64/update/podman-cni-config-*.noarch.rpm
Install lsscsi to view attached storage devices.
lsscsi RPMs are included in the embedded repository in the CSM release and
may be installed in your pre-LiveCD environment using zypper as follows:
Install lsscsi package:
linux# zypper in --repo ${CSM_RELEASE}-embedded -y lsscsi
Alternatively, you may use rpm -Uvh to install RPMs (and their dependencies) manually
from the ${CSM_PATH}/rpm/embedded directory.
linux# rpm -Uvh ${CSM_PATH}/rpm/embedded/suse/SLE-Module-Basesystem/15-SP2/x86_64/product/lsscsi-*.x86_64.rpm
Although not strictly required, the procedures for setting up the
site-init directory recommend persisting site-init files in a Git
repository.
Git RPMs are included in the embedded repository in the CSM release and
may be installed in your pre-LiveCD environment using zypper as follows:
Install git package:
linux# zypper in --repo ${CSM_RELEASE}-embedded -y git
Alternatively, you may use rpm -Uvh to install RPMs (and their dependencies) manually
from the ${CSM_PATH}/rpm/embedded directory.
linux# rpm -Uvh ${CSM_PATH}/rpm/embedded/suse/SLE-Module-Basesystem/15-SP2/x86_64/update/x86_64/git-core-*.x86_64.rpm
linux# rpm -Uvh ${CSM_PATH}/rpm/embedded/suse/SLE-Module-Development-Tools/15-SP2/x86_64/update/x86_64/git-*.x86_64.rpm
Cray site-init will create the bootable LiveCD. Before creating the media, identify
which device will be used for it.
Identify the USB device.
This example shows the USB device is /dev/sdd on the host.
linux# lsscsi
Expected output looks similar to the following:
[6:0:0:0] disk ATA SAMSUNG MZ7LH480 404Q /dev/sda
[7:0:0:0] disk ATA SAMSUNG MZ7LH480 404Q /dev/sdb
[8:0:0:0] disk ATA SAMSUNG MZ7LH480 404Q /dev/sdc
[14:0:0:0] disk SanDisk Extreme SSD 1012 /dev/sdd
[14:0:0:1] enclosu SanDisk SES Device 1012 -
In the above example, internal disks are the ATA devices and USB drives are final two devices.
Set a variable with your disk to avoid mistakes:
linux# USB=/dev/sd<disk_letter>
Format the USB device.
On Linux, use the CSI application to do this:
linux# csi pit format $USB ${CSM_PATH}/cray-pre-install-toolkit-*.iso 50000
Note: If the previous command fails with the following error message, it indicates that this Linux computer does not have the
checkmediaRPM installed. In that case, install the RPM and runcsi pit formatagain.ERROR: Unable to validate ISO. Please install checkmedia
- Install the missing RPMs
linux# zypper in --repo ${CSM_RELEASE}-embedded -y libmediacheck5 checkmedia linux# csi pit format ${USB} ${CSM_PATH}/cray-pre-install-toolkit-*.iso 50000
On MacOS, use the write-livecd.sh script to do this:
macos# ./cray-site-init/write-livecd.sh $USB ${CSM_PATH}/cray-pre-install-toolkit-*.iso 50000
NOTE: At this point the USB device is usable in any server with an x86_64 architecture based CPU. The remaining steps help add the installation data and enable SSH on boot.
Mount the configuration and persistent data partition:
linux# mkdir -pv /mnt/{cow,pitdata}
linux# mount -vL cow /mnt/cow && mount -vL PITDATA /mnt/pitdata
Copy and extract the tarball into the USB.
linux# cp -v ${CSM_PATH}.tar.gz /mnt/pitdata/
linux# tar -zxvf ${CSM_PATH}.tar.gz -C /mnt/pitdata/
The USB device is now bootable and contains the CSM artifacts. This may be useful for internal or quick usage. Administrators seeking a Shasta installation must continue on to the configuration payload.
The SHASTA-CFG structure and other configuration files will be prepared, then csi will generate a system-unique configuration payload. This payload will be used
for the rest of the CSM installation on the USB device.
site-initFollow the workaround instructions for the before-configuration-payload breakpoint.
Some files are needed for generating the configuration payload. See these topics in Prepare Configuration Payload if the information for this system has not yet been prepared.
Note:: The USB device is usable at this time, but without SSH enabled as well as core services. This means the USB device could be used to boot the system now, and this step can be returned to at another time.
At this time see Create HMN Connections JSON for instructions about creating the hmn_connections.json.
Change into the preparation directory:
linux# mkdir -pv /mnt/pitdata/prep
linux# cd /mnt/pitdata/prep
Pull these files into the current working directory:
application_node_config.yaml (optional - see below)cabinets.yaml (optional - see below)hmn_connections.jsonncn_metadata.csvswitch_metadata.csvsystem_config.yaml (only available after first-install generation of system filesThe optional
application_node_config.yamlfile may be provided for further definition of settings relating to how application nodes will appear in HSM for roles and subroles. See Create Application Node YAMLThe optional
cabinets.yamlfile allows cabinet naming and numbering as well as some VLAN overrides. See Create Cabinets YAML.The
system_config.yamlfile is generated by thecsitool during the first install of a system, and can later be used for reinstalls of the system. For the initial install, the information in it must be provided as command line arguments tocsi config init.
For subsequent fresh-installs (re-installs) where the system_config.yaml parameter file is available, generate the updated system configuration
(see Cray site-init Files).
Warning: If the
system_config.yamlfile is unavailable, then skip this step and proceed to Initial Installs (bare-metal).
Check for the configuration files. The needed files should be in the preparation directory.
linux# ls -1
Expected output looks similar to the following:
application_node_config.yaml
cabinets.yaml
hmn_connections.json
ncn_metadata.csv
switch_metadata.csv
system_config.yaml
Set an environment variable so this system name can be used in later commands.
linux# export SYSTEM_NAME=eniac
Generate the system configuration.
Note: Ensure that you specify a reachable NTP pool or server using the
ntp-poolsorntp-serversfields, respectively. Adding an unreachable server can cause clock skew aschronytries to continually reach out to a server it can never reach.
linux# csi config init
A new directory matching your --system-name argument will now exist in your working directory.
Note: These warnings from
csi config initfor issues inhmn_connections.jsoncan be ignored.
The node with the external connection (
ncn-m001) will have a warning similar to this because its BMC is connected to the site and not the HMN like the other management NCNs. It can be ignored."Couldn't find switch port for NCN: x3000c0s1b0"An unexpected component may have this message. If this component is an application node with an unusual prefix, it should be added to the
application_node_config.yamlfile. Then reruncsi config init. See the procedure to Create Application Node Config YAML.{"level":"warn","ts":1610405168.8705149,"msg":"Found unknown source prefix! If this is expected to be an Application node, please update application_node_config.yaml","row": {"Source":"gateway01","SourceRack":"x3000","SourceLocation":"u33","DestinationRack":"x3002","DestinationLocation":"u48","DestinationPort":"j29"}}If a cooling door is found in
hmn_connections.json, there may be a message like the following. It can be safely ignored.{"level":"warn","ts":1612552159.2962296,"msg":"Cooling door found, but xname does not yet exist for cooling doors!","row": {"Source":"x3000door-Motiv","SourceRack":"x3000","SourceLocation":" ","DestinationRack":"x3000","DestinationLocation":"u36","DestinationPort":"j27"}}
Skip the next step and continue with the CSI Workarounds.
If doing a first time install or the system_config.yaml parameter file for a reinstall is not available, generate the system configuration.
If doing a first time install, this step is required. If you did the previous step as part of a reinstall, skip this.
Check for the configuration files. The needed files should be in the current directory.
linux# ls -1
Expected output looks similar to the following:
application_node_config.yaml
cabinets.yaml
hmn_connections.json
ncn_metadata.csv
switch_metadata.csv
Set an environment variable so this system name can be used in later commands.
linux# export SYSTEM_NAME=eniac
Generate the system configuration.
Notes:
- Run
csi config init --helpto print a full list of parameters that must be set. These will vary significantly depending on the system and site configuration.- Ensure that you specify a reachable NTP pool or server using the
--ntp-poolsor--ntp-serversflags, respectively. Adding an unreachable server can cause clock skew aschronytries to continually reach out to a server it can never reach.
linux# csi config init <options>
A new directory matching your --system-name argument will now exist in your working directory.
Important: After generating a configuration, a visual audit of the generated files for network data should be performed.
Special Notes: Certain parameters to
csi config initmay be hard to grasp on first-time configuration generations:
- The optional
application_node_config.yamlfile is used to map prefixes inhmn_connections.csvto HSM subroles. A command line option is required in order forcsito use the file. See Create Application Node YAML.- The
bootstrap-ncn-bmc-userandbootstrap-ncn-bmc-passmust match what is used for the BMC account and its password for the management NCNs.- Set site parameters (
site-domain,site-ip,site-gw,site-nic,site-dns) for the network information which connectsncn-m001(the PIT node) to the site. Thesite-nicis the interface onncn-m001that is connected to the site network.- There are other interfaces possible, but the
install-ncn-bond-membersare typically:
p1p1,p10p1for HPE nodesp1p1,p1p2for Gigabyte nodesp801p1,p801p2for Intel nodes- If not using a
cabinets-yamlfile, then set the three cabinet parameters (mountain-cabinets,hill-cabinets, andriver-cabinets) to the quantity of each cabinet type included in this system.- The starting cabinet number for each type of cabinet (for example,
starting-mountain-cabinet) has a default that can be overridden. See thecsi config init --help.- For systems that use non-sequential cabinet ID numbers, use the
cabinets-yamlargument to include thecabinets.yamlfile. This file gives the ability to explicitly specify the ID of every cabinet in the system. When specifying acabinets.yamlfile with thecabinets-yamlargument, other command line arguments related to cabinets will be ignored bycsi. See Create Cabinets YAML.- An override to default cabinet IPv4 subnets can be made with the
hmn-mtn-cidrandnmn-mtn-cidrparameters.- By default, spine switches are used as MetalLB peers. Use
--bgp-peers aggregationto use aggregation switches instead.- Several parameters (
can-gateway,can-cidr,can-static-pool,can-dynamic-pool) describe the CAN (Customer Access network). Thecan-gatewayis the common gateway IP address used for both spine switches and commonly referred to as the Virtual IP address for the CAN. Thecan-cidris the IP subnet for the CAN assigned to this system. Thecan-static-poolandcan-dynamic-poolare the MetalLB address static and dynamic pools for the CAN. Thecan-external-dnsis the static IP address assigned to the DNS instance running in the cluster to which requests the cluster subdomain will be forwarded. Thecan-external-dnsIP address must be within thecan-static-poolrange.- Set
ntp-poolsto reachable NTP poolsNote: These warnings from
csi config initfor issues inhmn_connections.jsoncan be ignored.
The node with the external connection (
ncn-m001) will have a warning similar to this because its BMC is connected to the site and not the HMN like the other management NCNs. It can be ignored."Couldn't find switch port for NCN: x3000c0s1b0"An unexpected component may have this message. If this component is an application node with an unusual prefix, it should be added to the
application_node_config.yamlfile. Then reruncsi config init. See the procedure to Create Application Node Config YAML.{"level":"warn","ts":1610405168.8705149,"msg":"Found unknown source prefix! If this is expected to be an Application node, please update application_node_config.yaml","row": {"Source":"gateway01","SourceRack":"x3000","SourceLocation":"u33","DestinationRack":"x3002","DestinationLocation":"u48","DestinationPort":"j29"}}If a cooling door is found in
hmn_connections.json, there may be a message like the following. It can be safely ignored.{"level":"warn","ts":1612552159.2962296,"msg":"Cooling door found, but xname does not yet exist for cooling doors!","row": {"Source":"x3000door-Motiv","SourceRack":"x3000","SourceLocation":" ","DestinationRack":"x3000","DestinationLocation":"u36","DestinationPort":"j27"}}
Link the generated system_config.yaml file into the prep/ directory. This is needed for pit-init to find and resolve the file.
NOTEThis step is needed only for fresh installs wheresystem_config.yamlis missing from theprep/directory.
linux# cd ${PITDATA}/prep && ln ${SYSTEM_NAME}/system_config.yaml
Continue to the next step to apply the csi-config workarounds.
Follow the workaround instructions for the csi-config breakpoint.
site-initFollow the procedures to Prepare site-init directory for your system.
Now that the configuration is generated, the next step is to populate the LiveCD with the generated files. This will enable SSH, and other services when the LiveCD starts.
Set system name.
linux# export SYSTEM_NAME=eniac
Use CSI to populate the LiveCD with networking files so SSH will work on the first boot.
linux# cd /mnt/pitdata/prep && csi pit populate cow /mnt/cow/ ${SYSTEM_NAME}/
Expected output looks similar to the following:
config------------------------> /mnt/cow/rw/etc/sysconfig/network/config...OK
ifcfg-bond0-------------------> /mnt/cow/rw/etc/sysconfig/network/ifcfg-bond0...OK
ifcfg-lan0--------------------> /mnt/cow/rw/etc/sysconfig/network/ifcfg-lan0...OK
ifcfg-vlan002-----------------> /mnt/cow/rw/etc/sysconfig/network/ifcfg-vlan002...OK
ifcfg-vlan004-----------------> /mnt/cow/rw/etc/sysconfig/network/ifcfg-vlan004...OK
ifcfg-vlan007-----------------> /mnt/cow/rw/etc/sysconfig/network/ifcfg-vlan007...OK
ifroute-lan0------------------> /mnt/cow/rw/etc/sysconfig/network/ifroute-lan0...OK
ifroute-vlan002---------------> /mnt/cow/rw/etc/sysconfig/network/ifroute-vlan002...OK
CAN.conf----------------------> /mnt/cow/rw/etc/dnsmasq.d/CAN.conf...OK
HMN.conf----------------------> /mnt/cow/rw/etc/dnsmasq.d/HMN.conf...OK
NMN.conf----------------------> /mnt/cow/rw/etc/dnsmasq.d/NMN.conf...OK
mtl.conf----------------------> /mnt/cow/rw/etc/dnsmasq.d/mtl.conf...OK
statics.conf------------------> /mnt/cow/rw/etc/dnsmasq.d/statics.conf...OK
conman.conf-------------------> /mnt/cow/rw/etc/conman.conf...OK
Set the hostname and print it into the hostname file.
Note: Do not confuse other administrators by naming the LiveCD
ncn-m001. Append the-pitsuffix, indicating that the node is booted from the LiveCD.
linux# echo "${SYSTEM_NAME}-ncn-m001-pit" >/mnt/cow/rw/etc/hostname
Unmount the Overlay, we are done with it.
linux# umount -v /mnt/cow
Make necessary directories.
linux# mkdir -pv /mnt/pitdata/configs/ /mnt/pitdata/data/{k8s,ceph}/
Copy basecamp data.
linux# csi pit populate pitdata ${SYSTEM_NAME} /mnt/pitdata/configs -b
Expected output looks similar to the following:
data.json---------------------> /mnt/pitdata/configs/data.json...OK
Update CA Cert on the copied data.json file. Provide the path to the data.json, the path to
our customizations.yaml, and finally the sealed_secrets.key
linux# csi patch ca \
--cloud-init-seed-file /mnt/pitdata/configs/data.json \
--customizations-file /mnt/pitdata/prep/site-init/customizations.yaml \
--sealed-secret-key-file /mnt/pitdata/prep/site-init/certs/sealed_secrets.key
Copy Kubernetes artifacts:
linux# csi pit populate pitdata "${CSM_PATH}/images/kubernetes/" /mnt/pitdata/data/k8s/ -kiK
Expected output looks similar to the following:
5.3.18-24.37-default-0.0.6.kernel-----------------> /mnt/pitdata/data/k8s/...OK
initrd.img-0.0.6.xz-------------------------------> /mnt/pitdata/data/k8s/...OK
kubernetes-0.0.6.squashfs-------------------------> /mnt/pitdata/data/k8s/...OK
Copy Ceph/storage artifacts:
linux# csi pit populate pitdata "${CSM_PATH}/images/storage-ceph/" /mnt/pitdata/data/ceph/ -kiC
Expected output looks similar to the following:
5.3.18-24.37-default-0.0.5.kernel-----------------> /mnt/pitdata/data/ceph/...OK
initrd.img-0.0.5.xz-------------------------------> /mnt/pitdata/data/ceph/...OK
storage-ceph-0.0.5.squashfs-----------------------> /mnt/pitdata/data/ceph/...OK
Quit the typescript session with the exit command and copy the file (csm-install-usb.<date>.txt) to the data partition on the USB drive.
linux# mkdir -pv /mnt/pitdata/prep/admin
linux# exit
linux# cp ~/csm-install-usb.*.txt /mnt/pitdata/prep/admin
Unmount the data partition:
linux# cd ~ && umount -v /mnt/pitdata
Now the USB device may be reattached to the management node, or if it was made on the management node then it can now reboot into the LiveCD.
Some systems will boot the USB device automatically if no other OS exists (bare-metal). Otherwise the administrator may need to use the BIOS Boot Selection menu to choose the USB device.
If an administrator has the node booted with an operating system which will next be rebooting into the LiveCD, then use efibootmgr to set the boot order to be the USB device.
See the set boot order page for more information about how to set the boot order to have the USB device first.
UEFI booting must be enabled to find the USB device’s EFI bootloader.
Start a typescript on an external system, such as a laptop or Linux system, to record this section of activities done on the console of ncn-m001 via IPMI.
external# script -a boot.livecd.$(date +%Y-%m-%d).txt
external# export PS1='\u@\H \D{%Y-%m-%d} \t \w # '
Confirm that the IPMI credentials work for the BMC by checking the power status.
external# export SYSTEM_NAME=eniac
external# USERNAME=root
external# export IPMI_PASSWORD=changeme
external# ipmitool -I lanplus -U $USERNAME -E -H ${SYSTEM_NAME}-ncn-m001-mgmt chassis power status
Connect to the IPMI console.
external# ipmitool -I lanplus -U $USERNAME -E -H ${SYSTEM_NAME}-ncn-m001-mgmt sol activate
ncn-m001#
Reboot
ncn-m001# reboot
Watch the shutdown and boot from the ipmitool session to the console terminal.
The typescript can be discarded, otherwise if issues arise then it should be submitted with the bug report.
An integrity check runs before Linux starts by default, it can be skipped by selecting “OK” in its prompt.
On first login (over SSH or at local console) the LiveCD will prompt the administrator to change the password.
The initial password is empty; set the username of root and press return twice:
pit login: root
Expected output looks similar to the following:
Password: <-------just press Enter here for a blank password
You are required to change your password immediately (administrator enforced)
Changing password for root.
Current password: <------- press Enter here, again, for a blank password
New password: <------- type new password
Retype new password:<------- retype new password
Welcome to the CRAY Pre-Install Toolkit (LiveOS)
Note: If this password ever becomes lost or forgotten, one may reset it by mounting the USB device on another computer. See Reset root Password on LiveCD for information on clearing the password.
Disconnect from IPMI console.
Once the network is up so that SSH to the node works, disconnect from the IPMI console.
You can disconnect from the IPMI console by using the “~.”, that is, the tilde character followed by a period character.
Log in via ssh to the node as root.
external# ssh root@${SYSTEM_NAME}-ncn-m001
pit#
Note: The hostname should be similar to eniac-ncn-m001-pit when booted from the LiveCD, but it will be shown as pit# in the command prompts from this point onward.
Mount the data partition
The data partition is set to
fsopt=noautoto facilitate LiveCDs over virtual-ISO mount. USB installations need to mount this manually.
pit# mount -vL PITDATA
Start a typescript to record this section of activities done on ncn-m001 while booted from the LiveCD.
pit# mkdir -pv /var/www/ephemeral/prep/admin
pit# script -af /var/www/ephemeral/prep/admin/booted-csm-livecd.$(date +%Y-%m-%d).txt
pit# export PS1='\u@\H \D{%Y-%m-%d} \t \w # '
Download and install/upgrade the workaround and documentation RPMs.
If this machine does not have direct Internet access these RPMs will need to be externally downloaded and then copied to the system.
Important: In an earlier step, the CSM release plus any patches, workarounds, or hot fixes were downloaded to a system using the instructions in Check for Latest Workarounds and Documentation Updates. Use that set of RPMs rather than downloading again.
linux# wget https://storage.googleapis.com/csm-release-public/shasta-1.5/docs-csm/docs-csm-latest.noarch.rpm
linux# wget https://storage.googleapis.com/csm-release-public/shasta-1.5/csm-install-workarounds/csm-install-workarounds-latest.noarch.rpm
linux# scp -p docs-csm-*rpm csm-install-workarounds-*rpm ncn-m001:/root
linux# ssh ncn-m001
pit# rpm -Uvh --force docs-csm-latest.noarch.rpm
pit# rpm -Uvh --force csm-install-workarounds-latest.noarch.rpm
Check the pit-release version.
pit# cat /etc/pit-release
Expected output looks similar to the following:
VERSION=1.4.9
TIMESTAMP=20210309034439
HASH=g1e67449
Perform first login workarounds.
Follow the workaround instructions for the first-livecd-login breakpoint.
Start services.
pit# systemctl start nexus
pit# systemctl start basecamp
pit# systemctl start conman
Set shell environment variables.
The CSM_RELEASE and CSM_PATH variables will be used later.
pit# cd /var/www/ephemeral
pit# export CSM_RELEASE=csm-x.y.z
pit# echo $CSM_RELEASE
pit# export CSM_PATH=$(pwd)/${CSM_RELEASE}
pit# echo $CSM_PATH
Install Goss tests.
The following assumes the CSM_PATH environment variable is set to the absolute path of the unpacked CSM release.
pit# rpm -Uvh --force $(find ${CSM_PATH}/rpm/ -name "csm-testing*.rpm" | sort -V | tail -1) $(find ${CSM_PATH}/rpm/ -name "hpe-csm-goss-package*.rpm" | sort -V | tail -1)
Verify the system.
pit# csi pit validate --network
pit# csi pit validate --services
If
dnsmasqis dead, then restart it withsystemctl restart dnsmasq.In addition, the final output from validating the services should have information about the Nexus and
basecampcontainers/images, similar this example.
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ff7c22c6c6cb dtr.dev.cray.com/sonatype/nexus3:3.25.0 sh -c ${SONATYPE_... 3 minutes ago Up 3 minutes ago nexus
c7638b573b93 dtr.dev.cray.com/cray/metal-basecamp:1.1.0-1de4aa6 5 minutes ago Up 5 minutes ago basecamp
Follow directions in the output from the csi pit validate commands for failed validations before continuing.
After completing this procedure, the next step is to configure the management network switches.