2.3. Install Software on Controller-0

Preparing the server is the first step of the Cloud Platform installation procedure.

Prior to starting the Cloud Platform installation, ensure that the server is in the following state:

  • Physically installed.

  • Cabled for power.

  • Cabled for networking.

  • All disks are wiped.

  • BIOS configured with Intel Virtualization (VTD, VTX).

  1. Insert the bootable USB into a bootable USB port on the host you are configuring as controller-0.

  2. Power on the host.

  3. Attach to a console, ensure the host boots from the USB, and wait for the Cloud Platform Installer Menus.

  4. Wait for the Install menus, and when prompted, make the following menu selections in the installer:

    1. Select the appropriate deployment option: All-in-one Controller Configuration

    2. Choose Graphical Console or Serial Console depending on your terminal access to the console port.

Wait for non-interactive install of software to complete and server to reboot. This can take 5-10 minutes, depending on the performance of the server.

Note

For All-in-one deployments, you can choose one of the All-in-One Configurations, either standard kernel or real-time/low-latency kernel.

Warning

When deploying release 22.12, choose the standard kernel as in real-time kernel there are missing kernel configurations options neeeded for the Virtual Service Router CNF to work correctly. It will be fixed in the next Wind River Cloud Platform release.

Once the server is restarted, log in using the username / password of “sysadmin” / “sysadmin”. When logging in for the first time, you will be forced to change the password.

# Login: sysadmin
# Password:
# Changing password for sysadmin.
# (current) UNIX Password: sysadmin
# New Password:
# New Password:

Then, verify and/or configure IP connectivity. External connectivity is required to run the Ansible bootstrap playbook. Here, IP address and default IP route were manually configured. Use the PORT, IP-ADDRESS/SUBNET-LENGTH and GATEWAY-IP-ADDRESS applicable to your deployment environment.

sysadmin@controller-0:~$ sudo ip address add <IP-ADDRESS>/<SUBNET-LENGTH> dev <PORT>
sysadmin@controller-0:~$ sudo ip link set up dev <PORT>
sysadmin@controller-0:~$ sudo ip route add default via <GATEWAY-IP-ADDRESS> dev <PORT>

Verify you have external connectivity:

sysadmin@controller-0:~$ ping 8.8.8.8

Note

You can also obtain an IP address and have external IP connectivity from a DHCP Server present in your environment.

Then, specify user configuration overrides for the Ansible bootstrap playbook.

Ansible is used to bootstrap StarlingX on controller-0. Key files for Ansible configuration are:

/etc/ansible/hosts

The default Ansible inventory file. Contains a single host: localhost.

/usr/share/ansible/stx-ansible/playbooks/bootstrap.yml

The Ansible bootstrap playbook.

/usr/share/ansible/stx-ansible/playbooks/host_vars/bootstrap/default.yml

The default configuration values for the bootstrap playbook.

sysadmin home directory ($HOME)

The default location where Ansible looks for and imports user configuration override files for hosts. For example: $HOME/<hostname>.yml.

Create a minimal user configuration override file.

Through the localhost.yml file, provide the minimum required parameters for the deployment configuration. You can for example specify the username and password to access the Cloud Platform Docker Registry on Wind River Registry, or specify specific kubelet configurations.

Note

This file can be downloaded from the 6WIND deployment guide repository.

sysadmin@controller-0:~$ ansible-vault create $HOME/localhost.yml

Note

This Ansible Overrides file for the Bootstrap Playbook ($HOME/localhost.yml) contains security sensitive information, use the ansible-vault create $HOME/localhost.yml command to create it. You will be prompted for a password to protect/encrypt the file. Then, add the content from the localhost.yml file. Use the ansible-vault edit $HOME/localhost.yml command if the file needs to be edited after it is created.

Run the Ansible bootstrap playbook.

sysadmin@controller-0:~$ ansible-playbook --ask-vault-pass /usr/share/ansible/stx-ansible/playbooks/bootstrap.yml

Wait for Ansible bootstrap playbook to complete. This can take 5-10 minutes, depending on the performance of the host machine.

Note

Before running the Ansible bootstrap playbook, it is important that you ensure that controller-0 server time is synchronized correctly.