Preparing client platforms

You have to configure the platforms that you will provision. That entails creating a hardware model, CPU architecture, and operating system.

Compute profiles in orcharhino

You can predefine virtual machine hardware details such as CPUs, memory, and storage, by using compute profiles.

A default installation of orcharhino contains three predefined profiles:

  • 1-Small

  • 2-Medium

  • 3-Large

You can apply compute profiles to all supported compute resources. For supported compute resources, see the following information:

For information on creating a custom compute profile, see Creating compute profiles by using orcharhino management UI.

Creating an operating system for Ubuntu 26.04

Create an operating system in orcharhino to provision hosts running Ubuntu 26.04. This example creates an operating system entry for Ubuntu 26.04.

You can use a script to add operating system entries to your orcharhino Server.

On your orcharhino Server, uncomment the operating systems and orcharhino Client for Ubuntu that you want to add in /etc/orcharhino-ansible/or_operating_systems_vars.yaml, replace the default organization and location names, and run /opt/orcharhino/automation/play_operating_systems.sh. For more information, see /usr/share/orcharhino-ansible/README.md on your orcharhino Server.

Procedure
  1. In the orcharhino management UI, navigate to Hosts > Provisioning Setup > Operating Systems.

  2. Click Create Operating System to create an operating system entry for Ubuntu.

  3. Enter Ubuntu 26.04 as Name for the operating system. Choose a name as reported by Ansible, Puppet, or Salt as fact.

  4. Set the Major Version to 26.04.

  5. Leave the Minor Version field empty.

  6. Set the Release Name to resolute for Ubuntu 26.04.

  7. On the Partition Table tab, select the Preseed default autoinstall partition table.

  8. On the Templates tab, select the Preseed default finish template as Finish template, the Preseed default template as Provisioning Template, and the Preseed default PXELinux Autoinstall template as PXELinux template.

  9. On the Parameters tab, add the or_client_repo_url parameter, select the string type, and enter the value http://orcharhino.example.com/pulp/content/_My_Organization_/Library/custom/ubuntu_Client/ubuntu_Client_ubuntu/.

    If you want to provision hosts through orcharhino Proxy Servers, you have to use the or_client_repo_path parameter containing the Published At path of your content on orcharhino Server. orcharhino Proxy Server will add the FQDN of your orcharhino Proxy Server to generate the URL based on the content source setting of your host.

  10. Click Submit to save the operating system entry for Ubuntu.

Creating an operating system for Ubuntu 24.04

Create an operating system in orcharhino to provision hosts running Ubuntu 24.04. This example creates an operating system entry for Ubuntu 24.04.

You can use a script to add operating system entries to your orcharhino Server.

On your orcharhino Server, uncomment the operating systems and orcharhino Client for Ubuntu that you want to add in /etc/orcharhino-ansible/or_operating_systems_vars.yaml, replace the default organization and location names, and run /opt/orcharhino/automation/play_operating_systems.sh. For more information, see /usr/share/orcharhino-ansible/README.md on your orcharhino Server.

Procedure
  1. In the orcharhino management UI, navigate to Hosts > Provisioning Setup > Operating Systems.

  2. Click Create Operating System to create an operating system entry for Ubuntu.

  3. Enter Ubuntu 24.04 as Name for the operating system. Choose a name as reported by Ansible, Puppet, or Salt as fact.

  4. Set the Major Version to 24.04.

  5. Leave the Minor Version field empty.

  6. Set the Release Name to noble for Ubuntu 24.04.

  7. On the Partition Table tab, select the Preseed default autoinstall partition table.

  8. On the Templates tab, select the Preseed default finish template as Finish template, the Preseed default template as Provisioning Template, and the Preseed default PXELinux Autoinstall template as PXELinux template.

  9. On the Parameters tab, add the or_client_repo_url parameter, select the string type, and enter the value http://orcharhino.example.com/pulp/content/_My_Organization_/Library/custom/ubuntu_Client/ubuntu_Client_ubuntu/.

    If you want to provision hosts through orcharhino Proxy Servers, you have to use the or_client_repo_path parameter containing the Published At path of your content on orcharhino Server. orcharhino Proxy Server will add the FQDN of your orcharhino Proxy Server to generate the URL based on the content source setting of your host.

  10. Click Submit to save the operating system entry for Ubuntu.

Updating the details of multiple operating systems

Update multiple operating systems to assign partition tables, configuration templates, and provisioning templates by using a Bash script.

This example assigns each operating system a partition table called Preseed Autoinstall default, a configuration template called Preseed Autoinstall default PXELinux, and a provisioning template called Preseed Autoinstall Default.

Procedure
  1. On orcharhino Server, run the following Bash script:

    PARTID=$(hammer --csv partition-table list | grep "Preseed Autoinstall default," | cut -d, -f1)
    PXEID=$(hammer --csv template list --per-page=1000 | grep "Preseed Autoinstall default PXELinux" | cut -d, -f1)
    ORCHARHINO_ID=$(hammer --csv template list --per-page=1000 | grep "provision" | grep ",Preseed Autoinstall default" | cut -d, -f1)
    
    for i in $(hammer --no-headers --csv os list | awk -F, {'print $1'})
    do
       hammer partition-table add-operatingsystem --id="${PARTID}" --operatingsystem-id="${i}"
       hammer template add-operatingsystem --id="${PXEID}" --operatingsystem-id="${i}"
       hammer os set-default-template --id="${i}" --config-template-id=${PXEID}
       hammer os add-config-template --id="${i}" --config-template-id=${ORCHARHINO_ID}
       hammer os set-default-template --id="${i}" --config-template-id=${ORCHARHINO_ID}
    done
  2. Display information about the updated operating system to verify that the operating system is updated correctly:

    $ hammer os info --id 1

Creating architectures by using orcharhino management UI

You can group hosts and operating systems in orcharhino by creating custom architectures. orcharhino automatically creates architectures when hosts check in with Puppet, and x86_64 is already preset.

Procedure
  1. In the orcharhino management UI, navigate to Hosts > Provisioning Setup > Architectures.

  2. Click Create Architecture.

  3. In the Name field, enter a name for the architecture.

  4. From the Operating Systems list, select an operating system. If none are available, you can create and assign them under Hosts > Provisioning Setup > Operating Systems.

  5. Click Submit.

Creating architectures by using Hammer CLI

You can group hosts and operating systems in orcharhino by creating custom architectures. orcharhino automatically creates architectures when hosts check in with Puppet, and x86_64 is already preset.

Procedure
  • Create an architecture:

    $ hammer architecture create \
    --name "My_Architecture" \
    --operatingsystems "My_Operating_System"

Creating hardware models by using orcharhino management UI

Create a hardware model in orcharhino so that you can specify which hardware model a host uses.

Procedure
  1. In the orcharhino management UI, navigate to Hosts > Provisioning Setup > Hardware Models.

  2. Click Create Model.

  3. In the Name field, enter a name for the hardware model.

  4. Optionally, in the Hardware Model and Vendor Class fields, you can enter corresponding information for your system.

  5. In the Info field, enter a description of the hardware model.

  6. Click Submit to save your hardware model.

Creating hardware models by using Hammer CLI

Create a hardware model in orcharhino so that you can specify which hardware model a host uses.

Procedure
  • Create a hardware model:

    $ hammer model create \
    --hardware-model "My_Hardware_Model" \
    --info "My_Description" \
    --name "My_Hardware_Model_Name" \
    --vendor-class "My_Vendor_Class"

Creating compute profiles by using orcharhino management UI

You can create custom compute profiles in addition to the default predefined profiles to bundle CPU cores, memory, and storage details.

Procedure
  1. In the orcharhino management UI, navigate to Infrastructure > Compute Profiles.

  2. Click Create Compute Profile.

  3. In the Name field, enter a name for the profile.

  4. Click Submit. A new window opens with the name of the compute profile.

  5. In the new window, click the name of each compute resource and edit the attributes you want to set for this compute profile.

Creating compute profiles by using Hammer CLI

You can create custom compute profiles in addition to the default predefined profiles to bundle CPU cores, memory, and storage details.

For more information about creating compute profiles by using Hammer, enter hammer compute-profile --help.

Procedure
  1. Create a compute profile:

    $ hammer compute-profile create --name "My_Compute_Profile"
  2. Set attributes for the compute profile:

    $ hammer compute-profile values create \
    --compute-attributes "flavor=m1.small,cpus=2,memory=4GB,cpu_mode=default \
    --compute-resource "My_Compute_Resource" \
    --compute-profile "My_Compute_Profile" \
    --volume size=40GB
  3. Optional: To update the attributes of a compute profile, specify the attributes you want to change. For example, to change the number of CPUs and memory size:

    $ hammer compute-profile values update \
    --compute-resource "My_Compute_Resource" \
    --compute-profile "My_Compute_Profile" \
    --attributes "cpus=2,memory=4GB" \
    --interface "type=network,bridge=br1,index=1" \
    --volume "size=40GB"
  4. Optional: To change the name of the compute profile, use the --new-name attribute:

    $ hammer compute-profile update \
    --name "My_Compute_Profile" \
    --new-name "My_New_Compute_Profile"

The text and illustrations on this page are licensed by ATIX AG under a Creative Commons Attribution Share Alike 4.0 International ("CC BY-SA 4.0") license. This page also contains text from the official Foreman documentation which uses the same license ("CC BY-SA 4.0").