3 1. The jenkins generating rec artifacts is available and producing both the rec golden iso image and the provisioning iso image.
5 2. Create a new repo containing the target CD environments configurations. The configuration contains the following for each CD environment.
7 - user_config.yaml: The user configuration yaml file.
9 - admin_password: The cloudadmin user password.
11 3. The machine from where the remote installation is done is able to reach the BMCs and external network of the edge cloud.
15 1. Create a new directory to be used for holding the installation artifacts.
17 #create the base directory
23 #certificates sub-directory
24 mkdir $BASEDIR/certificates
26 #user configuration and cloud admin information
27 mkdir $BASEDIR/user-configs
29 #installation logs directory
30 mkdir $BASEDIR/installations
32 2. Get REC golden image from REC jenkins artifacts and copy it to the images sub-directory under the directory created in (1).
35 wget $URL_JENKINS_ARTIFACTS/rec.iso
38 3. Get REC booting image from REC jenkins artifacts and copy it to the images sub-directory under the directory created in (1).
41 wget $URL_JENKINS_ARTIFACTS/boot.iso
43 4. Get the user-config.yaml file and admin_password file for the CD environment from the cd-environments repo and copy it to the user-configs sub-directory under the directory created in (1). Copy the files to a cloud-specific directory identiried by the cloudname.
45 cd $BASEDIR/user-configs/
48 wget $URL_CD_ENVS/$ENV/user_config.yaml
49 wget $URL_CD_ENVS/$ENV/admin_password
51 5. Checkout the remote-installer repo from LF
55 git clone https://gerrit.akraino.org/r/ta/remote-installer
57 6. Copy the sever certificates, the client certificates in addition to CA certificate to the certificates sub-directory under the directory created in (1).
58 The following certificates are expected to be available in the directory:
60 cacert.pem: The CA certificate
61 servercert.pem: The server certificate signed by the CA
62 serverkey.pem: The server key
63 clientcert.pem: The client certificate signed by the CA
64 clientkey.pem: The client key
66 For generating own CA, client and server certificates you can execute the following script from the remote-installer repo:
68 cd /opt/git-repos/remote-installer/test/certificates/
70 cp *.pem $BASEDIR/certificates/
72 7. Build the remote installer docker-image.
74 cd /opt/git-repos/remote-installer/scripts/
77 8. Start the remote installer
79 cd /opt/git-repos/remote-installer/scripts/
80 ./start.sh -a $API_PORT -s $HTTPS_PORT -b $BASEDIR -e $EXTERNAL_HOST_IP
82 9. Wait for the remote installer to become running.
84 10. Start the installation by sending the following http request to the installer API
86 POST url: https://localhost:$API_PORT/v1/installations
87 REQ body json- encoded
89 'cloud-name': $CLOUDNAME,
90 'iso': $REC_ISO_IMAGE_NAME,
91 'provisioning-iso': $REC_PROVISIONING_ISO_NAME
95 'uuid': $INSTALLATION_UUID
98 11. Follow the progress of the installation by sending the following http request to the installer API
100 GET url: https://localhost:$API_PORT/v1/installations/$INSTALLATION_UUID/state
103 REP body json-encoded
105 'status': <ongoing|completed|failed>,
106 'description': <description>,
107 'percentage': <the progess precentage>
110 12. When installation is completed stop the remote installer.
112 cd /opt/git-repos/remote-installer/scripts/