Skip to content

provision_config.yml

This file controls the provisioning behavior of the OIM, including PXE boot mapping, domain name, and OS image settings.

Parameter Reference

Parameter

Details

pxe_mapping_file_path

string / required

Enter the path where user has placed the PXE mapping CSV file that contains the node details for provisioning.

The file must follow the format: FUNCTIONAL_GROUP_NAME, GROUP_NAME, SERVICE_TAG, PARENT_SERVICE_TAG, HOSTNAME, ADMIN_MAC, ADMIN_IP, BMC_MAC, BMC_IP, IB_NIC_NAME, IB_IP.

Ensure that admin IPs given in mapping file are within the network defined in the network_spec.yml

A sample file is provided here: /omnia/examples/pxe_mapping_file.csv

language

string / required

Language to be used during OS provisioning.

Only supported value: en_US.UTF-8

default_lease_time

string / required

Default lease time for IPs assigned by DHCP. Unit: seconds.

Range: 21600-31536000

Default value: 86400

dns_enabled

boolean

Enable DNS-based hostname resolution for compute nodes using coresmd (CoreDNS + OpenCHAMI SMD plugin). When true, nodes use coresmd for hostname resolution instead of static /etc/hosts file management. DNS records are generated automatically from SMD inventory using the NID-based pattern. The cluster domain is read from OIM metadata (domain_name). When enabled, /etc/hosts is still populated from the PXE mapping file for custom hostnames (hybrid mode).

Default value: false

kernel_version_override

string

Pin a specific kernel version for boot image selection. Leave empty ("") to auto-select the latest available image from S3.

Example: 6.12.0-55.76.1.el10_0

Default value: ""

additional_cloud_init_config_file

string

Path to an external YAML file containing additional cloud-init directives (write_files and runcmd) to inject into the provisioning pipeline. Supports both cluster-wide (common) and per-functional-group (groups) customization. Leave empty to disable.

Default value: ""

Example: /opt/omnia/input/project_default/additional_cloud_init.yml

Usage example

File: /opt/omnia/input/project_default/provision_config.yml
---
pxe_mapping_file_path: "/opt/omnia/input/project_default/pxe_mapping_file.csv"
language: "en_US.UTF-8"
default_lease_time: "86400"
dns_enabled: false
kernel_version_override: ""
additional_cloud_init_config_file: ""

Note

The provision_password parameter is prompted during runtime. It is stored in an Ansible vault and is never written to provision_config.yml in plain text.

Info