Frontend Installation

Anoop Rajendra edited this page Oct 26, 2016 · 69 revisions
Clone this wiki locally

Stacki requires a single server that will host all the software and services used to build out other servers. We call this server the frontend, and the first step to running Stacki is to build a frontend.

The process is fairly simple and looks similar to a standard Linux build with the addition of a wizard to capture site-specific networking information.

Requirements

A frontend has the following hardware requirements

Resource Minimum Recommended
System Memory 2 GB 16 GB
Network Interfaces 1 1
Disk Capacity 64 GB 200 GB
CD/DVD Device 1 1

BIOS boot order

  1. CD/DVD Device
  2. Hard Disk

In the simplest configuration, Stacki assumes a single network for all servers. Stacki refers to the single network as the private network, and often this will be an isolated network. This default setup in shown below.

The private network cannot have a DHCP server that would answer a DHCP request from a backend server. The frontend provides DHCP services on the private network, and any additional DHCP server would cause conflicts on the network.

Stacki 1.x requires a public and private network

New or Existing

Stacki can build a new frontend from bare metal or it can be added on top of an existing server. If you wish to install Stacki on top of an existing system, skip to the section labeled existing.

New

Download the Stacki jumbo DVD here and burn the file to a DVD or mount it on the virtual media for the server to be installed. Installing a frontend will completely erase and reformat the hard disks in the server, so be careful which server you decide to become your frontend.

Boot the server with the DVD (or virtual media mounted) and the following screen will appear after the BIOS is initialized:

If you don't see the above screen, go back to the requirements section and make sure the DVD is the first entry in the boot order.

You can hit enter or just wait a few seconds and the Stacki frontend installation will begin, and you will soon see the Installation Wizard.

Existing

A Stacki frontend can be installed on top of an existing Red Hat based server. The server must be running the x86_64 version of CentOS or RHEL version 6.x or 7.x.

To perform this installation, log into the frontend and download two files:

  1. Stacki ISO. Download the Stacki ISO (6.x version or 7.x version) and put it on your server you want to transform into a Stacki frontend.

    IMPORTANT: It is important that you supply the stacki ISO and not the stacki-os ISO.

  2. stacki-fab RPM. Download the stacki-fab RPM and put it on your server you want to transform into a Stacki frontend.

Install the stacki-fab RPM:

# rpm -i stacki-fab-3.x-all.x86_64.rpm

Execute frontend-install.py:

# /opt/stack/bin/frontend-install.py --stacki-iso=stacki-3.2-6.x.x86_64.disk1.iso

The above step will run several commands and will eventually display the Installation Wizard.

Installation Wizard

Timezone

The first screen will appear and you will be prompted to enter your timezone:

Network

The network configuration screen allows you to set up the network that will be used by the frontend to install backend hosts.

  1. Fully Qualified Host Name - Input the FQDN for the frontend.
  2. Choose from the network Devices to select the frontend's network interface.
  3. IP address of the interface.
  4. Netmask.
  5. Gateway.
  6. DNS Servers - More than one DNS Server can be entered as a comma-separated list (i.e., 8.8.8.8, 4.2.2.2, 8.8.4.4).

Click Continue to configure the network interface.

Password

Enter the password for the root account on the frontend.

Choose Partition

If Automated mode is selected, the installer will repartition and reformat the first discovered hard drive that is connected to the frontend. All other drives connected to the frontend will be left untouched.

Partition Name Size
/ 16GB
/var 16GB
swap 1GB
/export (symbolically linked to /state/partition1) remainder of root disk

When using automatic partitioning, the installer repartitions and reformats the first hard drive (e.g. sda) that the installer discovers. All previous data on this drive will be erased. All other drives will be left untouched. If you are unsure about how the drives will be discovered in a multi-disk frontend, select Manual mode.

In Manual mode, the installer brings up a partition setup screen after the wizard exits. In this mode, specify at least 16 GB for the root partition and a separate /export partition. You should add a swap partition, and /var if you have made / only 16GB.

Add Pallets

Choose the Pallets you want to install. Booting from a DVD, pallets should automatically load onto the list for you to choose.

Select stacki and os pallets to install.

Review

Review the installation parameters and click Continue to proceed.

New

If this was a new installation, the frontend will now format its filesystems and copy the pallets from the DVD onto its hard disk. Next, it will install all the packages and then run post configuration scripts. When this completes, the frontend will reboot. Your Stacki frontend is now ready to install backend servers.

Existing

If this was an existing installation, after the frontend-install.py program completes, you must reboot the frontend:

# reboot

After the server reboots, you need to add an OS pallet. This OS pallet will be used as the base OS to install onto the backend nodes. This will be either the CentOS installation DVD(s) or the Red Hat installation DVD.

For example, to add the CentOS 6.8 DVDs to the Stacki frontend, first download the CentOS DVDs to the frontend then execute:

# stack add pallet CentOS-6.8-x86_64-bin-DVD1.iso
# stack add pallet CentOS-6.8-x86_64-bin-DVD2.iso

Then enable the CentOS pallet (this makes the CentOS repository on the Stacki frontend available for backend installs):

# stack enable pallet CentOS
# stack list pallet

Should produce output similar to:

NAME    VERSION RELEASE ARCH   OS     BOXES  
stacki: 3.2     6.x     x86_64 redhat default
CentOS: 6       6.x     x86_64 redhat default