OpenShift Installation: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
No edit summary
(Replaced content with "=External= * https://install.openshift.com/ =Internal= * OpenShift =Subjects= * OpenShift 3.5 Installation")
Line 7: Line 7:
* [[OpenShift#Subjects|OpenShift]]
* [[OpenShift#Subjects|OpenShift]]


=Overview=
=Subjects=


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]].
* [[OpenShift 3.5 Installation]]
 
=Prerequisites=
 
==System Requirements==
 
Relevance OpenShift 3.3.
 
===Master===
 
* Physical or virtual system.
* RHEL 7.1 installed with the "minimal" installation option.
* 2 CPUs
* 8 GB RAM
* 30 GB storage space.
 
===Node===
 
* Physical or virtual system.
* RHEL 7.1 installed with the "minimal" installation option.
* 1 CPU
* 8 GB RAM
* 15 GB storage space.
* Docker 1.9.1 or later
* 15 GB to allocated to Docker storage.
 
==External DNS Setup==
 
An [[OpenShift_Concepts#External_DNS_Server|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 [[OpenShift Concepts#Node|node]] that executes the [[OpenShift_Concepts#Router|default router]], by adding an [[DNS_Concepts#A_.28Host.29|A record]], with a low TTL. If the environment has multiple routers, an external load balancer is required.
 
<pre>
*.myapp.example.com. 300 IN  A 1.2.3.4
</pre>
 
=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:
 
<pre>
yum install wget git net-tools bind-utils iptables-services bridge-utils bash-completion
yum update -y
</pre>
 
[[RHEL_7/Centos_7_Installation#Turn_off_firewalld_and_configure_the_iptables_service|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:
 
<pre>
# ssh-keygen
# ssh-copy-id root@node1.example.com
</pre>
 
* Configure iptables. iptables must be running and the following ports must be open. <font color=red>Most of the ports will be configured by the installer, automatically - verify that.</font>:
 
{{Internal|OpenShift Ports|OpenShift Ports}}
 
=Install Docker=
 
A Docker that works with OpenShift must be installed from <tt>rhel-7-server-ose-3.2-rpms</tt> and have it running on master and all nodes before installing OpenShift. Version requirements are specified in [[#Prerequisites|Prerequisites]].
 
<pre>
yum install docker
</pre>
 
Edit <tt>/etc/sysconfig/docker</tt> and add:
 
<pre>
OPTIONS=--selinux-enabled --insecure-registry 172.30.0.0/16
</pre>
 
--insecure-registry instructs Docker daemon to trust any Docker registry on 172.30.0.0/16 subnet without requiring a certificate.
 
The [[Docker_Concepts#Loopback_Storage|default loopback storage]] is not appropriate for production, it should be replaced by a [[Linux_Logical_Volume_Management_Concepts#Thinly-Provisioned_Logical_Volumes_.28Thin_Volumes.29|thin-pool logical volume]]. Use the <tt>docker-storage-setup</tt> script:
* The script reads configuration options from <tt>/etc/sysconfig/docker-storage-setup</tt>.
* Reinitialized Docker before starting <tt>docker-storage-setup</tt>:
<pre>
systemctl stop docker
rm -rf /var/lib/docker/*
</pre>
* Execute <tt>docker-storage-setup</tt> 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:
<pre>
# cat /etc/sysconfig/docker-storage-setup
DEVS=/dev/vdb
VG=docker-vg
# docker-storage-setup
</pre>
 
<font color=red>TODO B3cEwd</font>.
 
Generic installation instructions:
 
{{Internal|Docker_Installation#Prerequisites|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 [[OpenShift_Concepts#Volume|persistent volumes]].
 
=Advanced Installation=
 
{{Internal|OpenShift Advanced Installation|OpenShift Advanced Installation}}

Revision as of 20:24, 21 May 2017