OpenShift Runtime: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
 
(17 intermediate revisions by the same user not shown)
Line 3: Line 3:
* [[OpenShift Operations#Subjects|OpenShift Operations]]
* [[OpenShift Operations#Subjects|OpenShift Operations]]
* [[OpenShift Configuration#Configuration_Files|OpenShift Configuration Files]]
* [[OpenShift Configuration#Configuration_Files|OpenShift Configuration Files]]
* [[OpenShift Process Management|Process Management]]


=Master Node=
=Master Node=
Line 33: Line 32:
/usr/bin/etcd --name=master1.rdu20.internal --data-dir=/var/lib/etcd --listen-client-urls=https://192.199.0.199:2379
/usr/bin/etcd --name=master1.rdu20.internal --data-dir=/var/lib/etcd --listen-client-urls=https://192.199.0.199:2379
</pre>
</pre>
===etcd Operations===
{{Internal|Etcd Operations|etcd Operations}}


==master Daemons==
==master Daemons==
Line 55: Line 58:


  <font color=red>TODO</font>
  <font color=red>TODO</font>
====Restart the Master Process====
systemctl restart atomic-openshift-master


===HA Deployment===
===HA Deployment===
Line 126: Line 133:
/usr/bin/openshift start node --config=/etc/origin/node/node-config.yaml --loglevel=2
/usr/bin/openshift start node --config=/etc/origin/node/node-config.yaml --loglevel=2
</pre>
</pre>
=OpenShift Master and Node Process Operations=
==HA Master Process Management Operations==
To '''stop''' all OpenShift processes from a HA master node and completely take it out of the cluster, execute as root, in order:
  systemctl stop atomic-openshift-node.service atomic-openshift-master-api.service atomic-openshift-master-controllers.service etcd.service
To '''start''' all OpenShift processes from a HA master node and completely take it out of the cluster, execute as root, in order:
  systemctl start etcd.service atomic-openshift-master-controllers.service atomic-openshift-master-api.service atomic-openshift-node.service
===Restart Across a HA Cluster===
In order to propagate a change consistently across the cluster, all master processes have to be stopped at the same time, then restarted.
This can be done from the Ansible host, as "ansible":
ansible masters -m shell -a "systemctl stop atomic-openshift-node.service atomic-openshift-master-api.service atomic-openshift-master-controllers.service etcd.service"
ansible masters -m shell -a "systemctl start etcd.service"
ansible masters -m shell -a "systemctl start atomic-openshift-master-controllers.service"
ansible masters -m shell -a "systemctl start atomic-openshift-master-api.service"
ansible masters -m shell -a "systemctl start atomic-openshift-node.service"
Note the reverse order for start and stop.
Check logs during startup as described in the "[[OpenShift_Runtime#Master_and_Node_Process_Logging|Master and Node Process Logging]]" section.
==Non-HA Master Process Management Operations==
===Start===
systemctl start etcd.service atomic-openshift-master.service 
sleep 2
atomic-openshift-node.service
===Stop===
systemctl stop atomic-openshift-node.service atomic-openshift-master.service etcd.service
==Node Process Management Operations==
To temporarily '''stop''' a node, login as root and:
systemctl stop atomic-openshift-node
To '''restart''':
systemctl start atomic-openshift-node
Also see: {{Internal|OpenShift_Node_Operations#Starting.2FStopping_a_Node|Starting/Stopping a Node}}
=Master and Node Process Logging=
==Master Process Logging==
Adjust the logging level as described here: [[OpenShift_Logging_Levels#Change_the_Log_Level_for_OpenShift_Processes|Change the Log Level for OpenShift Processes]].
Then tail the journalctl log.
[[journalctl]] -u atomic-openshift-master-controllers -f
  [[journalctl]] -u atomic-openshift-master-api -f
==Node Process Logging==
Adjust the logging level as described here:  [[OpenShift_Logging_Levels#Change_the_Log_Level_for_OpenShift_Processes|Change the Log Level for OpenShift Processes]].
Then tail the journalctl log.
[[journalctl]] -u atomic-openshift-node -f

Latest revision as of 21:10, 19 February 2018

Internal

Master Node

The master node runs, in order, these services:

The master daemon (or daemons) must be started after etcd is started, they depend on etcd. They are started before the node service.

OpenShiftRuntime HA master node.png

etcd Daemon

Unit: etcd.service

Unit File: /usr/lib/systemd/system/etcd.service

Working Directory: /var/lib/etcd

Configuration File: /etc/etcd/etcd.conf

Process:

/usr/bin/etcd --name=master1.rdu20.internal --data-dir=/var/lib/etcd --listen-client-urls=https://192.199.0.199:2379

etcd Operations

etcd Operations

master Daemons

Non-HA Deployment

In a non-HA deployment, the master api daemon and master controller daemon are coalesced in a single process. In HA environments, they are separated, so the master api daemon processes can be load-balanced among, while the master controller daemon run in an active/passive configuration, there is just one active master controller daemon instance in the cluster.

Depends On: "etcd.service" (etcd)

Unit: atomic-openshift-master.service

Unit File: /usr/lib/systemd/system/atomic-openshift-master.service

Working Directory: /var/lib/origin

Configuration Files:

Process:

TODO

Restart the Master Process

systemctl restart atomic-openshift-master

HA Deployment

master api Daemon

Depends On: "etcd.service" (etcd)

Unit: atomic-openshift-master-api.service

systemctl status atomic-openshift-master-api

Unit File: /usr/lib/systemd/system/atomic-openshift-master-api.service

Working Directory: /var/lib/origin

Configuration Files:

Process:

/usr/bin/openshift start master api --config=/etc/origin/master/master-config.yaml --loglevel=2 --listen=https://0.0.0.0:443 --master=https://master1.rdu20.internal

master controller Daemon

Depends On: "etcd.service" (etcd), "atomic-openshift-master-api.service" (master api daemon)

Unit: atomic-openshift-master-controllers.service

systemctl status atomic-openshift-master-controllers

Unit File: /usr/lib/systemd/system/atomic-openshift-master-controllers.service

Working Directory: /var/lib/origin

Configuration Files:

Process:

/usr/bin/openshift start master controllers --config=/etc/origin/master/master-config.yaml --loglevel=2 --listen=https://0.0.0.0:8444

node Daemon

See below

node Daemon

Regular Node

OpenShiftRuntime node.png

node Daemon

Depends On: "docker.service", "openvswitch.service"

Unit: atomic-openshift-node.service

systemctl status atomic-openshift-node

Unit File: /usr/lib/systemd/system/atomic-openshift-node.service

Working Directory: /var/lib/origin

Configuration Files:

Process:

/usr/bin/openshift start node --config=/etc/origin/node/node-config.yaml --loglevel=2

OpenShift Master and Node Process Operations

HA Master Process Management Operations

To stop all OpenShift processes from a HA master node and completely take it out of the cluster, execute as root, in order:

 systemctl stop atomic-openshift-node.service atomic-openshift-master-api.service atomic-openshift-master-controllers.service etcd.service

To start all OpenShift processes from a HA master node and completely take it out of the cluster, execute as root, in order:

 systemctl start etcd.service atomic-openshift-master-controllers.service atomic-openshift-master-api.service atomic-openshift-node.service

Restart Across a HA Cluster

In order to propagate a change consistently across the cluster, all master processes have to be stopped at the same time, then restarted.

This can be done from the Ansible host, as "ansible":

ansible masters -m shell -a "systemctl stop atomic-openshift-node.service atomic-openshift-master-api.service atomic-openshift-master-controllers.service etcd.service"
ansible masters -m shell -a "systemctl start etcd.service"
ansible masters -m shell -a "systemctl start atomic-openshift-master-controllers.service"
ansible masters -m shell -a "systemctl start atomic-openshift-master-api.service"
ansible masters -m shell -a "systemctl start atomic-openshift-node.service"

Note the reverse order for start and stop.

Check logs during startup as described in the "Master and Node Process Logging" section.

Non-HA Master Process Management Operations

Start

systemctl start etcd.service atomic-openshift-master.service  
sleep 2
atomic-openshift-node.service

Stop

systemctl stop atomic-openshift-node.service atomic-openshift-master.service etcd.service

Node Process Management Operations

To temporarily stop a node, login as root and:

systemctl stop atomic-openshift-node

To restart:

systemctl start atomic-openshift-node

Also see:

Starting/Stopping a Node

Master and Node Process Logging

Master Process Logging

Adjust the logging level as described here: Change the Log Level for OpenShift Processes.

Then tail the journalctl log.

journalctl -u atomic-openshift-master-controllers -f
 journalctl -u atomic-openshift-master-api -f

Node Process Logging

Adjust the logging level as described here: Change the Log Level for OpenShift Processes.

Then tail the journalctl log.

journalctl -u atomic-openshift-node -f