Jump to: navigation, search

Difference between revisions of "StarlingX/Installation Guide"

(StarlingX Installation Guide)
 
 
(57 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 +
 +
 +
See the [https://docs.starlingx.io/deploy_install_guides/index.html StarlingX Deploy and Installation Guide] for information on installing StarlingX.  This wiki page has been deprecated.
 +
 +
<!--
 +
 
== Intro ==
 
== Intro ==
  
This section contains information about the StarlingX installation in a virtualized environment using Libvirt/QEMU.
+
StarlingX may be installed in:
 +
* '''Bare Metal''': Real deployments of StarlingX are only supported on physical servers.
 +
* '''Virtual Environment''': It should only be used for evaluation or development purposes.
 +
<br>
 +
StarlingX installed in virtual environments has two options:
 +
* [[Installation_libvirt_qemu|Libvirt/QEMU]]
 +
* VirtualBox
  
==Software Configurations==
+
== Requirements ==
  
* All In One
+
Different use cases require different configurations.
* Standard Controller Storage
 
* Duplex
 
* Standard Dedicated Storage
 
  
==Standard Controller Storage==
+
=== Bare Metal ===
  
==Requirements==
+
The minimum requirements for the physical servers where StarlingX might be deployed, include:
  
Different use cases require different configurations. For general StarlingX deployment, the recommended minimum requirements include:
+
* '''Controller Hosts'''
 +
** Minimum Processor is:
 +
*** Dual-CPU Intel® Xeon® E5 26xx Family (SandyBridge) 8 cores/socket
 +
** Minimum Memory: 64 GB
 +
** Hard Drives:
 +
*** Primary Hard Drive, minimum 500 GB for OS and system databases.
 +
*** Secondary Hard Drive, minimum 500 GB for persistent VM storage.
 +
** 2 physical Ethernet interfaces: OAM and MGMT Network.
 +
** USB boot support.
 +
** PXE boot support.
 +
* '''Storage Hosts'''
 +
** Minimum Processor is:
 +
*** Dual-CPU Intel® Xeon® E5 26xx Family (SandyBridge) 8 cores/socket.
 +
** Minimum Memory: 64 GB.
 +
** Hard Drives:
 +
*** Primary Hard Drive, minimum 500 GB for OS.
 +
*** 1 or more additional Hard Drives for CEPH OSD storage, and
 +
*** Optionally 1 or more SSD or NVMe Drives for CEPH Journals.
 +
** 1 physical Ethernet interface: MGMT Network
 +
** PXE boot support.
 +
* '''Compute Hosts'''
 +
** Minimum Processor is:
 +
*** Dual-CPU Intel® Xeon® E5 26xx Family (SandyBridge) 8 cores/socket.
 +
** Minimum Memory: 32 GB.
 +
** Hard Drives:
 +
*** Primary Hard Drive, minimum 500 GB for OS.
 +
*** 1 or more additional Hard Drives for ephemeral VM Storage.
 +
** 2 or more physical Ethernet interfaces: MGMT Network and 1 or more Provider Networks.
 +
** PXE boot support.
 +
<br>
 +
The recommended minimum requirements for the physical servers are described later in each StarlingX Deployment Options guide.
  
===Hardware Requirements===
+
=== Virtual Environment ===
 +
 
 +
The recommended minimum requirements for the workstation, hosting the Virtual Machine(s) where StarlingX will be deployed, include:
 +
 
 +
==== Hardware Requirements ====
  
 
A workstation computer with:
 
A workstation computer with:
  
* Processor: x86_64 only supported architecture with hardware virtualization extensions
+
* Processor: x86_64 only supported architecture with BIOS enabled hardware virtualization extensions
 +
* Cores: 8 (4 with careful monitoring of cpu load)
 
* Memory: At least 32GB RAM
 
* Memory: At least 32GB RAM
 
* Hard Disk: 500GB HDD
 
* Hard Disk: 500GB HDD
 
* Network: Two network adapters with active Internet connection
 
* Network: Two network adapters with active Internet connection
  
===Software Requirements===
+
==== Software Requirements ====
  
 
A workstation computer with:
 
A workstation computer with:
Line 35: Line 79:
 
* Libvirt Library
 
* Libvirt Library
 
* QEMU Full System Emulation Binaries
 
* QEMU Full System Emulation Binaries
* <stx-deployment> project codenamed as tic_vb
+
* <stx-deployment> project
 
* StarlingX ISO Image
 
* StarlingX ISO Image
  
==Deployment Environment Setup==
+
==== Deployment Environment Setup ====
 
 
This section describes how to set up a StarlingX system in a workstation computer. After completing these steps, you will be able to deploy and run your StarlingX system on the following Linux distribution:
 
  
* Ubuntu 16.04 LTS 64-bit
+
This section describes how to set up the workstation computer which will host the Virtual Machine(s) where StarlingX will be deployed.
  
===Updating Your Operating System===
+
===== Updating Your Operating System =====
  
 
Before proceeding with the build, ensure your OS is up to date. You’ll first need to update the local database list of available packages:
 
Before proceeding with the build, ensure your OS is up to date. You’ll first need to update the local database list of available packages:
Line 52: Line 94:
 
</nowiki></pre>
 
</nowiki></pre>
  
===Installing Requirements and Dependencies===
+
===== Install stx-tools project =====
  
Install the required packages in an Ubuntu host system with:
+
Clone the stx-tools project. Usually you’ll want to clone it under your user’s home directory.
 
 
<pre><nowiki>
 
$ sudo apt-get install git virt-manager libvirt-bin qemu-system
 
</nowiki></pre>
 
 
 
===Installing Deployment Tool===
 
 
 
Clone the <stx-deployment> project codenamed as tic_vb. Usually you’ll want to clone it under your user’s home directory.
 
  
 
<pre><nowiki>
 
<pre><nowiki>
 
$ cd $HOME
 
$ cd $HOME
$ git clone https://github.intel.com/madawaska/tic_vb.git
+
$ git clone git://git.openstack.org/openstack/stx-tools
 
</nowiki></pre>
 
</nowiki></pre>
  
===Getting the StarlingX ISO Image===
+
===== Installing Requirements and Dependencies =====
 
 
1. Get the StarlingX ISO Image from:
 
  
 +
Navigate to the stx-tools installation libvirt directory:
 
<pre><nowiki>
 
<pre><nowiki>
Tbd
+
$ cd $HOME/stx-tools/deployment/libvirt/
 
</nowiki></pre>
 
</nowiki></pre>
  
2. Copy the StarlingX ISO Image to the ''<stx-deployment>'' libvirt project directory naming it as bootimage.iso:
+
Install the required packages:
 
 
 
<pre><nowiki>
 
<pre><nowiki>
$ cp <starlingx iso image> $HOME/tic_vb/libvirt/bootimage.iso
+
$ bash install_packages.sh
 
</nowiki></pre>
 
</nowiki></pre>
  
==Controller-0 Host Installation==
+
===== Disabling Firewall =====
  
Installing controller-0 involves initializing a host with software and then applying a configuration from the command line. The configured host becomes Controller-0. <br>
+
Unload firewall and disable firewall on boot:
Procedure:
 
  
# Using an ISO image of StarlingX, initialize the controller host via Libvirt/QEMU.
 
# Configure the controller using the config_controller script.
 
 
===Initializing Controller-0===
 
This section describes how to initialize StarlingX in host Controller-0. Except where noted, all the commands must be executed from a console of the Workstation.
 
 
# Navigate to the ''<stx-deployment>'' libvirt project directory:
 
#:<pre><nowiki>
 
#:$ cd <stx-deployment>/libvirt
 
#:</nowiki></pre>
 
# Run the install packages script:
 
#:<pre><nowiki>
 
#:$ bash install_packages.sh
 
#:</nowiki></pre>
 
 
* Run the libvirt qemu setup script:
 
 
<pre><nowiki>
 
<pre><nowiki>
$ bash setup_tic.sh
+
$ sudo ufw disable
 +
Firewall stopped and disabled on system startup
 +
$ sudo ufw status
 +
Status: inactive
 
</nowiki></pre>
 
</nowiki></pre>
  
* From the KVM/VirtManager window, power on the host to be configured as Controller-0 and show the virtual machine console and details.<br>
+
== Getting the StarlingX ISO Image ==
* When the installer is loaded and the installer welcome screen appears in the Controller-0 host, select the type of installation "Standard Controller Configuration".<br>
 
* Select the "Graphical Console" as the console to use during installation.<br>
 
* Select "Standard Security Boot Profile" as the Security Profile.<br>
 
* Monitor the initialization until it is complete. When initialization is complete, a reboot is initiated on the Controller-0 host.<br>
 
* After a few minutes, the Controller-0 host reboots, briefly displays a GNU GRUB screen, and then boots automatically into the StarlingX image.<br>
 
* 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):
 
<pre><nowiki>
 
Changing password for wrsroot.
 
(current) UNIX Password:
 
</nowiki></pre>
 
  
Enter a new password for the wrsroot account:
+
Follow the instructions from [[StarlingX/Developer_Guide]] to build a StarlingX ISO image.
<pre><nowiki>
 
New password:
 
</nowiki></pre>
 
  
Enter the new password again to confirm it:
+
=== Bare Metal ===
<pre><nowiki>
 
Retype new password:
 
</nowiki></pre>
 
  
Controller-0 is initialized with StarlingX, and is ready for configuration.
+
A bootable USB flash drive containing StarlingX ISO image.
  
===Configuring Controller-0===
+
=== Virtual Environment ===
  
This section describes how to perform the Controller-0 configuration interactively. Except where noted, all the commands must be executed from the console of the active controller (here assumed to be controller-0).
+
Copy the StarlingX ISO Image to the stx-tools deployment libvirt project directory:
  
When run interactively, the config_controller script presents a series of prompts for initial configuration of StarlingX. The script is used to configure the first controller in the StarlingX cluster as controller-0. The prompts are grouped by configuration area. To start the script interactively, use the following command with no parameters and accept all the default values:
 
 
<pre><nowiki>
 
<pre><nowiki>
$ sudo config_controller
+
$ cp <starlingx iso image> $HOME/stx-tools/deployment/libvirt/
 
</nowiki></pre>
 
</nowiki></pre>
  
The output when config_controller script is run interactively is:
+
== Deployment Options ==
<pre><nowiki>
 
WARNING: Command should only be run from the console. Continuing with this
 
terminal may cause loss of connectivity and configuration failure
 
...
 
Apply the above configuration? [y/n]: y
 
 
 
Applying configuration (this will take several minutes):
 
  
01/08: Creating bootstrap configuration ... DONE
+
* Standard Controller
02/08: Applying bootstrap manifest ... DONE
+
** [[StarlingX/Installation Guide/Dedicated Storage|StarlingX Cloud with Dedicated Storage]]
03/08: Persisting local configuration ... DONE
+
** [[StarlingX/Installation Guide/Controller Storage|StarlingX Cloud with Controller Storage]]
04/08: Populating initial system inventory ... DONE
+
* All-in-one
05:08: Creating system configuration ... DONE
+
** [[StarlingX/Installation Guide/Duplex|StarlingX Cloud Duplex]]
06:08: Applying controller manifest ... DONE
+
** [[StarlingX/Installation Guide/Simplex|StarlingX Cloud Simplex]]
07:08: Finalize controller configuration ... DONE
 
08:08: Waiting for service activation ... DONE
 
  
Configuration was applied
+
-->
 
 
Please complete any out of service comissioning steps with system commands and unlock controller to proceed.
 
</nowiki></pre>
 

Latest revision as of 20:53, 26 July 2019


See the StarlingX Deploy and Installation Guide for information on installing StarlingX. This wiki page has been deprecated.