Input parameters for the cluster

These parameters are located in input/omnia_config.yml, input/security_config.yml and [optional] input/storage_config.yml.

Caution

Do not remove or comment any lines in the input/omnia_config.yml, input/security_config.yml and [optional] input/storage_config.yml file.

omnia_config.yml

Parameters

Variables

Details

scheduler_type

string

Required

  • Job scheduler to be installed across all nodes in the cluster*

  • To install slurm provide scheduler_type: "slurm"

  • To install k8s provide scheduler_type: "k8s"

  • To install slurm and k8s provide scheduler_type: "slurm,k8s"

Default value: "slurm"

mariadb_password

string

Optional

  • Password used for Slurm database.

  • The password must not contain -,, ‘,”

  • The Length of the password should be at least 8.

  • Required when scheduler_type: "slurm".

    Default value: "password"

k8s_version

string

Optional

  • Kubernetes version.

  • Required when scheduler_type: "k8s"

    Choices:

    • "1.19.3" <- default

    • " 1.16.7"

k8s_cni

string

Optional

  • Kubernetes SDN network.

  • Required when scheduler_type: "k8s"

    Choices:

    • "calico" <- default

    • "flannel"

k8s_pod_network_cidr

string

Optional

  • Kubernetes pod network CIDR.

  • Make sure this value does not overlap with any of the host networks.

  • Required when scheduler_type: "k8s"

    Default values: "10.244.0.0/16"

docker_username

string

Optional

  • Username for Dockerhub account

  • A kubernetes secret will be created and patched to service account in default namespace. This kubernetes secret can be used to pull images from private repositories

  • This value is optional but suggested avoiding docker pull limit issues

docker_password

string

Optional

  • Password for Dockerhub account

  • This value is mandatory if docker username is provided

ansible_config_file_path

string

Required

  • Path to directory hosting ansible config file (ansible.cfg file)

  • This directory is on the host running ansible, if ansible is installed using dnf

  • If ansible is installed using pip, this path should be set

    Default values: /etc/ansible

enable_omnia_nfs

boolean

Required

  • Boolean indicating whether a parallel file system is not running in the environment and a share file system (NFS/BeeGFS) will be used to create home directory/ Kubernetes share directory on it.

  • When this variable is true, Omnia will create its own NFS share and mount omnia_usrhome_share on all the nodes.

    Choices:

    • true <- default

    • false

omnia_usrhome_share

string

Required

  • Path to directory which will be shared across all nodes in the cluster.

  • If enable_omnia_nfs: true, NFS share will be created at path mentioned below.

  • If enable_omnia_nfs: false, set this variable as path to parallel file system(NFS/BeeGFS) running in the system.

Default value: “/home/omnia-share”

security_config.yml

Parameter

Details

freeipa_required

boolean Optional

Boolean indicating whether FreeIPA is required or not.

Choices:

  • true <- Default

  • false

realm_name

string Optional

Sets the intended realm name.

Default values: OMNIA.TEST

directory_manager_password

string Optional

Password authenticating admin level access to the Directory for system management tasks. It will be added to the instance of directory server created for IPA.Required Length: 8 characters. The password must not contain -,, ‘,”

kerberos_admin_password

string Optional

“admin” user password for the IPA server on RockyOS.

ldap_required

boolean Optional

Boolean indicating whether ldap client is required or not.

Choices:

  • false <- Default

  • true

domain_name

string Optional

Sets the intended domain name.

Default values: omnia.test

ldap_server_ip

string Optional

LDAP server IP. Required if ldap_required is true. There should be an explicit LDAP server running on this IP.

ldap_connection_type

string Optional

For a TLS connection, provide a valid certification path. For an SSL connection, ensure port 636 is open.

Default values: TLS

ldap_ca_cert_path

string Optional

This variable accepts Server Certificate Path. Make sure certificate is present in the path provided. The certificate should have .pem or .crt extension. This variable is mandatory if connection type is TLS.

Default values: /etc/openldap/certs/omnialdap.pem

user_home_dir

string Optional

This variable accepts the user home directory path for ldap configuration. If nfs mount is created for user home, make sure you provide the LDAP users mount home directory path.

Default values: /home

ldap_bind_username

string Optional

If LDAP server is configured with bind dn then bind dn user to be provided. If this value is not provided (when bind is configured in server) then ldap authentication fails. Omnia does not validate this input. Ensure that it is valid and proper.

Default values: admin

ldap_bind_password

string Optional

If LDAP server is configured with bind dn then bind dn password to be provided. If this value is not provided (when bind is configured in server) then ldap authentication fails. Omnia does not validate this input. Ensure that it is valid and proper.

enable_secure_login_node

boolean Optional

Boolean value deciding whether security features are enabled on the Login Node.

Choices:

  • false <- Default

  • true

storage_config.yml

Name

Details

nfs_client_params

JSON list Optional

If NFS client services are to be deployed, enter the configuration required here in JSON format. The server_ip provided should have an explicit NFS server running. If left blank, no NFS configuration takes place. Possible values include: 1. Single NFS file system: A single filesystem from a single NFS server is mounted.

Sample value: - { server_ip: xx.xx.xx.xx, server_share_path:   “/mnt/share”, client_share_path: “/mnt/client”, client_mount_options:   “nosuid,rw,sync,hard,intr” } 2. Multiple Mount NFS file system: Multiple filesystems from a single NFS server are mounted. Sample values:

- { server_ip: xx.xx.xx.xx, server_share_path: “/mnt/server1”,   client_share_path: “/mnt/client1”, client_mount_options:   “nosuid,rw,sync,hard,intr” } - { server_ip: xx.xx.xx.xx, server_share_path: “/mnt/server2”,   client_share_path: “/mnt/client2”, client_mount_options:   “nosuid,rw,sync,hard,intr” }

3. Multiple NFS file systems: Multiple filesystems are mounted from multiple servers. Sample Values: - { server_ip: zz.zz.zz.zz, server_share_path:   “/mnt/share1”, client_share_path: “/mnt/client1”, client_mount_options:   “nosuid,rw,sync,hard,intr”}

- { server_ip: xx.xx.xx.xx, server_share_path: “/mnt/share2”,   client_share_path: “/mnt/client2”, client_mount_options:   “nosuid,rw,sync,hard,intr”} - { server_ip: yy.yy.yy.yy, server_share_path: “/mnt/share3”,   client_share_path: “/mnt/client3”, client_mount_options:   “nosuid,rw,sync,hard,intr”}

Default value: { server_ip: ,   server_share_path: , client_share_path: , client_mount_options: }

beegfs_support

boolean Optional

This variable is used to install beegfs-client on compute and manager nodes

Choices:

  • false <- Default

  • true

beegfs_rdma_support

boolean Optional

This variable is used if user has RDMA-capable network hardware (e.g., InfiniBand)

Choices:

  • false <- Default

  • true

beegfs_ofed_kernel_modules_path

string Optional

The path where separate OFED kernel modules are installed.

Default value: "/usr/src/ofa_kernel/default/include"

beegfs_mgmt_server

string Required

BeeGFS management server IP. Note: The provided IP should have an explicit BeeGFS management server running .

beegfs_mounts

string Optional

Beegfs-client file system mount location. If storage_yml is being used to change the BeeGFS mounts location, set beegfs_unmount_client to true

Default value: “/mnt/beegfs”

beegfs_unmount_client

boolean Optional

Changing this value to true will unmount running instance of BeeGFS client and should only be used when decommisioning BeeGFS, changing the mount location or changing the BeeGFS version.

Choices:

  • false <- Default

  • true

beegfs_client_version

string Optional

Beegfs client version needed on compute and manager nodes.

Default value: 7.2.6

beegfs_version_change

boolean Optional

Use this variable to change the BeeGFS version on the target nodes.

Choices:

  • false <- Default

  • true

beegfs_secret_storage_filepath

string Required

  • The filepath (including the filename) where the connauthfile is placed.

  • Required for Beegfs version >= 7.2.7

    Default values: /home/connauthfile

Click here for more information on FreeIPA, LDAP, BeeGFS or, NFS.

Note

The input/omnia_config.yml file is encrypted on the first run of the provision tool:

To view the encrypted parameters:

ansible-vault view omnia_config.yml --vault-password-file .omnia_vault_key

To edit the encrypted parameters:

ansible-vault edit omnia_config.yml --vault-password-file .omnia_vault_key

If you have any feedback about Omnia documentation, please reach out at omnia.readme@dell.com.