OpenShift 3.5 Installation: Difference between revisions
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'. | |||
<font color=darkgrey> | <font color=darkgrey> |
Revision as of 21:51, 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
O/S Requirements and Configuration
- RHEL 7.3 with "minimal" installation.
- Packages from the "Extras" channel.
- Optionally configure the number of cores used by the master and node OpenShift processes.
- Make sure SELinux is enabled on all hosts. If is not, enable SELinux and make sure SELINUXTYPE is "targeted" in /etc/selinux/config.
- Enable NTP on all hosts in the cluster. This can be done automatically by Ansible, see 'openshift_clock_enabled'.
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.:
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:
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.