Skip to content
This repository has been archived by the owner on May 3, 2024. It is now read-only.

SSPL mini provisioner configs

mariyappanp edited this page Apr 8, 2021 · 4 revisions

SSPL mini-provisioner configs

SSPL mini-provisioner interfaces are supposed to be executed in order i.e post-install, prepare, config, init. And each stage must be executed on each node before proceeding to next stage. And rest of interfaces can be executed in any order i.e for test, reset, cleanup.

Input config required at each mini provisioner stage is a cumulative i.e. super set of current plus previous stage config. The input config from post-install stage will be available to prepare stage, post-install and prepare stage input config will be available to config stage. Same way, post-install, prepare and config stage input configs to init stage. Init stage is expected to have all configs required for sspl-ll service to start and run smoothly.

At each mini-provisioner stage, argument "--config <template_file>" needs to be passed , which is a reference to required configs backend, depending on the stage.

The template file is a key-value mapped yaml file, maintaining the config requirement template for each stage. All the strings start with TMPL_ should be replaced with valid values. If no values identified, then it can be left blank.

Template fields

  1. TMPL_{field} is a identifier for consumer to update variable keys & values(ex. CI CD pipeline)

    Template fields used accross mini provisioner interfaces

    For 3 node setup, n will be 1,2 and 3 for first, second and 3rd node.

    For single node setup, TMPL field will not have any postfix[_{node_number)], ex. it will be just TMPL_NODE_NAME

    BMC information such as IP, USER and SECRET can be blank for VM.

    Stage Field Example Value Description Required
    post_install TMPL_NODE_NAME_{n} srvnode-1 Server name of node Yes
    post_install TMPL_MACHINE_ID_{n} 30512e5ae6df9f1ea02327bab45e499d cat /etc/machine-id Yes
    post_install TMPL_HOSTNAME_{n} ssc-vm-2217.colo.seagate.com Hostname of node Yes
    post_install TMPL_BMC_IP_{n} BMC IP Address No
    post_install TMPL_BMC_SECRET_{n} BMC encrypted password No
    post_install TMPL_BMC_USER_{n} BMC username No
    post_install TMPL_ENCLOSURE_ID_{n} enc30512e5ae6df9f1ea02327bab45e499d Strorage Enclosure logical name Yes
    post_install TMPL_SERVER_NODE_TYPE_{n} virtual Yes
    post_install TMPL_CONTROLLER_SECRET_{n} 'gAAAAABgbfiX3MkzGmtbG9alJPoyTIOdveqBHMLAg6B2TqPADdLeQMMmTF-R02DeGQesapBwn54PVYxBelDXJG5_Il5Bgw7OuQ==' Controller access - encrypted password Yes
    post_install TMPL_PRIMARY_CONTROLLER_IP_{n} 10.0.0.2 Controller A IP Address Yes
    post_install TMPL_PRIMARY_CONTROLLER_PORT_{n} 22 Controller A Port Yes
    post_install TMPL_SECONDARY_CONTROLLER_IP_{n} 10.0.0.3 Controller B IP Address Yes
    post_install TMPL_SECONDARY_CONTROLLER_PORT_{n} 22 Controller B Port Yes
    post_install TMPL_CONTROLLER_TYPE_{n} Gallium Type of controller Yes
    post_install TMPL_CONTROLLER_USER_{n} manage Controller access - username Yes
    prepare TMPL_ENCLOSURE_NAME_{n} enclosure-1 Strorage Enclosure logical name Yes
    prepare TMPL_ENCLOSURE_TYPE_{n} RBOD Type of enclosure Yes
    prepare TMPL_DATA_PRIVATE_FQDN_{n} srvnode-1.data.private.fqdn FQDN of Private Data Network Yes
    prepare TMPL_DATA_PRIVATE_INTERFACE_{n} Data network private interfaces No
    prepare TMPL_DATA_PUBLIC_FQDN_{n} srvnode-1.data.public.fqdn FQDN of Public Data Network Yes
    prepare TMPL_DATA_PUBLIC_INTERFACE_{n} Data network public interfaces No
    prepare TMPL_MGMT_INTERFACE_{n} eth0 Management network interfaces Yes
    prepare TMPL_MGMT_PUBLIC_FQDN_{n} srvnode-1.public.fqdn FQDN of Management Network Yes
    prepare TMPL_NODE_ID_{n} SN01 Identifies the node in the cluster Yes
    prepare TMPL_RACK_ID_{n} RC01 Identifies the rack in the cluster Yes
    prepare TMPL_SITE_ID_{n} DC01 Identifies the site in the cluster Yes
    prepare TMPL_CLUSTER_ID CC01 UUID Yes