Jump to: navigation, search

Difference between revisions of "StarlingX/Containers/InstallationOnAIODX"

(Initial Configuration)
(Initial Configuration)
Line 54: Line 54:
 
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.
+
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.  
+
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.
  
 
+
After you apply the configuration
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:
 
The following configuration will be applied:
  
Line 257: Line 120:
  
 
Apply the above configuration? [y/n]: y
 
Apply the above configuration? [y/n]: y
 +
</pre>
  
Applying configuration (this will take several minutes):
+
In this example only Nameserver 8.8.8.8 was used
 
 
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>
 
  
 
== Provisioning the platform ==
 
== Provisioning the platform ==

Revision as of 20:05, 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.

After you apply the configuration

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
In this example only Nameserver 8.8.8.8 was used

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