*This repository is used to create OKD 3.11 Cluster with 9 simple steps on *Bare VM's**
Note: We are not going to create any VM's during this process. User is expected to have VM's before proceeding with this repository
*Below is the example configuration that we are going to refer through out this repository.*
Name | IP | OS | RAM | CPU |
---|---|---|---|---|
okd-master-node | 100.10.10.100 | CentOS7 | 16GB | 4 |
okd-worker-node-1 | 100.10.10.101 | CentOS7 | 16GB | 4 |
okd-worker-node-2 | 100.10.10.102 | CentOS7 | 16GB | 4 |
okd-worker-node-3 | 100.10.10.103 | CentOS7 | 16GB | 4 |
okd-infra-node-1 | 100.10.10.104 | CentOS7 | 16GB | 4 |
Update the system and host names for all nodes
100.10.10.100 (okd-master-node)
100.10.10.101 (okd-worker-node-1)
100.10.10.102 (okd-worker-node-2)
100.10.10.103 (okd-worker-node-3)
100.10.10.104 (okd-infra-node-1)
Unix Command!!!
$ yum update -y
$ nano /etc/hostname
(OR) $ nmtui
Enable SELINUX=enforcing on all master/worker/infra nodes
100.10.10.100 (okd-master-node)
100.10.10.101 (okd-worker-node-1)
100.10.10.102 (okd-worker-node-2)
100.10.10.103 (okd-worker-node-3)
100.10.10.104 (okd-infra-node-1)
Unix Command!!!
$ nano /etc/selinux/config
We can verify the status by running the below command. The correct status will not reflect once we changed until we reboot the machines
$ sestatus
Reboot all master/worker/infra nodes
100.10.10.100 (okd-master-node)
100.10.10.101 (okd-worker-node-1)
100.10.10.102 (okd-worker-node-2)
100.10.10.103 (okd-worker-node-3)
100.10.10.104 (okd-infra-node-1)
Unix Command!!!
$ reboot
Checkout the code (git clone https://github.com/SubhakarKotta/okd-installation-centos.git)
Configure okd-installation-centos/provisioning/settings.sh file
Copy "okd-installation-centos" folder to all master/worker nodes
100.10.10.100 (okd-master-node)
100.10.10.101 (okd-worker-node-1)
100.10.10.102 (okd-worker-node-2)
100.10.10.103 (okd-worker-node-3)
100.10.10.104 (okd-infra-node-1)
Example copy to root folder and execution permissions can be applied by executing the below command.
Unix Command!!!
$ chmod +x -R okd-installation-centos
Execute the below script on all master/worker/infra nodes
100.10.10.100 (okd-master-node)
100.10.10.101 (okd-worker-node-1)
100.10.10.102 (okd-worker-node-2)
100.10.10.103 (okd-worker-node-3)
100.10.10.104 (okd-infra-node-1)
Unix Command!!!
$ okd-installation-centos/provisioning/install_prerequisites.sh
Enable SSH to communicate all the other "worker/infra nodes" from "master" with out "password". All the below commands needs to be executed on "master" node only
100.10.10.101 (okd-master-node)
Unix Command!!!
$ ssh-keygen -t rsa
okd-master-node
$ cat ~/.ssh/id_rsa.pub | ssh root@100.10.10.100 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
okd-worker-node-1
$ cat ~/.ssh/id_rsa.pub | ssh root@100.10.10.101 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
okd-worker-node-2
$ cat ~/.ssh/id_rsa.pub | ssh root@100.10.10.102 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
okd-worker-node-3
$ cat ~/.ssh/id_rsa.pub | ssh root@100.10.10.103 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
okd-infra-node-4
$ cat ~/.ssh/id_rsa.pub | ssh root@100.10.10.104 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
Execute the below script only on master node
100.10.10.101 (okd-master-node)
Unix Command!!!
$ okd-installation-centos/provisioning/install_master.sh
Verify okd installation is success by executing below two commands to see all the nodes and pods.
Unix Command!!!
$ oc login -u admin -p admin https://console.okd.nip.io:8443
$ oc get projects
The okd Console can be accessed via the below URL from your local machine
https://console.okd.nip.io:8443
helm