Difference between revisions of "StarlingX/Containers/InstallationOnAIODX"
(→Introduction) |
(→Initial Configuration) |
||
Line 53: | Line 53: | ||
Use default settings during config_controller, except for the following | Use default settings during config_controller, except for the following | ||
System mode: '''duplex''' | System mode: '''duplex''' | ||
+ | |||
+ | If you do not have direct access to the google DNS nameserver(s) 8.8.8.8 , 8.8.4.4 you will need to configure that when prompted. | ||
+ | Press Enter to choose the default, or type a new entry. | ||
If you do not have direct access to the public docker registry (https://hub.docker.com/u/starlingx) and instead use a proxy for internet access, you will need to add proxy information | If you do not have direct access to the public docker registry (https://hub.docker.com/u/starlingx) and instead use a proxy for internet access, you will need to add proxy information | ||
when prompted. | when prompted. | ||
− | |||
The system configuration should look like this: | The system configuration should look like this: | ||
<pre> | <pre> | ||
− | + | System Configuration | |
+ | ==================== | ||
+ | Enter Q at any prompt to abort... | ||
+ | |||
+ | System date and time: | ||
+ | --------------------- | ||
+ | |||
+ | The system date and time must be set now. Note that UTC time must be used and | ||
+ | that the date and time must be set as accurately as possible, even if NTP/PTP is | ||
+ | to be configured later. | ||
+ | |||
+ | Current system date and time (UTC): 2019-01-24 19:53:50 | ||
+ | |||
+ | Is the current date and time correct? [y/n]: y | ||
+ | Current system date and time will be used. | ||
+ | |||
+ | System timezone: | ||
+ | ---------------- | ||
+ | |||
+ | The system timezone must be set now. The timezone must be a valid timezone from | ||
+ | /usr/share/zoneinfo (e.g. UTC, Asia/Hong_Kong, etc...) | ||
+ | |||
+ | Please input the timezone[UTC]: | ||
+ | |||
+ | System Configuration: | ||
+ | --------------------- | ||
+ | |||
+ | System mode. Available options are: | ||
+ | |||
+ | 1) duplex-direct - two node redundant configuration. Management and | ||
+ | infrastructure networks are directly connected to peer ports | ||
+ | 2) duplex - two node redundant configuration. | ||
+ | 3) simplex - single node non-redundant configuration. | ||
+ | System mode [duplex-direct]: 2 | ||
+ | Warning: Root Disk /dev/sda size is less than 500 GiB. Please consult the | ||
+ | Software Installation Guide for details. | ||
+ | |||
+ | |||
+ | PXEBoot Network: | ||
+ | ---------------- | ||
+ | |||
+ | The PXEBoot network is used for initial booting and installation of each node. | ||
+ | IP addresses on this network are reachable only within the data center. | ||
+ | |||
+ | The default configuration combines the PXEBoot network and the management | ||
+ | network. If a separate PXEBoot network is used, it will share the management | ||
+ | interface, which requires the management network to be placed on a VLAN. | ||
+ | |||
+ | Configure a separate PXEBoot network [y/N]: | ||
+ | |||
+ | Management Network: | ||
+ | ------------------- | ||
+ | |||
+ | The management network is used for internal communication between platform | ||
+ | components. IP addresses on this network are reachable only within the data | ||
+ | center. | ||
+ | |||
+ | A management bond interface provides redundant connections for the management | ||
+ | network. | ||
+ | |||
+ | Management interface link aggregation [y/N]: | ||
+ | Management interface [enp0s8]: | ||
+ | Management interface MTU [1500]: | ||
+ | Management subnet [192.168.204.0/24]: | ||
+ | Use entire management subnet [Y/n]: | ||
+ | |||
+ | IP addresses can be assigned to hosts dynamically or a static IP address can be | ||
+ | specified for each host. This choice applies to both the management network and | ||
+ | cluster-host network. | ||
+ | Warning: Selecting 'N', or static IP address allocation, disables automatic | ||
+ | provisioning of new hosts in System Inventory, requiring the user to manually | ||
+ | provision using the 'system host-add' command. | ||
+ | Dynamic IP address allocation [Y/n]: | ||
+ | Management Network Multicast subnet [239.1.1.0/28]: | ||
+ | |||
+ | Cluster Host Network: | ||
+ | ----------------------- | ||
+ | |||
+ | The cluster host network is used for internal communication between Kubernetes | ||
+ | clusters. IP addresses on this network are reachable only within the data | ||
+ | center. | ||
+ | |||
+ | If a separate cluster host interface is not configured the management network | ||
+ | will be used. | ||
+ | |||
+ | |||
+ | An cluster host bond interface provides redundant connections for the cluster | ||
+ | host network. | ||
+ | |||
+ | Cluster host interface link aggregation [y/N]: | ||
+ | Cluster host interface [enp0s8]: | ||
+ | Configure an cluster host VLAN [y/N]: | ||
+ | Cluster subnet [192.168.206.0/24]: | ||
+ | |||
+ | External OAM Network: | ||
+ | --------------------- | ||
+ | |||
+ | The external OAM network is used for management of the cloud. It also provides | ||
+ | access to the platform APIs. IP addresses on this network are reachable outside | ||
+ | the data center. | ||
+ | |||
+ | An external OAM bond interface provides redundant connections for the OAM | ||
+ | network. | ||
+ | |||
+ | External OAM interface link aggregation [y/N]: | ||
+ | External OAM interface [enp0s3]: | ||
+ | Configure an external OAM VLAN [y/N]: | ||
+ | External OAM interface MTU [1500]: | ||
+ | External OAM subnet [10.10.10.0/24]: | ||
+ | External OAM gateway address [10.10.10.1]: | ||
+ | External OAM floating address [10.10.10.2]: | ||
+ | External OAM address for first controller node [10.10.10.3]: | ||
+ | External OAM address for second controller node [10.10.10.4]: | ||
+ | |||
+ | Domain Name System (DNS): | ||
+ | ------------------------- | ||
+ | |||
+ | Configuring DNS servers accessible through the external OAM network allows | ||
+ | domain names to be mapped to IP addresses. | ||
+ | The configuration of at least one DNS server is mandatory. To skip the | ||
+ | configuration of one or more nameservers (1 to 3 are allowed), enter C to | ||
+ | continue to the next configuration item. | ||
+ | |||
+ | Nameserver 1 [8.8.8.8]: | ||
+ | Nameserver 2 [8.8.4.4]: C | ||
+ | |||
+ | Cloud Authentication: | ||
+ | ------------------------------- | ||
+ | |||
+ | Configure a password for the Cloud admin user The Password must have a minimum | ||
+ | length of 7 character, and conform to password complexity rules | ||
+ | Create admin user password: | ||
+ | Repeat admin user password: | ||
+ | |||
+ | |||
+ | |||
+ | The following configuration will be applied: | ||
+ | |||
+ | System Configuration | ||
+ | -------------------- | ||
+ | Time Zone: UTC | ||
+ | System mode: duplex | ||
+ | |||
+ | PXEBoot Network Configuration | ||
+ | ----------------------------- | ||
+ | Separate PXEBoot network not configured | ||
+ | PXEBoot Controller floating hostname: pxecontroller | ||
+ | |||
+ | Management Network Configuration | ||
+ | -------------------------------- | ||
+ | Management interface name: enp0s8 | ||
+ | Management interface: enp0s8 | ||
+ | Management interface MTU: 1500 | ||
+ | Management subnet: 192.168.204.0/24 | ||
+ | Controller floating address: 192.168.204.2 | ||
+ | Controller 0 address: 192.168.204.3 | ||
+ | Controller 1 address: 192.168.204.4 | ||
+ | NFS Management Address 1: 192.168.204.5 | ||
+ | NFS Management Address 2: 192.168.204.6 | ||
+ | Controller floating hostname: controller | ||
+ | Controller hostname prefix: controller- | ||
+ | OAM Controller floating hostname: oamcontroller | ||
+ | Dynamic IP address allocation is selected | ||
+ | Management multicast subnet: 239.1.1.0/28 | ||
+ | |||
+ | Infrastructure Network Configuration | ||
+ | ------------------------------------ | ||
+ | Infrastructure interface not configured | ||
+ | |||
+ | Kubernetes Cluster Network Configuration | ||
+ | ---------------------------------------- | ||
+ | Cluster pod network subnet: 172.16.0.0/16 | ||
+ | Cluster service network subnet: 10.96.0.0/12 | ||
+ | Cluster host interface name: enp0s8 | ||
+ | Cluster host interface: enp0s8 | ||
+ | Cluster host interface MTU: 1500 | ||
+ | Cluster host subnet: 192.168.206.0/24 | ||
+ | |||
+ | External OAM Network Configuration | ||
+ | ---------------------------------- | ||
+ | External OAM interface name: enp0s3 | ||
+ | External OAM interface: enp0s3 | ||
+ | External OAM interface MTU: 1500 | ||
+ | External OAM subnet: 10.10.10.0/24 | ||
+ | External OAM gateway address: 10.10.10.1 | ||
+ | External OAM floating address: 10.10.10.2 | ||
+ | External OAM 0 address: 10.10.10.3 | ||
+ | External OAM 1 address: 10.10.10.4 | ||
+ | |||
+ | DNS Configuration | ||
+ | ----------------- | ||
+ | Nameserver 1: 8.8.8.8 | ||
+ | |||
+ | Apply the above configuration? [y/n]: y | ||
+ | |||
+ | Applying configuration (this will take several minutes): | ||
+ | |||
+ | 01/08: Creating bootstrap configuration ... DONE | ||
+ | 02/08: Applying bootstrap manifest ... DONE | ||
+ | 03/08: Persisting local configuration ... DONE | ||
+ | 04/08: Populating initial system inventory ... DONE | ||
+ | 05/08: Creating system configuration ... DONE | ||
+ | 06/08: Applying controller manifest ... | ||
+ | |||
</pre> | </pre> | ||
Revision as of 20:01, 24 January 2019
Contents
- 1 Installing StarlingX with containers: All in One Duplex configuration
- 1.1 History
- 1.2 Introduction
- 1.3 Building the Software
- 1.4 Setup the VirtualBox VM
- 1.5 VirtualBox Nat Networking
- 1.6 Install StarlingX
- 1.7 Initial Configuration
- 1.8 Provisioning the platform
- 1.9 Boot the second AIO controller
- 1.10 Provisioning the second AIO controller
- 1.11 Prepare the host for running the containerized services
- 1.12 Using sysinv to bring up/down the containerized services
- 1.13 Verify the cluster endpoints
- 1.14 Provider/tenant networking setup
- 1.15 Horizon access
- 1.16 Known Issues and Troubleshooting
Installing StarlingX with containers: All in One Duplex configuration
History
January 24, 2019: Initial draft
Introduction
These instructions are for an All-in-one duplex system in VirtualBox. Other configurations are in development.
Installing on bare metal is also possible, however the the process would have to be adapted for the specific hardware configuration.
Note: These instructions are valid for a load built on January 24, 2019 or later.
Building the Software
Follow the standard build process in the StarlingX Developer Guide.
Alternatively a prebuilt iso can be used, all required packages are provided by the StarlingX CENGN mirror
Setup the VirtualBox VM
Refer to these instructions on the AIO SX page Setup_the_VirtualBox_VM
Remember to setup TWO VMs.
VirtualBox Nat Networking
Refer to these instructions on the AIO SX page VirtualBox_Nat_Networking
Install StarlingX
Boot the VM from the ISO media. Select the following options for installation:
- All-in-one Controller
- Graphical Console
- Standard Security Profile
Once booted, log into Controller-0 as user wrsroot, with password wrsroot. The first time you log in as wrsroot, you are required to change your password. Enter the current password (wrsroot):
Changing password for wrsroot. (current) UNIX Password: wrsroot
Enter a new password for the wrsroot account and confirm it.
Initial Configuration
Run config_controller
sudo config_controller --kubernetes
Use default settings during config_controller, except for the following System mode: duplex
If you do not have direct access to the google DNS nameserver(s) 8.8.8.8 , 8.8.4.4 you will need to configure that when prompted.
Press Enter to choose the default, or type a new entry.
If you do not have direct access to the public docker registry (https://hub.docker.com/u/starlingx) and instead use a proxy for internet access, you will need to add proxy information
when prompted.
The system configuration should look like this:
System Configuration ==================== Enter Q at any prompt to abort... System date and time: --------------------- The system date and time must be set now. Note that UTC time must be used and that the date and time must be set as accurately as possible, even if NTP/PTP is to be configured later. Current system date and time (UTC): 2019-01-24 19:53:50 Is the current date and time correct? [y/n]: y Current system date and time will be used. System timezone: ---------------- The system timezone must be set now. The timezone must be a valid timezone from /usr/share/zoneinfo (e.g. UTC, Asia/Hong_Kong, etc...) Please input the timezone[UTC]: System Configuration: --------------------- System mode. Available options are: 1) duplex-direct - two node redundant configuration. Management and infrastructure networks are directly connected to peer ports 2) duplex - two node redundant configuration. 3) simplex - single node non-redundant configuration. System mode [duplex-direct]: 2 Warning: Root Disk /dev/sda size is less than 500 GiB. Please consult the Software Installation Guide for details. PXEBoot Network: ---------------- The PXEBoot network is used for initial booting and installation of each node. IP addresses on this network are reachable only within the data center. The default configuration combines the PXEBoot network and the management network. If a separate PXEBoot network is used, it will share the management interface, which requires the management network to be placed on a VLAN. Configure a separate PXEBoot network [y/N]: Management Network: ------------------- The management network is used for internal communication between platform components. IP addresses on this network are reachable only within the data center. A management bond interface provides redundant connections for the management network. Management interface link aggregation [y/N]: Management interface [enp0s8]: Management interface MTU [1500]: Management subnet [192.168.204.0/24]: Use entire management subnet [Y/n]: IP addresses can be assigned to hosts dynamically or a static IP address can be specified for each host. This choice applies to both the management network and cluster-host network. Warning: Selecting 'N', or static IP address allocation, disables automatic provisioning of new hosts in System Inventory, requiring the user to manually provision using the 'system host-add' command. Dynamic IP address allocation [Y/n]: Management Network Multicast subnet [239.1.1.0/28]: Cluster Host Network: ----------------------- The cluster host network is used for internal communication between Kubernetes clusters. IP addresses on this network are reachable only within the data center. If a separate cluster host interface is not configured the management network will be used. An cluster host bond interface provides redundant connections for the cluster host network. Cluster host interface link aggregation [y/N]: Cluster host interface [enp0s8]: Configure an cluster host VLAN [y/N]: Cluster subnet [192.168.206.0/24]: External OAM Network: --------------------- The external OAM network is used for management of the cloud. It also provides access to the platform APIs. IP addresses on this network are reachable outside the data center. An external OAM bond interface provides redundant connections for the OAM network. External OAM interface link aggregation [y/N]: External OAM interface [enp0s3]: Configure an external OAM VLAN [y/N]: External OAM interface MTU [1500]: External OAM subnet [10.10.10.0/24]: External OAM gateway address [10.10.10.1]: External OAM floating address [10.10.10.2]: External OAM address for first controller node [10.10.10.3]: External OAM address for second controller node [10.10.10.4]: Domain Name System (DNS): ------------------------- Configuring DNS servers accessible through the external OAM network allows domain names to be mapped to IP addresses. The configuration of at least one DNS server is mandatory. To skip the configuration of one or more nameservers (1 to 3 are allowed), enter C to continue to the next configuration item. Nameserver 1 [8.8.8.8]: Nameserver 2 [8.8.4.4]: C Cloud Authentication: ------------------------------- Configure a password for the Cloud admin user The Password must have a minimum length of 7 character, and conform to password complexity rules Create admin user password: Repeat admin user password: The following configuration will be applied: System Configuration -------------------- Time Zone: UTC System mode: duplex PXEBoot Network Configuration ----------------------------- Separate PXEBoot network not configured PXEBoot Controller floating hostname: pxecontroller Management Network Configuration -------------------------------- Management interface name: enp0s8 Management interface: enp0s8 Management interface MTU: 1500 Management subnet: 192.168.204.0/24 Controller floating address: 192.168.204.2 Controller 0 address: 192.168.204.3 Controller 1 address: 192.168.204.4 NFS Management Address 1: 192.168.204.5 NFS Management Address 2: 192.168.204.6 Controller floating hostname: controller Controller hostname prefix: controller- OAM Controller floating hostname: oamcontroller Dynamic IP address allocation is selected Management multicast subnet: 239.1.1.0/28 Infrastructure Network Configuration ------------------------------------ Infrastructure interface not configured Kubernetes Cluster Network Configuration ---------------------------------------- Cluster pod network subnet: 172.16.0.0/16 Cluster service network subnet: 10.96.0.0/12 Cluster host interface name: enp0s8 Cluster host interface: enp0s8 Cluster host interface MTU: 1500 Cluster host subnet: 192.168.206.0/24 External OAM Network Configuration ---------------------------------- External OAM interface name: enp0s3 External OAM interface: enp0s3 External OAM interface MTU: 1500 External OAM subnet: 10.10.10.0/24 External OAM gateway address: 10.10.10.1 External OAM floating address: 10.10.10.2 External OAM 0 address: 10.10.10.3 External OAM 1 address: 10.10.10.4 DNS Configuration ----------------- Nameserver 1: 8.8.8.8 Apply the above configuration? [y/n]: y Applying configuration (this will take several minutes): 01/08: Creating bootstrap configuration ... DONE 02/08: Applying bootstrap manifest ... DONE 03/08: Persisting local configuration ... DONE 04/08: Populating initial system inventory ... DONE 05/08: Creating system configuration ... DONE 06/08: Applying controller manifest ...
Provisioning the platform
TO DO
Boot the second AIO controller
Boot the second VM (without an ISO media mounted) Hit F12 immediately when the VM starts to select a different boot option - select the "lan" option to force a network boot.
At the controller-1 console, you will see a message instructing you to configure the personality of the node. Do this from a shell on controller-0 as follows:
source /etc/platform/openrc system host-list +----+--------------+-------------+----------------+-------------+--------------+ | id | hostname | personality | administrative | operational | availability | +----+--------------+-------------+----------------+-------------+--------------+ | 1 | controller-0 | controller | unlocked | enabled | available | | 2 | None | None | locked | disabled | offline | +----+--------------+-------------+----------------+-------------+--------------+ [wrsroot@controller-0 ~(keystone_admin)]# system host-update 2 personality=controller
The packages will install and the controller will reboot.
TO DO: add output from host-update step
Provisioning the second AIO controller
TO DO
Prepare the host for running the containerized services
TO DO
Using sysinv to bring up/down the containerized services
Refer to these instructions on the AIO SX page here
Verify the cluster endpoints
Refer to these instructions on the AIO SX page here
Provider/tenant networking setup
Refer to these instructions on the AIO SX page here
Horizon access
Refer to these instructions on the AIO SX page here
Known Issues and Troubleshooting
None