Git Product home page Git Product logo

okd-installation-centos's Introduction

okd-installation-centos

enter image description here

About...

This repository is used to create OKD 3.11 Cluster with 9 simple steps on Bare VM's

Table of Contents

What are the prerequisites ?

What are the VM's provisioned ?

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

How to deploy openshift cluster ?

Step 1

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

Step 2

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

Step 3

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

Step 4

Checkout the code (git clone https://github.com/SubhakarKotta/okd-installation-centos.git)

Configure okd-installation-centos/provisioning/settings.sh file enter image description here

Step 5

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

Step 6

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

Step 7

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 [email protected] "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

okd-worker-node-1

$ cat ~/.ssh/id_rsa.pub | ssh [email protected] "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

okd-worker-node-2

$ cat ~/.ssh/id_rsa.pub | ssh [email protected] "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

okd-worker-node-3

$ cat ~/.ssh/id_rsa.pub | ssh [email protected] "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

okd-infra-node-4

$ cat ~/.ssh/id_rsa.pub | ssh [email protected] "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

Step 8

Execute the below script only on master node

  • 100.10.10.101 (okd-master-node)

Unix Command!!!

$ okd-installation-centos/provisioning/install_master.sh

Step 9

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

How to access okd Console ?

The okd Console can be accessed via the below URL from your local machine

https://console.okd.nip.io:8443

What are the addons provided ?

  • helm

okd-installation-centos's People

Contributors

s-u-b-h-a-k-a-r avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

okd-installation-centos's Issues

fatal: [openshift_ip=]: UNREACHABLE!

Hi Subhakar,

When running the install_master.sh.

I got these errors:

TASK [Gathering Facts] ********************************************************************************************************************************************************************** fatal: [openshift_ip=]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: ssh: Could not resolve hostname openshift_ip=: Name or service not known", "unreachable": true} ok: [192.168.56.111] ok: [192.168.56.112] ok: [192.168.56.110]

`
TASK [Ensure openshift-ansible installer package deps are installed] ************************************************************************************************************************
FAILED - RETRYING: Ensure openshift-ansible installer package deps are installed (3 retries left).
FAILED - RETRYING: Ensure openshift-ansible installer package deps are installed (2 retries left).
FAILED - RETRYING: Ensure openshift-ansible installer package deps are installed (1 retries left).
changed: [192.168.56.112]
changed: [192.168.56.110]
fatal: [192.168.56.111]: FAILED! => {"attempts": 3, "changed": false, "msg": "Failure talking to yum: Cannot find a valid baseurl for repo: base/7/x86_64"}

NO MORE HOSTS LEFT **************************************************************************************************************************************************************************

PLAY RECAP **********************************************************************************************************************************************************************************
192.168.56.110 : ok=27 changed=8 unreachable=0 failed=0 skipped=39 rescued=0 ignored=0
192.168.56.111 : ok=21 changed=7 unreachable=0 failed=1 skipped=31 rescued=0 ignored=0
192.168.56.112 : ok=22 changed=8 unreachable=0 failed=0 skipped=31 rescued=0 ignored=0
localhost : ok=11 changed=0 unreachable=0 failed=0 skipped=5 rescued=0 ignored=0
openshift_ip= : ok=0 changed=0 unreachable=1 failed=0 skipped=0 rescued=0 ignored=0
`

TASK [Gather Cluster facts] ***************************************************************************************************************************************************************** fatal: [192.168.56.111]: FAILED! => {"changed": false, "module_stderr": "Shared connection to 192.168.56.111 closed.\r\n", "module_stdout": "Traceback (most recent call last):\r\n File \"/root/.ansible/tmp/ansible-tmp-1561949353.47-31528618619513/AnsiballZ_openshift_facts.py\", line 114, in <module>\r\n _ansiballz_main()\r\n File \"/root/.ansible/tmp/ansible-tmp-1561949353.47-31528618619513/AnsiballZ_openshift_facts.py\", line 106, in _ansiballz_main\r\n invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\r\n File \"/root/.ansible/tmp/ansible-tmp-1561949353.47-31528618619513/AnsiballZ_openshift_facts.py\", line 49, in invoke_module\r\n imp.load_module('__main__', mod, module, MOD_DESC)\r\n File \"/tmp/ansible_openshift_facts_payload_QJerUp/__main__.py\", line 16, in <module>\r\nImportError: No module named ipaddress\r\n", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", "rc": 1} changed: [192.168.56.112] changed: [192.168.56.110]

`
TASK [Run variable sanity checks] ***********************************************************************************************************************************************************
fatal: [192.168.56.110]: FAILED! => {"msg": "last_checked_host: openshift_ip=, last_checked_var: ansible_python;'NoneType' object has no attribute 'getitem'"}

PLAY RECAP **********************************************************************************************************************************************************************************
192.168.56.110 : ok=34 changed=2 unreachable=0 failed=1 skipped=36 rescued=0 ignored=0
192.168.56.111 : ok=10 changed=0 unreachable=0 failed=1 skipped=26 rescued=0 ignored=0
192.168.56.112 : ok=15 changed=2 unreachable=0 failed=0 skipped=27 rescued=0 ignored=0
localhost : ok=11 changed=0 unreachable=0 failed=0 skipped=5 rescued=0 ignored=0
openshift_ip= : ok=0 changed=0 unreachable=1 failed=0 skipped=0 rescued=0 ignored=0

INSTALLER STATUS ****************************************************************************************************************************************************************************
Initialization : In Progress (0:00:13)

Failure summary:

  1. Hosts: 192.168.56.111
    Play: Initialize cluster facts
    Task: Gather Cluster facts
    Message: MODULE FAILURE
    See stdout/stderr for the exact error

  2. Hosts: 192.168.56.110
    Play: Verify Requirements
    Task: Run variable sanity checks
    Message: last_checked_host: openshift_ip=, last_checked_var: ansible_python;'NoneType' object has no attribute 'getitem'
    Adding password for user admin
    ./install_master.sh: line 26: oc: command not found
    `

Seems like my "openshift_ip" is empty. Any idea where to set this up?

Cheers,
Vincent

"Failed to connect to the host via ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).

Hi
I have followed all the steps as mentioned in the README.md but facing the below issue while running step8: install_master.sh.
PLAY [Fail openshift_kubelet_name_override for new hosts] **************************************************************************************************************

TASK [Gathering Facts] *************************************************************************************************************************************************
fatal: [192.168.0.01]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).", "unreachable": true}
fatal: [192.168.0.02]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).", "unreachable": true}
fatal: [192.168.0.03]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).", "unreachable": true}
fatal: [192.168.0.04]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).", "unreachable": true}

PLAY RECAP *************************************************************************************************************************************************************
192.168.0.01 : ok=0 changed=0 unreachable=1 failed=0 skipped=0 rescued=0 ignored=0
192.168.0.02 : ok=0 changed=0 unreachable=1 failed=0 skipped=0 rescued=0 ignored=0
192.168.0.03 : ok=0 changed=0 unreachable=1 failed=0 skipped=0 rescued=0 ignored=0
192.168.0.04 : ok=0 changed=0 unreachable=1 failed=0 skipped=0 rescued=0 ignored=0

and i have run the prerequisites.yml playbook with option -vvv so got the below log

<192.168.0.01> ESTABLISH SSH CONNECTION FOR USER: mviuser
<192.168.0.01> SSH: EXEC ssh -C -o ControlMaster=auto -o ControlPersist=60s -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o 'User="mviuser"' -o ConnectTimeout=10 -o ControlPath=/root/.ansible/cp/c7521eff98 192.168.0.01 '/bin/sh -c '"'"'echo ~mviuser && sleep 0'"'"''
<192.168.0.01> (255, '', 'Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).\r\n')
fatal: [192.168.0.01]: UNREACHABLE! => {
"changed": false,
"msg": "Failed to connect to the host via ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).",
"unreachable": true
}

suggest me to fix the issue

* fatal: [192.168.56.110]: FAILED! => {"changed": false, "msg": "Control plane pods didn't come up"}

Hi Subhakar,

Followed your instructions. But got error complaining the control plane is not showing up.

Any idea how to fix this?

`TASK [openshift_control_plane : Report control plane errors] ********************************************************************************************************************************
fatal: [192.168.56.110]: FAILED! => {"changed": false, "msg": "Control plane pods didn't come up"}

NO MORE HOSTS LEFT **************************************************************************************************************************************************************************

PLAY RECAP **********************************************************************************************************************************************************************************
192.168.56.110 : ok=310 changed=139 unreachable=0 failed=1 skipped=245 rescued=0 ignored=4
192.168.56.111 : ok=104 changed=56 unreachable=0 failed=0 skipped=99 rescued=0 ignored=0
192.168.56.112 : ok=104 changed=56 unreachable=0 failed=0 skipped=99 rescued=0 ignored=0
localhost : ok=11 changed=0 unreachable=0 failed=0 skipped=5 rescued=0 ignored=0

INSTALLER STATUS ****************************************************************************************************************************************************************************
Initialization : Complete (0:00:21)
Health Check : Complete (0:00:05)
Node Bootstrap Preparation : Complete (0:04:25)
etcd Install : Complete (0:00:33)
Master Install : In Progress (0:17:17)
This phase can be restarted by running: playbooks/openshift-master/config.yml

Failure summary:

  1. Hosts: 192.168.56.110
    Play: Configure masters
    Task: Report control plane errors
    Message: Control plane pods didn't come up
    Adding password for user admin
    The connection to the server okd-master-node:8443 was refused - did you specify the right host or port?`

Many thanks.

Cheers,
Vincent

CentOS 8 installation issue

Hi, I have problem with Centos 8 installation. There are some of the packages which are not available and I believe those are for CentOS 7 which are available on OKD documentation.

Is there any guide or documentation for CentOS 8 installation process for OKD 3.11 on CentOS 8.

SELinux is disabled on this host

I can't set Enforcing at my servers. Anyway workaround to install as disabled ?

TASK [openshift_node : Setting sebool container_manage_cgroup] *************************************************************
fatal: [172.30.32.131]: FAILED! => {"changed": false, "msg": "SELinux is disabled on this host."}
fatal: [172.30.32.133]: FAILED! => {"changed": false, "msg": "SELinux is disabled on this host."}
fatal: [172.30.32.134]: FAILED! => {"changed": false, "msg": "SELinux is disabled on this host."}

How does one access the internal docker registry?

How does one access the internal docker registry?
docker login docker-registry-default.apps.okd.nip.io:5000 Error response from daemon: Get https://docker-registry-default.apps.okd.nip.io:5000/v1/users/: dial tcp 37.247.48.68:5000: connect: connection refused

Stuck on Step TASK [openshift_control_plane : Wait for all control plane pods to come up and become ready]

Hi,

i'm trying to install openshift in 3 node. one as master, worker and infra.
i reffer to this tutorial ---xxxx---

i got stuck condition in step TASK [openshift_control_plane : Wait for all control plane pods to come up and become ready]
Process always retry and looping process.

anyone can help me to solve the problem or have same conditoin?

here the output of journalctl -xe
Jan 04 12:27:00 okd-master-node origin-node[73416]: ] WorkingDir: Ports:[] EnvFrom:[] Env:[] Resources:{Limits:map[] Requests:map[]} VolumeMounts:[{Name:master-config ReadOnly:false MountPath:/etc/origin/master/ SubPath: MountPropagation:<nil>} {Name:master-cloud-provider ReadOnly:false MountPath:/etc/origi Jan 04 12:27:00 okd-master-node origin-node[73416]: I0104 12:27:00.972686 73416 kuberuntime_manager.go:757] checking backoff for container "api" in pod "master-api-okd-master-node_kube-system(b24b15710309f0062b93e07af49cb464)" Jan 04 12:27:00 okd-master-node origin-node[73416]: I0104 12:27:00.972880 73416 kuberuntime_manager.go:767] Back-off 5m0s restarting failed container=api pod=master-api-okd-master-node_kube-system(b24b15710309f0062b93e07af49cb464) Jan 04 12:27:00 okd-master-node origin-node[73416]: E0104 12:27:00.972966 73416 pod_workers.go:186] Error syncing pod b24b15710309f0062b93e07af49cb464 ("master-api-okd-master-node_kube-system(b24b15710309f0062b93e07af49cb464)"), skipping: failed to "StartContainer" for "api" with CrashLoopBackOff: "Back-o Jan 04 12:27:02 okd-master-node origin-node[73416]: W0104 12:27:02.436153 73416 cni.go:172] Unable to update cni config: No networks found in /etc/cni/net.d Jan 04 12:27:02 okd-master-node origin-node[73416]: E0104 12:27:02.436791 73416 kubelet.go:2101] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized Jan 04 12:27:06 okd-master-node origin-node[73416]: E0104 12:27:06.624443 73416 reflector.go:136] k8s.io/kubernetes/pkg/kubelet/config/apiserver.go:47: Failed to list *v1.Pod: Get https://master-node:8443/api/v1/pods?fieldSelector=spec.nodeName%3Dokd-master-node&limit=500&resourceVersion=0: dial tcp 40.11 Jan 04 12:27:06 okd-master-node origin-node[73416]: E0104 12:27:06.625229 73416 reflector.go:136] k8s.io/kubernetes/pkg/kubelet/kubelet.go:455: Failed to list *v1.Service: Get https://master-node:8443/api/v1/services?limit=500&resourceVersion=0: dial tcp 40.114.4.244:8443: i/o timeout Jan 04 12:27:06 okd-master-node origin-node[73416]: E0104 12:27:06.626837 73416 reflector.go:136] k8s.io/kubernetes/pkg/kubelet/kubelet.go:464: Failed to list *v1.Node: Get https://master-node:8443/api/v1/nodes?fieldSelector=metadata.name%3Dokd-master-node&limit=500&resourceVersion=0: dial tcp 40.114.4.24 Jan 04 12:27:06 okd-master-node origin-node[73416]: W0104 12:27:06.718432 73416 status_manager.go:482] Failed to get status for pod "master-api-okd-master-node_kube-system(b24b15710309f0062b93e07af49cb464)": Get https://master-node:8443/api/v1/namespaces/kube-system/pods/master-api-okd-master-node: dial t Jan 04 12:27:07 okd-master-node origin-node[73416]: E0104 12:27:07.202887 73416 eviction_manager.go:243] eviction manager: failed to get get summary stats: failed to get node info: node "okd-master-node" not found Jan 04 12:27:07 okd-master-node origin-node[73416]: W0104 12:27:07.438296 73416 cni.go:172] Unable to update cni config: No networks found in /etc/cni/net.d Jan 04 12:27:07 okd-master-node origin-node[73416]: E0104 12:27:07.438541 73416 kubelet.go:2101] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized Jan 04 12:27:07 okd-master-node origin-node[73416]: E0104 12:27:07.636190 73416 event.go:212] Unable to write event: 'Post https://master-node:8443/api/v1/namespaces/default/events: dial tcp 40.114.4.244:8443: i/o timeout' (may retry after sleeping) Jan 04 12:27:12 okd-master-node origin-node[73416]: W0104 12:27:12.439963 73416 cni.go:172] Unable to update cni config: No networks found in /etc/cni/net.d Jan 04 12:27:12 okd-master-node origin-node[73416]: E0104 12:27:12.440318 73416 kubelet.go:2101] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized Jan 04 12:27:13 okd-master-node origin-node[73416]: I0104 12:27:13.663237 73416 kubelet_node_status.go:269] Setting node annotation to enable volume controller attach/detach Jan 04 12:27:13 okd-master-node origin-node[73416]: I0104 12:27:13.670168 73416 kubelet_node_status.go:441] Recording NodeHasSufficientDisk event message for node okd-master-node Jan 04 12:27:13 okd-master-node origin-node[73416]: I0104 12:27:13.670204 73416 kubelet_node_status.go:441] Recording NodeHasSufficientMemory event message for node okd-master-node Jan 04 12:27:13 okd-master-node origin-node[73416]: I0104 12:27:13.670221 73416 kubelet_node_status.go:441] Recording NodeHasNoDiskPressure event message for node okd-master-node Jan 04 12:27:13 okd-master-node origin-node[73416]: I0104 12:27:13.670233 73416 kubelet_node_status.go:441] Recording NodeHasSufficientPID event message for node okd-master-node

here the output of cat /var/log/message
Jan 4 12:35:48 master-node origin-node: exec openshift start master api --config=/etc/origin/master/master-config.yaml --loglevel=${DEBUG_LOGLEVEL:-2} Jan 4 12:35:48 master-node origin-node: ] WorkingDir: Ports:[] EnvFrom:[] Env:[] Resources:{Limits:map[] Requests:map[]} VolumeMounts:[{Name:master-config ReadOnly:false MountPath:/etc/origin/master/ SubPath: MountPropagation:<nil>} {Name:master-cloud-provider ReadOnly:false MountPath:/etc/origin/cloudprovider/ SubPath: MountPropagation:<nil>} {Name:master-data ReadOnly:false MountPath:/var/lib/origin/ SubPath: MountPropagation:<nil>} {Name:master-pki ReadOnly:false MountPath:/etc/pki SubPath: MountPropagation:<nil>} {Name:host-localtime ReadOnly:false MountPath:/etc/localtime SubPath: MountPropagation:<nil>}] VolumeDevices:[] LivenessProbe:&Probe{Handler:Handler{Exec:nil,HTTPGet:&HTTPGetAction{Path:healthz,Port:8443,Host:,Scheme:HTTPS,HTTPHeaders:[],},TCPSocket:nil,},InitialDelaySeconds:45,TimeoutSeconds:10,PeriodSeconds:10,SuccessThreshold:1,FailureThreshold:3,} ReadinessProbe:&Probe{Handler:Handler{Exec:nil,HTTPGet:&HTTPGetAction{Path:healthz/ready,Port:8443,Host:,Scheme:HTTPS,HTTPHeaders:[],},TCPSocket:nil,},InitialDelaySeconds:10,TimeoutSeconds:10,PeriodSeconds:10,SuccessThreshold:1,FailureThreshold:3,} Lifecycle:nil TerminationMessagePath:/dev/termination-log TerminationMessagePolicy:File ImagePullPolicy:IfNotPresent SecurityContext:&SecurityContext{Capabilities:nil,Privileged:*true,SELinuxOptions:nil,RunAsUser:nil,RunAsNonRoot:nil,ReadOnlyRootFilesystem:nil,AllowPrivilegeEscalation:nil,RunAsGroup:nil,} Stdin:false StdinOnce:false TTY:false} is dead, but RestartPolicy says that we should restart it. Jan 4 12:35:48 master-node origin-node: I0104 12:35:48.972452 73416 kuberuntime_manager.go:757] checking backoff for container "api" in pod "master-api-okd-master-node_kube-system(b24b15710309f0062b93e07af49cb464)" Jan 4 12:35:48 master-node origin-node: I0104 12:35:48.972772 73416 kuberuntime_manager.go:767] Back-off 5m0s restarting failed container=api pod=master-api-okd-master-node_kube-system(b24b15710309f0062b93e07af49cb464) Jan 4 12:35:48 master-node origin-node: E0104 12:35:48.972816 73416 pod_workers.go:186] Error syncing pod b24b15710309f0062b93e07af49cb464 ("master-api-okd-master-node_kube-system(b24b15710309f0062b93e07af49cb464)"), skipping: failed to "StartContainer" for "api" with CrashLoopBackOff: "Back-off 5m0s restarting failed container=api pod=master-api-okd-master-node_kube-system(b24b15710309f0062b93e07af49cb464)" Jan 4 12:35:49 master-node origin-node: E0104 12:35:49.206288 73416 certificate_manager.go:299] Failed while requesting a signed certificate from the master: cannot create certificate signing request: Post https://master-node:8443/apis/certificates.k8s.io/v1beta1/certificatesigningrequests: dial tcp 40.114.4.244:8443: i/o timeout Jan 4 12:35:51 master-node origin-node: I0104 12:35:51.205402 73416 certificate_manager.go:287] Rotating certificates Jan 4 12:35:52 master-node origin-node: W0104 12:35:52.631136 73416 cni.go:172] Unable to update cni config: No networks found in /etc/cni/net.d Jan 4 12:35:52 master-node origin-node: E0104 12:35:52.631850 73416 kubelet.go:2101] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized Jan 4 12:35:53 master-node origin-node: E0104 12:35:53.637772 73416 reflector.go:136] k8s.io/kubernetes/pkg/kubelet/config/apiserver.go:47: Failed to list *v1.Pod: Get https://master-node:8443/api/v1/pods?fieldSelector=spec.nodeName%3Dokd-master-node&limit=500&resourceVersion=0: dial tcp 40.114.4.244:8443: i/o timeout Jan 4 12:35:53 master-node origin-node: E0104 12:35:53.638613 73416 reflector.go:136] k8s.io/kubernetes/pkg/kubelet/kubelet.go:455: Failed to list *v1.Service: Get https://master-node:8443/api/v1/services?limit=500&resourceVersion=0: dial tcp 40.114.4.244:8443: i/o timeout Jan 4 12:35:53 master-node origin-node: E0104 12:35:53.639958 73416 reflector.go:136] k8s.io/kubernetes/pkg/kubelet/kubelet.go:464: Failed to list *v1.Node: Get https://master-node:8443/api/v1/nodes?fieldSelector=metadata.name%3Dokd-master-node&limit=500&resourceVersion=0: dial tcp 40.114.4.244:8443: i/o timeout Jan 4 12:35:57 master-node origin-node: E0104 12:35:57.218678 73416 eviction_manager.go:243] eviction manager: failed to get get summary stats: failed to get node info: node "okd-master-node" not found Jan 4 12:35:57 master-node origin-node: W0104 12:35:57.633342 73416 cni.go:172] Unable to update cni config: No networks found in /etc/cni/net.d Jan 4 12:35:57 master-node origin-node: E0104 12:35:57.634064 73416 kubelet.go:2101] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized Jan 4 12:35:57 master-node origin-node: I0104 12:35:57.663091 73416 kubelet_node_status.go:269] Setting node annotation to enable volume controller attach/detach Jan 4 12:35:57 master-node origin-node: I0104 12:35:57.670927 73416 kubelet_node_status.go:441] Recording NodeHasSufficientDisk event message for node okd-master-node Jan 4 12:35:57 master-node origin-node: I0104 12:35:57.670962 73416 kubelet_node_status.go:441] Recording NodeHasSufficientMemory event message for node okd-master-node Jan 4 12:35:57 master-node origin-node: I0104 12:35:57.670977 73416 kubelet_node_status.go:441] Recording NodeHasNoDiskPressure event message for node okd-master-node Jan 4 12:35:57 master-node origin-node: I0104 12:35:57.670988 73416 kubelet_node_status.go:441] Recording NodeHasSufficientPID event message for node okd-master-node

and here my environment system

docker version
Docker version 1.13.1

ansible version
ansible 2.9.2

/etc/hosts
`127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
console console.

40.114.4.244 master-node console console.okd.nip.io
104.45.157.104 worker-node-1

40.86.80.127 infra-node-1
40.114.4.244 master-node console console.okd.nip.io
104.45.157.104 worker-node-1

40.86.80.127 infra-node-1
40.114.4.244 master-node console console.okd.nip.io
104.45.157.104 worker-node-1

40.86.80.127 infra-node-1
40.114.4.244 master-node console console.okd.nip.io
104.45.157.104 worker-node-1

40.86.80.127 infra-node-1`

inventori.ini
`[OSEv3:children]
masters
nodes
etcd

[masters]
master-node openshift_ip=40.114.4.244 openshift_schedulable=true

[etcd]
master-node openshift_ip=40.114.4.244

[nodes]
master-node openshift_ip=40.114.4.244 openshift_node_group_name='node-config-master'
worker-node-1 openshift_ip=104.45.157.104 openshift_node_group_name='node-config-compute'
infra-node-1 openshift_ip=40.86.80.127 openshift_node_group_name='node-config-infra'

[OSEv3:vars]
openshift_additional_repos=[{'id': 'centos-paas', 'name': 'centos-paas', 'baseurl' :'https://buildlogs.centos.org/centos/7/paas/x86_64/openshift-origin311', 'gpgcheck' :'0', 'enabled' :'1'}]

ansible_ssh_user=root
enable_excluders=False
enable_docker_excluder=False
ansible_service_broker_install=False

containerized=True
os_sdn_network_plugin_name='redhat/openshift-ovs-multitenant'
openshift_disable_check=disk_availability,docker_storage,memory_availability,docker_image_availability

deployment_type=origin
openshift_deployment_type=origin

template_service_broker_selector={"region":"infra"}
openshift_metrics_image_version="v3.11"
openshift_logging_image_version="v3.11"
openshift_logging_elasticsearch_proxy_image_version="v1.0.0"
openshift_logging_es_nodeselector={"node-role.kubernetes.io/infra":"true"}
logging_elasticsearch_rollout_override=false
osm_use_cockpit=true

openshift_metrics_install_metrics=False
openshift_logging_install_logging=False

openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', 'challenge': 'true', 'kind': 'HTPasswdPasswordIdentityProvider'}]
openshift_master_htpasswd_file='/etc/origin/master/htpasswd'

openshift_public_hostname=console.okd.nip.io
openshift_master_default_subdomain=apps.okd.nip.io

openshift_master_api_port=8443
openshift_master_console_port=8443`

inventori.download
`[OSEv3:children]
masters
nodes
etcd

[masters]
${OKD_MASTER_HOSTNAME} openshift_ip=${OKD_MASTER_IP} openshift_schedulable=true

[etcd]
${OKD_MASTER_HOSTNAME} openshift_ip=${OKD_MASTER_IP}

[nodes]
${OKD_MASTER_HOSTNAME} openshift_ip=${OKD_MASTER_IP} openshift_node_group_name='node-config-master'
${OKD_WORKER_NODE_1_HOSTNAME} openshift_ip=${OKD_WORKER_NODE_1_IP} openshift_node_group_name='node-config-compute'
${OKD_INFRA_NODE_1_HOSTNAME} openshift_ip=${OKD_INFRA_NODE_1_IP} openshift_node_group_name='node-config-infra'

[OSEv3:vars]
openshift_additional_repos=[{'id': 'centos-paas', 'name': 'centos-paas', 'baseurl' :'https://buildlogs.centos.org/centos/7/paas/x86_64/openshift-origin311', 'gpgcheck' :'0', 'enabled' :'1'}]

ansible_ssh_user=root
enable_excluders=False
enable_docker_excluder=False
ansible_service_broker_install=False

containerized=True
os_sdn_network_plugin_name='redhat/openshift-ovs-multitenant'
openshift_disable_check=disk_availability,docker_storage,memory_availability,docker_image_availability

deployment_type=origin
openshift_deployment_type=origin

template_service_broker_selector={"region":"infra"}
openshift_metrics_image_version="v${OKD_VERSION}"
openshift_logging_image_version="v${OKD_VERSION}"
openshift_logging_elasticsearch_proxy_image_version="v1.0.0"
openshift_logging_es_nodeselector={"node-role.kubernetes.io/infra":"true"}
logging_elasticsearch_rollout_override=false
osm_use_cockpit=true

openshift_metrics_install_metrics=${INSTALL_METRICS}
openshift_logging_install_logging=${INSTALL_LOGGING}

openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', 'challenge': 'true', 'kind': 'HTPasswdPasswordIdentityProvider'}]
openshift_master_htpasswd_file='/etc/origin/master/htpasswd'

openshift_public_hostname=console.${DOMAIN}
openshift_master_default_subdomain=apps.${DOMAIN}

openshift_master_api_port=${API_PORT}
openshift_master_console_port=${API_PORT}`

MultiNode Cluster Error

I am trying to build this out for production and so NSPOF.

Attached are my notes but I believe the format of the okd-installation-centos/provisioning/settings.sh is the issue

I want 3 master 3 infrastructure 3 worker I also want to break out etcd nodes dedicated but was planning on doing that after I learn basic cluster within scope of these installation instruction guides.
okd_cluster_attempt_4.3.pdf

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.