|
|
|
|
@@ -34,11 +34,13 @@ image::295_OpenShift_Nodes_Overview_1222.png[Overview of control plane and worke
|
|
|
|
|
|
|
|
|
|
The read operations allow an administrator or a developer to get information about nodes in an {product-title} cluster.
|
|
|
|
|
|
|
|
|
|
ifndef::openshift-rosa-hcp,openshift-rosa[]
|
|
|
|
|
* xref:../nodes/nodes/nodes-nodes-viewing.adoc#nodes-nodes-viewing-listing_nodes-nodes-viewing[List all the nodes in a cluster].
|
|
|
|
|
* Get information about a node, such as memory and CPU usage, health, status, and age.
|
|
|
|
|
* xref:../nodes/nodes/nodes-nodes-viewing.adoc#nodes-nodes-viewing-listing-pods_nodes-nodes-viewing[List pods running on a node].
|
|
|
|
|
endif::openshift-rosa-hcp,openshift-rosa[]
|
|
|
|
|
|
|
|
|
|
ifndef::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
ifndef::openshift-rosa,openshift-rosa-hcp,openshift-dedicated[]
|
|
|
|
|
[discrete]
|
|
|
|
|
=== Management operations
|
|
|
|
|
|
|
|
|
|
@@ -52,23 +54,27 @@ through several tasks:
|
|
|
|
|
* xref:../nodes/nodes/nodes-nodes-managing-max-pods.adoc#nodes-nodes-managing-max-pods-proc_nodes-nodes-managing-max-pods[Configure the number of pods that can run on a node] based on the number of processor cores on the node, a hard limit, or both.
|
|
|
|
|
* Reboot a node gracefully using xref:../nodes/nodes/nodes-nodes-rebooting.adoc#nodes-nodes-rebooting-affinity_nodes-nodes-rebooting[pod anti-affinity].
|
|
|
|
|
* xref:../nodes/nodes/nodes-nodes-working.adoc#deleting-nodes[Delete a node from a cluster] by scaling down the cluster using a compute machine set. To delete a node from a bare-metal cluster, you must first drain all pods on the node and then manually delete the node.
|
|
|
|
|
endif::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
endif::openshift-rosa,openshift-rosa-hcp,openshift-dedicated[]
|
|
|
|
|
|
|
|
|
|
[discrete]
|
|
|
|
|
=== Enhancement operations
|
|
|
|
|
|
|
|
|
|
{product-title} allows you to do more than just access and manage nodes; as an administrator, you can perform the following tasks on nodes to make the cluster more efficient, application-friendly, and to provide a better environment for your developers.
|
|
|
|
|
|
|
|
|
|
* Manage node-level tuning for high-performance applications that require some level of kernel tuning by xref:../nodes/nodes/nodes-node-tuning-operator.adoc#nodes-node-tuning-operator[using the Node Tuning Operator].
|
|
|
|
|
ifndef::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
* Enable TLS security profiles on the node to protect communication between the kubelet and the Kubernetes API server.
|
|
|
|
|
endif::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
* Manage node-level tuning for high-performance applications that require some level of kernel tuning by
|
|
|
|
|
ifndef::openshift-rosa-hcp,openshift-rosa[]
|
|
|
|
|
xref:../nodes/nodes/nodes-node-tuning-operator.adoc#nodes-node-tuning-operator[using the Node Tuning Operator].
|
|
|
|
|
* xref:../nodes/jobs/nodes-pods-daemonsets.adoc#nodes-pods-daemonsets[Run background tasks on nodes automatically with daemon sets]. You can create and use daemon sets to create shared storage, run a logging pod on every node, or deploy a monitoring agent on all nodes.
|
|
|
|
|
ifndef::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
endif::openshift-rosa-hcp,openshift-rosa[]
|
|
|
|
|
ifndef::openshift-rosa,openshift-rosa-hcp,openshift-dedicated[]
|
|
|
|
|
* Enable TLS security profiles on the node to protect communication between the kubelet and the Kubernetes API server.
|
|
|
|
|
* xref:../nodes/nodes/nodes-nodes-garbage-collection.adoc#nodes-nodes-garbage-collection[Free node resources using garbage collection]. You can ensure that your nodes are running efficiently by removing terminated containers and the images not referenced by any running pods.
|
|
|
|
|
* xref:../nodes/nodes/nodes-nodes-managing.adoc#nodes-nodes-kernel-arguments_nodes-nodes-managing[Add kernel arguments to a set of nodes].
|
|
|
|
|
* Configure an {product-title} cluster to have worker nodes at the network edge (remote worker nodes). For information on the challenges of having remote worker nodes in an {product-title} cluster and some recommended approaches for managing pods on a remote worker node, see xref:../nodes/edge/nodes-edge-remote-workers.adoc#nodes-edge-remote-workers[Using remote worker nodes at the network edge].
|
|
|
|
|
endif::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
endif::openshift-rosa,openshift-rosa-hcp,openshift-dedicated[]
|
|
|
|
|
ifdef::openshift-rosa-hcp,openshift-rosa[]
|
|
|
|
|
* link:https://docs.openshift.com/rosa/nodes/jobs/nodes-pods-daemonsets.html#nodes-pods-daemonsets[Run background tasks on nodes automatically with daemon sets]. You can create and use daemon sets to create shared storage, run a logging pod on every node, or deploy a monitoring agent on all nodes.
|
|
|
|
|
endif::openshift-rosa-hcp,openshift-rosa[]
|
|
|
|
|
|
|
|
|
|
[id="pods-overview"]
|
|
|
|
|
== About pods
|
|
|
|
|
@@ -80,8 +86,13 @@ A pod is one or more containers deployed together on a node. As a cluster admini
|
|
|
|
|
|
|
|
|
|
As an administrator, you can get information about pods in a project through the following tasks:
|
|
|
|
|
|
|
|
|
|
ifdef::openshift-rosa-hcp[]
|
|
|
|
|
* link:https://docs.openshift.com/rosa/nodes/pods/nodes-pods-viewing.html#nodes-pods-viewing-project_nodes-pods-viewing[List pods associated with a project], including information such as the number of replicas and restarts, current status, and age.
|
|
|
|
|
* link:https://docs.openshift.com/rosa/nodes/pods/nodes-pods-viewing.html#nodes-pods-viewing-usage_nodes-pods-viewing[View pod usage statistics] such as CPU, memory, and storage consumption.
|
|
|
|
|
ifndef::openshift-rosa-hcp[]
|
|
|
|
|
* xref:../nodes/pods/nodes-pods-viewing.adoc#nodes-pods-viewing-project_nodes-pods-viewing[List pods associated with a project], including information such as the number of replicas and restarts, current status, and age.
|
|
|
|
|
* xref:../nodes/pods/nodes-pods-viewing.adoc#nodes-pods-viewing-usage_nodes-pods-viewing[View pod usage statistics] such as CPU, memory, and storage consumption.
|
|
|
|
|
endif::openshift-rosa-hcp[]
|
|
|
|
|
|
|
|
|
|
[discrete]
|
|
|
|
|
=== Management operations
|
|
|
|
|
@@ -89,27 +100,36 @@ As an administrator, you can get information about pods in a project through the
|
|
|
|
|
The following list of tasks provides an overview of how an administrator can manage pods in an {product-title} cluster.
|
|
|
|
|
|
|
|
|
|
* Control scheduling of pods using the advanced scheduling features available in {product-title}:
|
|
|
|
|
ifdef::openshift-rosa-hcp[]
|
|
|
|
|
** Node-to-pod binding rules such as link:https://docs.openshift.com/rosa/nodes/scheduling/nodes-scheduler-pod-affinity.html#nodes-scheduler-pod-affinity-example-affinity_nodes-scheduler-pod-affinity[pod affinity], link:https://docs.openshift.com/rosa/nodes/scheduling/nodes-scheduler-node-affinity.html#nodes-scheduler-node-affinity[node affinity], and link:https://docs.openshift.com/rosa/nodes/scheduling/nodes-scheduler-pod-affinity.html#nodes-scheduler-pod-anti-affinity-configuring_nodes-scheduler-pod-affinity[anti-affinity].
|
|
|
|
|
** link:https://docs.openshift.com/rosa/nodes/scheduling/nodes-scheduler-node-selectors.html#nodes-scheduler-node-selectors[Node labels and selectors].
|
|
|
|
|
** link:https://docs.openshift.com/rosa/nodes/scheduling/nodes-scheduler-pod-topology-spread-constraints.html#nodes-scheduler-pod-topology-spread-constraints[Pod topology spread constraints].
|
|
|
|
|
* link:https://docs.openshift.com/rosa/nodes/pods/nodes-pods-configuring.html#nodes-pods-configuring-restart_nodes-pods-configuring[Configure how pods behave after a restart using pod controllers and restart policies].
|
|
|
|
|
* link:https://docs.openshift.com/rosa/nodes/pods/nodes-pods-configuring.html#nodes-pods-configuring-bandwidth_nodes-pods-configuring[Limit both egress and ingress traffic on a pod].
|
|
|
|
|
* link:https://docs.openshift.com/rosa/nodes/containers/nodes-containers-volumes.html#nodes-containers-volumes[Add and remove volumes to and from any object that has a pod template]. A volume is a mounted file system available to all the containers in a pod. Container storage is ephemeral; you can use volumes to persist container data.
|
|
|
|
|
endif::openshift-rosa-hcp[]
|
|
|
|
|
ifndef::openshift-rosa-hcp[]
|
|
|
|
|
** Node-to-pod binding rules such as xref:../nodes/scheduling/nodes-scheduler-pod-affinity.adoc#nodes-scheduler-pod-affinity-example-affinity_nodes-scheduler-pod-affinity[pod affinity], xref:../nodes/scheduling/nodes-scheduler-node-affinity.adoc#nodes-scheduler-node-affinity[node affinity], and xref:../nodes/scheduling/nodes-scheduler-pod-affinity.adoc#nodes-scheduler-pod-anti-affinity-configuring_nodes-scheduler-pod-affinity[anti-affinity].
|
|
|
|
|
** xref:../nodes/scheduling/nodes-scheduler-node-selectors.adoc#nodes-scheduler-node-selectors[Node labels and selectors].
|
|
|
|
|
ifndef::openshift-dedicated,openshift-rosa[]
|
|
|
|
|
ifndef::openshift-dedicated,openshift-rosa-hcp,openshift-rosa[]
|
|
|
|
|
** xref:../nodes/scheduling/nodes-scheduler-taints-tolerations.adoc#nodes-scheduler-taints-tolerations[Taints and tolerations].
|
|
|
|
|
endif::openshift-dedicated,openshift-rosa[]
|
|
|
|
|
endif::openshift-dedicated,openshift-rosa-hcp,openshift-rosa[]
|
|
|
|
|
** xref:../nodes/scheduling/nodes-scheduler-pod-topology-spread-constraints.adoc#nodes-scheduler-pod-topology-spread-constraints[Pod topology spread constraints].
|
|
|
|
|
// Cannot create namespace to install Operator
|
|
|
|
|
ifndef::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
ifndef::openshift-rosa,openshift-rosa-hcp,openshift-dedicated[]
|
|
|
|
|
** xref:../nodes/scheduling/secondary_scheduler/index.adoc#nodes-secondary-scheduler-about[Secondary scheduling].
|
|
|
|
|
* xref:../nodes/scheduling/descheduler/index.adoc#nodes-descheduler-about[Configure the descheduler to evict pods] based on specific strategies so that the scheduler reschedules the pods to more appropriate nodes.
|
|
|
|
|
endif::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
endif::openshift-rosa,openshift-rosa-hcp,openshift-dedicated[]
|
|
|
|
|
* xref:../nodes/pods/nodes-pods-configuring.adoc#nodes-pods-configuring-restart_nodes-pods-configuring[Configure how pods behave after a restart using pod controllers and restart policies].
|
|
|
|
|
* xref:../nodes/pods/nodes-pods-configuring.adoc#nodes-pods-configuring-bandwidth_nodes-pods-configuring[Limit both egress and ingress traffic on a pod].
|
|
|
|
|
* xref:../nodes/containers/nodes-containers-volumes.adoc#nodes-containers-volumes[Add and remove volumes to and from any object that has a pod template]. A volume is a mounted file system available to all the containers in a pod. Container storage is ephemeral; you can use volumes to persist container data.
|
|
|
|
|
endif::openshift-rosa-hcp[]
|
|
|
|
|
|
|
|
|
|
[discrete]
|
|
|
|
|
=== Enhancement operations
|
|
|
|
|
|
|
|
|
|
You can work with pods more easily and efficiently with the help of various tools and features available in {product-title}. The following operations involve using those tools and features to better manage pods.
|
|
|
|
|
|
|
|
|
|
ifndef::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
ifndef::openshift-rosa,openshift-rosa-hcp,openshift-dedicated[]
|
|
|
|
|
[cols="2,1,2"]
|
|
|
|
|
|===
|
|
|
|
|
|Operation |User |More information
|
|
|
|
|
@@ -132,12 +152,17 @@ As a developer, use a vertical pod autoscaler to ensure your pods stay up during
|
|
|
|
|
|Administrator
|
|
|
|
|
|Some applications need sensitive information, such as passwords and usernames. You can use the `Secret` object to provide such information to an application pod.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|===
|
|
|
|
|
endif::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
ifdef::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
* Secrets: Some applications need sensitive information, such as passwords and usernames. An administrator can use the `Secret` object to provide sensitive data to pods xref:../nodes/pods/nodes-pods-secrets.adoc#nodes-pods-secrets[using the `Secret` object].
|
|
|
|
|
endif::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
endif::openshift-rosa,openshift-rosa-hcp,openshift-dedicated[]
|
|
|
|
|
ifdef::openshift-rosa,openshift-rosa-hcp,openshift-dedicated[]
|
|
|
|
|
* Secrets: Some applications need sensitive information, such as passwords and usernames. An administrator can use the `Secret` object to provide sensitive data to pods
|
|
|
|
|
ifdef::openshift-rosa-hcp[]
|
|
|
|
|
link:https://docs.openshift.com/rosa/nodes/pods/nodes-pods-secrets.html#nodes-pods-secrets[using the `Secret` object].
|
|
|
|
|
endif::openshift-rosa-hcp[]
|
|
|
|
|
ifndef::openshift-rosa-hcp[]
|
|
|
|
|
xref:../nodes/pods/nodes-pods-secrets.adoc#nodes-pods-secrets[using the `Secret` object].
|
|
|
|
|
endif::openshift-rosa-hcp[]
|
|
|
|
|
endif::openshift-rosa,openshift-rosa-hcp,openshift-dedicated[]
|
|
|
|
|
|
|
|
|
|
[id="containers-overview"]
|
|
|
|
|
== About containers
|
|
|
|
|
@@ -147,18 +172,32 @@ A container is the basic unit of an {product-title} application, which comprises
|
|
|
|
|
Linux container technologies are lightweight mechanisms for isolating running processes and limiting access to only designated resources.
|
|
|
|
|
As an administrator, You can perform various tasks on a Linux container, such as:
|
|
|
|
|
|
|
|
|
|
ifdef::openshift-rosa-hcp[]
|
|
|
|
|
* link:https://docs.openshift.com/rosa/nodes/containers/nodes-containers-copying-files.html#nodes-containers-copying-files[Copy files to and from a container].
|
|
|
|
|
* link:https://docs.openshift.com/rosa/nodes/containers/nodes-containers-downward-api.html#nodes-containers-downward-api[Allow containers to consume API objects].
|
|
|
|
|
* link:https://docs.openshift.com/rosa/nodes/containers/nodes-containers-remote-commands.html#nodes-containers-remote-commands[Execute remote commands in a container].
|
|
|
|
|
* link:https://docs.openshift.com/rosa/nodes/containers/nodes-containers-port-forwarding.html#nodes-containers-port-forwarding[Use port forwarding to access applications in a container].
|
|
|
|
|
endif::openshift-rosa-hcp[]
|
|
|
|
|
ifndef::openshift-rosa-hcp[]
|
|
|
|
|
* xref:../nodes/containers/nodes-containers-copying-files.adoc#nodes-containers-copying-files[Copy files to and from a container].
|
|
|
|
|
* xref:../nodes/containers/nodes-containers-downward-api.adoc#nodes-containers-downward-api[Allow containers to consume API objects].
|
|
|
|
|
* xref:../nodes/containers/nodes-containers-remote-commands.adoc#nodes-containers-remote-commands[Execute remote commands in a container].
|
|
|
|
|
* xref:../nodes/containers/nodes-containers-port-forwarding.adoc#nodes-containers-port-forwarding[Use port forwarding to access applications in a container].
|
|
|
|
|
endif::openshift-rosa-hcp[]
|
|
|
|
|
|
|
|
|
|
{product-title} provides specialized containers called xref:../nodes/containers/nodes-containers-init.adoc#nodes-containers-init[Init containers]. Init containers run before application containers and can contain utilities or setup scripts not present in an application image. You can use an Init container to perform tasks before the rest of a pod is deployed.
|
|
|
|
|
{product-title} provides specialized containers called
|
|
|
|
|
ifdef::openshift-rosa-hcp[]
|
|
|
|
|
link:https://docs.openshift.com/rosa/nodes/containers/nodes-containers-init.html#nodes-containers-init[Init containers]
|
|
|
|
|
endif::openshift-rosa-hcp[]
|
|
|
|
|
ifndef::openshift-rosa-hcp[]
|
|
|
|
|
xref:../nodes/containers/nodes-containers-init.adoc#nodes-containers-init[Init containers]
|
|
|
|
|
endif::openshift-rosa-hcp[]
|
|
|
|
|
. Init containers run before application containers and can contain utilities or setup scripts not present in an application image. You can use an Init container to perform tasks before the rest of a pod is deployed.
|
|
|
|
|
|
|
|
|
|
Apart from performing specific tasks on nodes, pods, and containers, you can work with the overall {product-title} cluster to keep the cluster efficient and the application pods highly available.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//cannot create the required namespace for these operators
|
|
|
|
|
ifndef::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
ifndef::openshift-rosa,openshift-rosa-hcp,openshift-dedicated[]
|
|
|
|
|
[id="nodes-about-autoscaling-pod_{context}"]
|
|
|
|
|
== About autoscaling pods on a node
|
|
|
|
|
|
|
|
|
|
@@ -178,7 +217,7 @@ Vertical Pod Autoscaler::
|
|
|
|
|
The Vertical Pod Autoscaler (VPA) can automatically review the historic and current CPU and memory resources for containers in pods and can update the resource limits and requests based on the usage values it learns.
|
|
|
|
|
+
|
|
|
|
|
For more information, see xref:../nodes/pods/nodes-pods-vertical-autoscaler.adoc#nodes-pods-vpa[Automatically adjust pod resource levels with the vertical pod autoscaler].
|
|
|
|
|
endif::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
endif::openshift-rosa,openshift-rosa-hcp,openshift-dedicated[]
|
|
|
|
|
|
|
|
|
|
[id="commonterms-node"]
|
|
|
|
|
== Glossary of common terms for {product-title} nodes
|
|
|
|
|
@@ -206,12 +245,12 @@ garbage collection::
|
|
|
|
|
The process of cleaning up cluster resources, such as terminated containers and images that are not referenced by any running pods.
|
|
|
|
|
|
|
|
|
|
//cannot create the required namespace for these operators
|
|
|
|
|
ifndef::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
ifndef::openshift-rosa,openshift-rosa-hcp,openshift-dedicated[]
|
|
|
|
|
[discrete]
|
|
|
|
|
[id="commonterms-node-hpa"]
|
|
|
|
|
Horizontal Pod Autoscaler(HPA)::
|
|
|
|
|
Implemented as a Kubernetes API resource and a controller. You can use the HPA to specify the minimum and maximum number of pods that you want to run. You can also specify the CPU or memory utilization that your pods should target. The HPA scales out and scales in pods when a given CPU or memory threshold is crossed.
|
|
|
|
|
endif::openshift-rosa,openshift-dedicated[]
|
|
|
|
|
endif::openshift-rosa,openshift-rosa-hcp,openshift-dedicated[]
|
|
|
|
|
|
|
|
|
|
[discrete]
|
|
|
|
|
[id="commonterms-node-ingress"]
|
|
|
|
|
@@ -257,4 +296,4 @@ Indicates that the pod is allowed (but not required) to be scheduled on nodes or
|
|
|
|
|
[discrete]
|
|
|
|
|
[id="commonterms-node-taint"]
|
|
|
|
|
Taint::
|
|
|
|
|
A core object that comprises a key,value, and effect. Taints and tolerations work together to ensure that pods are not scheduled on irrelevant nodes.
|
|
|
|
|
A core object that comprises a key,value, and effect. Taints and tolerations work together to ensure that pods are not scheduled on irrelevant nodes.
|