- 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. Note that the exact names of the disks may vary depending on your server type, uselsblkto verify. 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/single-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