Multi-Tenancy Configuration Files#

Note

Multi-tenant cluster features are only available if you have paid for multi-tenant support. Contact Penguin Computing to learn more.

You can change the default configuration of tenancies during initial installation and configuration of ICE ClusterWare ™ multi-tenancy. Changing tenancy configuration defaults is optional.

Default values are managed in the following files:

  • /opt/scyld/clusterware-multitenancy/examples/mtconfig.json: Contains values for tenancy network and infrastructure creation, including:

    • Number of PKeys, VLANs, and VNIs

    • Ranges for PKeys, VLANs, and VNIs

    • Infrastructure node configuration

  • /opt/scyld/clusterware-multitenancy/examples/node-mtshapes.json: Contains tenancy compute node selection criteria.

To modify the default values, edit one or both of these example files and use them as an optional input to the setup-for-mt script. See Run Multi-Tenancy Setup Script.

Update Tenancy Network Configuration#

The tenancies section of the mtconfig.json file contains default values for network isolation. PKeys are used for InfiniBand network switch partitions and VLANs and VNIs are used for Sonic Ethernet switches.

Currently, only 1 PKey, VLAN, and VNI is supported for each tenancy.

Use caution when updating the PKey, VLAN, and VNI value ranges to make sure there are not any collisions.

Update Tenancy Infrastructure Node Configuration#

During tenancy creation, virtual machines are configured for a head node, gateway node, Slurm node, health check scheduler node (Sensu), and login node. You can update the default configuration of the virtual machines to designate values for VCPUs, RAM, and storage (head node only) in the terraform section of the mtconfig.json file.

For example, you can increase the storage on the head node and the RAM on the login node:

"terraform": {
    "head": {
        "vcpus": 4,
        "ram_gb": 16,
        "storage_gb": 32
    },
    "gateway": {
        "vcpus": 4,
        "ram_gb": 16,
        "storage_gb": 8
    },
    "slurm": {
        "vcpus": 4,
        "ram_gb": 16,
        "storage_gb": 8
    },
    "sensu": {
        "vcpus": 4,
        "ram_gb": 16,
        "storage_gb": 8
    },
    "login": {
        "vcpus": 4,
        "ram_gb": 32,
        "storage_gb": 8
    }
},

If you adjust any values in the mtconfig.json file, the same changes must be made in the Terraform file used to create tenancies. See Tenancy Terraform File Requirements for details.

Update Compute Node Selection Criteria#

Tenancy compute nodes are selected based on criteria specified as a state map in the node-mtshapes.json file. The only default selection criteria is that compute nodes must exist within the ClusterWare software and be bare metal nodes. You can update the state map in the node-mtshapes.json file to select nodes based on additional criteria. See State Maps and Node Selectors for details.

If you rename the state map in the node-mtshapes.json file, the same name must be specified in the Terraform file used to create tenancies. See Tenancy Terraform File Requirements for details.

Important

Do not change the name of the node-mtshapes.json file or your configuration changes will not be used.