Skip to content

provision_config.yml Reference

File path: /opt/omnia/input/project_default/provision_config.yml

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

Provision Configuration Parameters

Parameter

Details

pxe_mapping_file_path

string / required

Path to the PXE mapping CSV file containing 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 admin IPs are within the network defined in network_spec.yml.

language

string / required

Language to be used during OS provisioning. Only supported value: en_US.UTF-8.

Default: en_US.UTF-8.

default_lease_time

string / required

Default lease time for IPs assigned by DHCP. Unit: seconds. Range: 21600-31536000. Default: 86400.

Default: 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. When enabled, /etc/hosts is still populated from the PXE mapping file for custom hostnames (hybrid mode). Default: false.

Default: 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: empty string.

Default: .

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: empty string.

Default: .

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