- Download the Metalbox image osism-metalbox-image.zip.
Unzip the
osism-metalbox-image.zipfile. The unzipped file is namedosism-metalbox-image.raw. - Download the latest small Grml live ISO file.
When creating this document, the file name was
grml-small-2025.05-amd64.iso. - Download the SONiC export image
sonic-export.imgfrom the well known URL. You can also create this file locally by runningsonic-export.shinside a directory containing your SONiC images. - Export the NetBox configuration repository with
netbox-manager export-archive -i. When using a NetBox configuration repository provided by us, the filenetbox-export.imgcan be downloaded from GitHub after a trigger of theRun exportaction. - Download the Ironic images:
- If the Metalbox is to be used as an Ubuntu repository server for nodes inside the Cloudpod download ubuntu-noble.tar.bz2
- If the Metalbox is to be used as a container registry for nodes inside the Cloudpod download registry-full.tar.bz2
- If the Metalbox is to be used as a file server for nodes inside the Cloudpod download octavia-export-2024.2.img
- Use the
osism-metalbox-image.rawfile as virtual media (vHDD). - Use the
grml-small-2025.05-amd64.isofile as virtual media (vDVD) and boot it. - Write the Metalbox image with
dd if=/dev/sdc of=/dev/sda bs=4M status=progressto the first disk. Afterwards power off the node, remove all virtual media devices and power on the node again. - Import of the NetBox files.
- Use the
netbox-export.imgfile as virtual media (vHDD) and runnetbox-import.shto import the NetBox files. Afterwards remove the virtual media (vHDD). - OR Copy the
netbox-export.imgfile to/home/dragonand runmount-images.sh. Runnetbox-import.shto import the NetBox files. Afterwards rununmount-images.sh.
- Use the
- Run
deploy-netbox.shto deploy the NetBox service. - Run
netbox-manage.shto initialise the NetBox service. Note that this can take a couple of minutes to complete depending on the size of your installation. - Run
get-netbox-config.sh NODEto get the specific configuration for this Metalbox from the NetBox. ReplaceNODEwith the name of the Metalbox device in the NetBox. - Run
deploy-manager.shto deploy the OSISM manager service. - Run
osism sync inventoryto sync the inventory. - Run
osism apply hoststo sync the/etc/hostsfile. - Run
osism apply networkto sync the network configuration. - Run
osism apply frrto sync the FRR configuration. - Run
osism apply factsto sync the facts. - Run
osism apply chronyto sync the NTP configuration. - Use as Ubuntu repository server.
- If the Metalbox is to be used as an Ubuntu repository server for nodes inside the Cloudpod do all steps in "Using the Metalbox as an Ubuntu repository server".
- OR Disable the use of the Metalbox as repository server by running
disable-repository.sh.
- Import of the SONiC files.
- Use the file
sonic-export.imgas virtual media (vHDD) and rundeploy-sonic.shto deploy the SONiC ZTP services. Afterwards remove the virtual media (vHDD). - OR Copy the
sonic-export.imgfile to/home/dragonand runmount-images.sh. Rundeploy-sonic.shto deploy the SONiC ZTP services. Afterwards rununmount-images.sh.
- Use the file
- Run
deploy-infrastructure.shto deploy the infrastructure services. - Run
deploy-openstack.shto Deploy the OpenStack services. - Upload the Ironic image files to
/opt/httpd/data/root. - Run
osism sync ironicto sync the baremetal nodes. - Additional steps for air gap environments:
- If the Metalbox is to be used as a container registry for nodes inside the Cloudpod do all steps in "Using Metalbox as a full container registry".
- If the Metalbox is to be used as a file server for nodes inside the Cloudpod do all steps in "Using Metalbox as a file server".
- Download the Ubuntu repository archive ubuntu-noble.tar.bz2.
- Copy
ubuntu-noble.tar.bz2to/home/dragonon the Metalbox node. - Run
SKIP_DOWNLOAD=true update-repository.shto import the Ubuntu repository files. Note that this can take a couple of minutes to finish.
- Download registry-full.tar.bz2.
- Rename
registry-full.tar.bz2toregistry.tar.bz2. - Copy
registry.tar.bz2to/home/dragonon the Metalbox node. - Run
SKIP_DOWNLOAD=true update-registry.shto update the container registry. Note that this can take a couple of minutes to finish.
- Download the Octavia image export octavia-export-2024.2.img.
- Copy
octavia-export-2024.2.imgto/home/dragonon the Metalbox node. - Run
mount-images.shto mount theoctavia-export-2024.2.imgimage. - Run
octavia-import.shto import the Octavia image files. - Run
unmount-images.shto unmount theoctavia-export-2024.2.imgimage.
- Export the NetBox configuration repository with
netbox-manager export-archive -i. When using a NetBox configuration repository provided by us, the file can be downloaded from GitHub after a trigger of theRun exportaction. Copynetbox-export.imgto/home/dragonon the Metalbox node. - Run
mount-images.shto mount thenetbox-export.imgimage. - Run
netbox-import.shto sync the files in/opt/configuration/netbox. - Run
unmount-images.shto unmount thenetbox-export.imgimage. - Run
netbox-manage.shto sync netbox with the state in/opt/configuration/netbox.
It is also possible to update only the data from specific devices. To do this, the netbox-manager
can be used directly in the NetBox directory. In the following example, only files with the
prefix 300-node10 are processed.
cd /opt/configuration/netbox
netbox-manager run --limit 300-node10
- Download the Ironic images:
- Copy the downloaded files to
/home/dragonon the Metalbox node - Run
SKIP_DOWNLOAD=true update-ironic-images.shto update the Ironic images
- Run
update-ironic-images.shto update the Ironic images
- Download registry.tar.bz2
- Copy
registry.tar.bz2to/home/dragonon the Metalbox node - Run
SKIP_DOWNLOAD=true update-registry.shto update the container registry
- Run
update-registry.shto update the container registry
- Download ubuntu-noble.tar.bz2
- Copy
ubuntu-noble.tar.bz2to/home/dragonon the Metalbox node - Run
SKIP_DOWNLOAD=true update-repository.shto update the Ubuntu repository files
- Run
update-repository.shto update the Ubuntu repository
- The container registry must be updated first in order to receive service updates
- Run
update-manager.shto update the manager service
- The container registry must be updated first in order to receive a NetBox update
- Run
update-netbox.shto update the NetBox service
- The container registry must be updated first in order to receive infrastructure service updates
- Run
update-infrastructure.shto update the infrastructure services
- The container registry must be updated first in order to receive OpenStack service updates
- Run
update-openstack.shto update the OpenStack services
Replace registry.osism.tech/osism/inventory-reconciler:latest and registry-delta-YYYYMMDD-HHMM.tar.gz
as needed.
- Run
scripts/singe-image-export.sh registry.osism.tech/osism/inventory-reconciler:lateston a local system to create aregistry-delta-YYYYMMDD-HHMM.tar.gzfile - Copy
registry-delta-YYYYMMDD-HHMM.tar.gzto/home/dragonon the Metalbox node - Run
single-image-import.sh registry-delta-YYYYMMDD-HHMM.tar.gzon the Metalbox node to import the image