Jump to: navigation, search

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.
  
If you do not have direct access to the google DNS  nameserver 8.8.8.8 , you will need to configure that when prompted.
 
  
 
The system configuration should look like this:
 
The system configuration should look like this:
 
<pre>
 
<pre>
TO DO
+
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

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