20.62. kb-00061: Deploying Linux with Universal Workflows¶
20.62.1. Knowledge Base Article: kb-00061¶
20.62.2. Description¶
This document outlines how to quickly get up and running using the Content Pack
named Universal
to drive Linux OS installations.
Note that in DRP v4.6.0 release, the standard Linux install “base” workflows (eg centos-7-base, ubuntu-20.04-base, etc) are deprecated in favor of this procedure.
The Universal workflows allow the Operator of a DRP system to quickly utilize advanced zero touch operations, along with customizable workflow chaining cpabilities. This document only very briefly touches on a simplified use of the Universal capabilities. Please see the Additional Resources at the end of this document for links to more advanced usages.
20.62.3. Solution¶
Most Universal usage is designed to start from the workflow universal-discover
,
which then chains through different workflows automatically based on Params and map
values. For this use case, we will use the universal-linux-install
workflow to
drive standard Linux OS deployments.
Many previously existing “base” workflows are already provided as pre-existing profiles. When using these, the process can skip step 1.
Example pre-existing profiles are:
universal-application-centos-7
universal-application-centos-8
universal-application-fedora-31
universal-application-fedora-33
universal-application-debian-8
universal-application-debian-9
universal-application-debian-10
universal-application-ubuntu-18.04
universal-application-ubuntu-20.04
others can be check by searching for
universal-application-
among the profiles
If customization is required, the process is generally very straighforward and simple, requiring only four steps:
Create a profile that defines the Linux OS to install, and any customizations
Apply the profile to your target Machine(s)
Set the
universal-linux-install
workflow on the Machine(s)Relax and wait for the installer to complete
Below are more detailed usage steps.
Step 1: Create a Profile
First create a Profile that sets at a minimum:
the parameter
universal/application
to the name of the profile being created without theuniversal-application-
prefixadds a Linux specific Universal Profile as a basis
Note
Supported OS versions can be determined by reviewing the existing list
universal-application-*
profiles. Custom OSes can be selected if BootEnvs are on the system.Note
The name of the profile must start with
universal-application-
.The below example assumes installation of CentOS 7. You can substitute
centos-7
for any number of supported OS version (egubuntu-20.04
,debian-10
,rhel-server-8.3-full
, etc.)drpcli profiles create '{ "Name": "universal-application-my-centos-7", "Profiles": [ "universal-application-centos-7" ], "Params": { "universal/application": "my-centos-7" } }'Or in the Portal (UX):
Go to
Profiles
in the menu, and click the Add button at the topIn the Name field enter
universal-application-my-centos-7
In the Profiles field enter
universal-application-centos-7
In the Params, type
universal/application
, select the green Plus buttonEnter
my-centos-7
in theuniversal/application
Param field after you’ve added itClick the
Save and Exit
at the bottom of the formCustomization of the deployed Operating System can be done by adding any other supported OS Param values to your Profile.
Note
If you are installing a custom OS version that is not defined in the enum list, you will also have to create a similarly matching Profile. Follow the
universal-application-centos-7
profile as an example.
Step 2: Add the Profile to your Machine(s)
Once the profile is created, associate it with the Machine(s) you wish to install.
# you can select machines by Name:[NAME] or replace it with the Machines UUID value drpcli machines addprofile Name:mach-01.example.org my-centos7Or in the Portal (UX):
Go to the
Machines
in the left side menuSelect the check box for all Machines you wish to install
Select the
Profiles
tab in the top center Bulk Actions panelType
universal-application-my-centos-7
in the input fieldClick the Plus icon to add to the selected Machines
Step 3: Start the Workflow
# you can select machines by Name:[NAME] or replace it with the Machines UUID value drpcli machines workflow Name:mach-01.example.org universal-linux-installOr in the Portal (UX):
Go to the
Machines
in the left side menuSelect the check box for all Machines you wish to install
Select the
Workflow
tab in the top center Bulk Actions panelType in
universal-linux-install
Hit the Play icon next to the drop down field
Step 4: Relax
The systems you have selected should now be passing through the Universal
universal-linux-install
Workflow. Based on the value of the Paramlinux/install-bootenv-override
in the Profile you created, the select OS installer will be started and completed.
20.62.4. Additional Information¶
Additional resources and information related to this Knowledge Base article.
20.62.4.1. See Also¶
The Universal Workflows are extremely capable and can provide advanced zero touch controls of your infrastructure. There are many additional settings and behaviors available in the system. For more advanced usage and documentation, please see the following resources:
20.62.4.2. Versions¶
DRP v4.6.0 and newer, Universal v4.6.0 and newer
20.62.4.3. Keywords¶
universal, linux install, universal-linux-install, zero touch
20.62.4.4. Revision Information¶
KB Article : kb-00061 initial release: Tue Mar 23 17:47:27 PDT 2021 updated release: Tue Mar 23 17:47:27 PDT 2021