OpenShift 3.5 Installation: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 24: Line 24:
* Optionally [[OpenShift Core Usage Configuration#Overview|configure the number of cores used by the master and node OpenShift processes]].
* Optionally [[OpenShift Core Usage Configuration#Overview|configure the number of cores used by the master and node OpenShift processes]].
* Make sure SELinux [[SELinux_Operations#How_to_Find_Out_Whether_SELinux_is_Enabled|is enabled]] on all hosts. If is not, enable SELinux and make sure <tt>SELINUXTYPE</tt> is "[[SELinux_Concepts#type_targeted|targeted]]" in /etc/selinux/config.
* Make sure SELinux [[SELinux_Operations#How_to_Find_Out_Whether_SELinux_is_Enabled|is enabled]] on all hosts. If is not, enable SELinux and make sure <tt>SELINUXTYPE</tt> is "[[SELinux_Concepts#type_targeted|targeted]]" in /etc/selinux/config.
* Enable NTP on all hosts in the cluster. This can be done automatically by Ansible, see 'openshift_clock_enabled'.
* Enable Network Time Protocol (NTP) on all hosts in the cluster. This can be done automatically by Ansible, see "openshift_clock_enabled".


<font color=darkgrey>
<font color=darkgrey>

Revision as of 21:52, 21 May 2017

External

Internal

Overview

There are two installation methods: quick install, which uses a CLI tool available in the "atomic-openshift-utils" package, which, in turn, uses Ansible in the background, and advanced install. The advanced install assumes familiarity with Ansible. This document covers advance install.

Prerequisites

Minimum Hardware Requirements

https://docs.openshift.com/container-platform/3.5/install_config/install/prerequisites.html#hardware

O/S Requirements and Configuration

External DNS Setup

An external DNS server is required.

After setup, the DNS server needs to be configured to resolve a public wildcard DNS entry to the public IP address of the node that executes the default router, by adding an A record, with a low TTL. If the environment has multiple routers, an external load balancer is required.

*.myapp.example.com. 300 IN  A 1.2.3.4

O/S Installation

Execute a minimal installation on one host, and perform the following steps. Then the same image can be used for as a base for the other nodes.

Register all hosts with Red Hat Subscription Manager to RHEL 7.x and OpenShift 3 repositories.

Extra packages required:

yum install wget git net-tools bind-utils iptables-services bridge-utils bash-completion
yum update -y

Turn off firewalld and configure the iptables service

  • Make sure master can issue remote commands on the nodes without requiring password. Ansible, who runs the installation process, requires a user that has password-less access to all hosts.

From the master, as root:

# ssh-keygen
# ssh-copy-id root@node1.example.com
  • Configure iptables. iptables must be running and the following ports must be open. Most of the ports will be configured by the installer, automatically - verify that.:
OpenShift Ports

Install Docker

A Docker that works with OpenShift must be installed from rhel-7-server-ose-3.2-rpms and have it running on master and all nodes before installing OpenShift. Version requirements are specified in Prerequisites.

yum install docker

Edit /etc/sysconfig/docker and add:

OPTIONS=--selinux-enabled --insecure-registry 172.30.0.0/16

--insecure-registry instructs Docker daemon to trust any Docker registry on 172.30.0.0/16 subnet without requiring a certificate.

The default loopback storage is not appropriate for production, it should be replaced by a thin-pool logical volume. Use the docker-storage-setup script:

  • The script reads configuration options from /etc/sysconfig/docker-storage-setup.
  • Reinitialized Docker before starting docker-storage-setup:
systemctl stop docker
rm -rf /var/lib/docker/*
  • Execute docker-storage-setup to create thin-pool volume free space in the volume group where the root filesystem resides.
  • Use the existing volume group to create thin-pool:
# cat /etc/sysconfig/docker-storage-setup
DEVS=/dev/vdb
VG=docker-vg
# docker-storage-setup

TODO B3cEwd.

Generic installation instructions:

Docker Installation

Run CLI to Install

Post-Install

Deploy the Integrated Docker Registry

Deploy the HAProxy Router

Load Image Streams

Load Templates

Set up NFS

The NFS server is required for persistent volumes.

Advanced Installation

OpenShift Advanced Installation