Conductor Documentation

WRCP Subcloud Provisioning

This option supports the wrcp plugin.

Prerequisites

  1. System controller must be in a healthy state and controller-0 must be active.
  2. Get all subcloud servers properly set up. E.g. configure network, create RAID and anything else that’s necessary.
  3. The subclouds to be provisioned weren’t installed on system controller or should have been deleted from system controller.
  4. No sub-deployments or deployments were created on Conductor with the names ‘-’, e.g. ‘simplex_my_lab’.
  5. A HTTP or HTTPS server works as the file server to place ciq files, golden configs, WRCP iso and signature files.

Preparation

Before starting the workflow ‘provision_subclouds’, the following should be prepared.

WRCP plugin

Upload the latest wrcp plugin to Conductor.

Blueprint

Upload the subcloud blueprint ‘blueprint_subcloud.yaml’ to the Conductor

Ciq Files

The ciq files for the subclouds should be placed under the ciq_files_path on the file_server. The ciq file must be named <subcloud_name>.xlsx or <subcloud_name>.yaml.

Notes:

  1. Starting at WRCP 24.09, the install_type does not support 4 or 5. Use 2 or 3 as the install_type in the subcloud ciq file.

The ndc ciq file must be placed under the same directory. See the below example,

[centos@cfs1 ciq_files]$ pwd
/home/centos/CFS/test_provision_subclouds/ciq_files
[centos@cfs1 ciq_files]$ ls -lrt
-rw-rw-r--. 1 centos centos 4620 Oct 28 13:40 ndc.xlsx
-rw-rw-r--. 1 centos centos 1656 Oct 29 11:27 simplex.xlsx
-rw-rw-r--. 1 centos centos 2609 Oct 30 16:43 duplex.xlsx

Notes about the parameters in ndc ciq file and subcloud ciq files:

ndc ciq file

  1. ndc ciq file must contain the fields ‘subcloudbaseiso’ and ‘subcloudbaseiso_sig’ with proper values.

subcloud ciq file

  1. In the sheet server_list, the role should be controller-aio-ll or worker-ll as subclouds should use low-latency profile.
  2. In the sheet ethernet, controller-0 should have an interface named lo.
  3. In the sheet labels, when the value is 'true' or 'false', they must be with single quotation marks, e.g. 'true' or 'false' rather than true and false.

Golden Configs

The golden configs templates should be placed under the ciq_files_path on the file_server.

See the below example,

[centos@cfs1 golden_configs]$ pwd
/home/centos/CFS/test_provision_subclouds/golden_configs
[centos@cfs1 golden_configs]$ ls -lrt
total 24
-rw-rw-r--. 1 centos centos  3250 Oct 24 13:28 bootstrap_values.yaml.v1.jinja2
-rw-rw-r--. 1 centos centos  2358 Oct 30 17:07 install_values.yaml.v1.jinja2
-rw-rw-r--. 1 centos centos 13413 Oct 31 11:15 deployment_config.yaml.v3.jinja2

WRCP ISO and Signature file

The installation of subclouds need to use WRCP iso and signature file. The required WRCP iso and signature file should be existing on the file server.

These two files are defined in ndc ciq file as shown in the example below:

ndc ciq example

Secrets

  1. system_license secret: The secret name should use the value in the workflow inputs: system_license_secret.
  2. system controller ssh username secret: The secret name should use the value in the workflow inputs: systemcontroller_ssh_username.
  3. system controller ssh password secret: The secret name should use the value in the workflow inputs: systemcontroller_ssh_password.
  4. File server ssl certificate secret: The secret containing the full SSL CA chain for the certificate running on File server. The secret content can be empty when file_server_use_custom_ssl_ca_bundle is false.
  5. Subcloud secrets: Such secrets are only required when ciq files are yaml files. Each subcloud to be installed needs a subcloud secret in the Conductor - Secrets. The secret must be named as <subcloud name>_secrets (e.g. simplex_secrets). Those secrets should contains the subcloud server BMC information for each subcloud.
  6. NDC secret: This secret is only required when ciq files are yaml files. <ndc name>_secrets that contains NDC information.

Provision Subclouds

Note

It is recommend to use the blueprint - ‘Wind-River-Cloud-Platform-Installer’ to:

  • Either create the parent deployment to install system controller then trigger subcloud provision
  • Or create the parent deployment and directly trigger subcloud provision for already existed DC systemcontroller. If using the deployment created with the “Wind-River-Cloud-Platform” blueprint to do ‘Wind-River-Cloud-Platform-Subcloud-Installer’, users need to manually delete all subcloud deployments created by ‘Wind-River-Cloud-Platform-Subcloud-Installer’ blueprint after the subclouds are provisioned. Otherwise, system discovery on subclouds and other operations/workflows on subclouds will be affected.

Go to System Controller deployment - Execute workflow - Wrcp plugin, click the button Provision subclouds in the dropdown menu.

Provision Subclouds example

Provide all the required inputs in the upcoming dialog.

Execute Workflows example

Execute Workflows example

Example of the workflow inputs:

subcloud_blueprint_id: blueprint_subcloud
subclouds:
  - simplex
  - duplex
 
platform: dell
file_server: https://<server IP>:<port>
file_server_use_custom_ssl_ca_bundle: true
file_server_ssl_ca_chain: file_server_ssl_ca_chain
ciq_file_path: /test_provision_subclouds/ciq_files_xlsx/
ciq_file_list:
  - file_name: ndc.xlsx
    file_type: NDC
golden_config_file_path: /test_provision_subclouds/golden_configs/
golden_config_file_list:
- file_name: bootstrap_values.yaml.v1.jinja2
  file_type: RDCboostrapValues
- file_name: deployment_config.yaml.v3.jinja2
  file_type: RDCdeploymentConfig
- file_name: install_values.yaml.v1.jinja2
  file_type: RDCinstallValues
system_license_secret: system_license_secret
 
systemcontroller_ssh_host: <host IP>
systemcontroller_ssh_username: <ssh_username secret>
systemcontroller_ssh_password: <ssh_password secret>

Example of the description for the inputs of the workflows:

parameters:
     subclouds:
       description: The names of the subclouds to be installed. Accordingly, ciq files named
         <subcloud_name>.xlsx or <subcloud_name>.yaml must be prepared on the file server.
       type: list
       default: []
       constraints:
         - min_length: 1
       required: True
 
     subcloud_blueprint_id:
       description: Subcloud blueprint id
       type: string
       default: 'blueprint_subcloud'
       required: True
 
     file_server:
       type: string
       description: Full URL path of HTTP file server
       constraints:
         - pattern: '^https?://(?:\[[0-9a-fA-F:]+\]|[0-9a-zA-Z.-]+|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})(:\d{1,5})?/?$'
       required: True
 
     file_server_use_custom_ssl_ca_bundle:
       type: boolean
       description: >
         Flag indicating if the SSL CA Chain provided in the file_server_ssl_ca_chain secret
         should be used to verify the File Server's SSL certificate
       default: false
 
     file_server_ssl_ca_chain:
       type: string
       description: >
         The secret containing the full SSL CA chain for the certificate running on File server.
         The secret content can be empty when file_server_use_custom_ssl_ca_bundle is 'false'.
       required: True
 
     ciq_file_path:
       type: string
       description: Path of CIQ files inside HTTP file server
       constraints:
         - pattern: '^/.*/ciq_files'
       required: True
 
     ciq_file_list:
       type: list
       description: >
         List of CIQ files in dict format with keys file_name, file_type
         - file_name: "Controllers_NDC_CIQ.xlsx"
           file_type: "NDC"
       constraints:
         - min_length: 1
       required: True
 
     golden_config_file_path:
       type: string
       description: Path of Golden Config files inside HTTP file server
       constraints:
         - pattern: '^/.*/golden_configs'
       required: True
 
     golden_config_file_list:
       type: list
       description: >
         List of Golden Configs in dict format with keys file_name, file_type
         - file_name: "install_values.yaml.v1.jinja2"
           file_type: "RDCinstallValues"
         - file_name: "bootstrap_values.yaml.v1.jinja2"
           file_type: "RDCboostrapValues"
         - file_name: "deployment_config.yaml.v1.jinja2"
           file_type: "RDCdeploymentConfig"
       constraints:
         - min_length: 3
       required: True
 
     system_license_secret:
       description: >
         The secret containing the full WRCP license to be used during system install.
       required: True
 
     platform:
       description: >
         This option specifies the Redfish target platform.
         --DELL: iDRAC8 or above;
         --HPE: iLO4 or above, running on HP gen 9 or above.
       constraints:
         - valid_values:
             - hpe
             - dell
       required: True
 
     systemcontroller_ssh_host:
       type: string
       description: >
         The OAM floating ip of systemcontroller.
       required: true
 
     systemcontroller_ssh_username:
       type: string
       description: >
         The secrect that contains ssh username of systemcontroller.
       required: true
 
     systemcontroller_ssh_password:
       type: string
       description: >
         The secrect that contains ssh password of systemcontroller.
       required: true

The workflow Provision subclouds will start to run after clicking the button Execute. In a short while, the sub-deployments will created under the sub-environment.

The installation of each subcloud will be managed by the install workflow of an independent sub-deployment. Multiple subclouds can be installed in parallel. It might take 1-2 hours to complete the installation.

Subenvironments example

Deployments View example

Delete a Subcloud from System Controller and Conductor

Use the following steps to delete a subcloud from System Controller and Conductor.

  1. Shutdown the subcloud either from iDRAC sever or using the command line (e.g. sudo shutdown -h now ).
  2. Wait till the subcloud becomes ‘offline’ by checking the subcloud status with the command dcmanager subcloud list . It might take a couple of minutes after step 1 is performed.
  3. Run the command dcmanager subcloud unmanage <subcloud> to unmanage the subcloud.
  4. Run the command dcmanager subcloud delete <subcloud> to delete the subcloud from the system controller.
  5. Go to the Conductor UI and delete the subcloud deployment of this subcloud (do not delete system controller deployment). (Optional) Erase disk or make other configuration setup on the subcloud servers whenever needed. The subcloud can be reinstalled with the workflow provision_subclouds after it is deleted from both System Controller and Conductor.