Question: How does Configuring Redis using a ConfigMap work?

Answer: Configuring Redis using a ConfigMapThis page provides a real world example of how to configure Redis using a ConfigMap and builds upon the Configure a Pod to Use a ConfigMap task.ObjectivesCreate a ConfigMap with Redis configuration valuesCreate a Redis Pod that mounts and uses the created ConfigMapVerify that the configuration was correctly applied.Before you beginYou need to have a Kubernetes cluster, and the kubectl command-line tool must be configured to communicate with your cluster. It is recommended to run this tutorial on a cluster with at least two nodes that are not acting as control plane hosts. If you do not already have a cluster, you can create one by using minikube or you can use one of these Kubernetes playgrounds:iximiuz LabsKillercodaKodeKloudPlay with KubernetesTo check the version, enter kubectl version.The example shown on this page works with kubectl 1.14 and above.Understand Configure a Pod to Use a ConfigMap.Real World Example: Configuring Redis using a ConfigMapFollow the steps below to configure a Redis cache using data stored in a ConfigMap.First create a ConfigMap with an empty configuration block:cat <<EOF >./example-redis-config.yaml apiVersion: v1 kind: ConfigMap metadata: name: example-redis-config data: redis-config: "" EOF Apply the ConfigMap created above, along with a Redis pod manifest:kubectl apply -f example-redis-config.yaml kubectl apply -f https://raw.githubusercontent.com/kubernetes/website/main/content/en/examples/pods/config/redis-pod.yaml Examine the contents of the Redis pod manifest and note the following:A volume named config is created by spec.volumes[1]The key and path under spec.volumes[1].configMap.items[0] exposes the redis-config key from the example-redis-config ConfigMap as a file named redis.conf on the config volume.The config volume is then mounted at /redis-master by spec.containers[0].volumeMounts[1].This has the net effect of exposing the data in data.redis-config from the example-redis-config ConfigMap above as /redis-master/redis.conf inside the Pod.pods/config/redis-pod.yaml apiVersion: v1 kind: Pod metadata: name: redis spec: containers: - name: redis image: redis:8.0.2 command: - redis-server - "/redis-master/redis.conf" env: - name: MASTER value: "true" ports: - containerPort: 6379 resources: limits: cpu: "0.1" volumeMounts: - mountPath: /redis-master-data name: data - mountPath: /redis-master name: config volumes: - name: data emptyDir: {} - name: config configMap: name: example-redis-config items: - key: redis-config path: redis.conf Examine the created objects:kubectl get pod/redis configmap/example-redis-config You should see the following output:NAME READY STATUS RESTARTS AGE pod/redis 1/1 Running 0 8s NAME DATA AGE configmap/example-redis-config 1 14s Recall that we left redis-config key in the example-redis-config ConfigMap blank:kubectl describe configmap/example-redis-config You should see an empty redis-config key:Name: example-redis-config Namespace: default Labels: <


Question: When would you use Configuring Redis using a ConfigMap?

Answer: Configuring Redis using a ConfigMapThis page provides a real world example of how to configure Redis using a ConfigMap and builds upon the Configure a Pod to Use a ConfigMap task.ObjectivesCreate a ConfigMap with Redis configuration valuesCreate a Redis Pod that mounts and uses the created ConfigMapVerify that the configuration was correctly applied.Before you beginYou need to have a Kubernetes cluster, and the kubectl command-line tool must be configured to communicate with your cluster. It is recommended to run this tutorial on a cluster with at least two nodes that are not acting as control plane hosts. If you do not already have a cluster, you can create one by using minikube or you can use one of these Kubernetes playgrounds:iximiuz LabsKillercodaKodeKloudPlay with KubernetesTo check the version, enter kubectl version.The example shown on this page works with kubectl 1.14 and above.Understand Configure a Pod to Use a ConfigMap.Real World Example: Configuring Redis using a ConfigMapFollow the steps below to configure a Redis cache using data stored in a ConfigMap.First create a ConfigMap with an empty configuration block:cat <<EOF >./example-redis-config.yaml apiVersion: v1 kind: ConfigMap metadata: name: example-redis-config data: redis-config: "" EOF Apply the ConfigMap created above, along with a Redis pod manifest:kubectl apply -f example-redis-config.yaml kubectl apply -f https://raw.githubusercontent.com/kubernetes/website/main/content/en/examples/pods/config/redis-pod.yaml Examine the contents of the Redis pod manifest and note the following:A volume named config is created by spec.volumes[1]The key and path under spec.volumes[1].configMap.items[0] exposes the redis-config key from the example-redis-config ConfigMap as a file named redis.conf on the config volume.The config volume is then mounted at /redis-master by spec.containers[0].volumeMounts[1].This has the net effect of exposing the data in data.redis-config from the example-redis-config ConfigMap above as /redis-master/redis.conf inside the Pod.pods/config/redis-pod.yaml apiVersion: v1 kind: Pod metadata: name: redis spec: containers: - name: redis image: redis:8.0.2 command: - redis-server - "/redis-master/redis.conf" env: - name: MASTER value: "true" ports: - containerPort: 6379 resources: limits: cpu: "0.1" volumeMounts: - mountPath: /redis-master-data name: data - mountPath: /redis-master name: config volumes: - name: data emptyDir: {} - name: config configMap: name: example-redis-config items: - key: redis-config path: redis.conf Examine the created objects:kubectl get pod/redis configmap/example-redis-config You should see the following output:NAME READY STATUS RESTARTS AGE pod/redis 1/1 Running 0 8s NAME DATA AGE configmap/example-redis-config 1 14s Recall that we left redis-config key in the example-redis-config ConfigMap blank:kubectl describe configmap/example-redis-config You should see an empty redis-config key:Name: example-redis-config Namespace: default Labels: <


Question: What are the benefits of Configuring Redis using a ConfigMap?

Answer: Configuring Redis using a ConfigMapThis page provides a real world example of how to configure Redis using a ConfigMap and builds upon the Configure a Pod to Use a ConfigMap task.ObjectivesCreate a ConfigMap with Redis configuration valuesCreate a Redis Pod that mounts and uses the created ConfigMapVerify that the configuration was correctly applied.Before you beginYou need to have a Kubernetes cluster, and the kubectl command-line tool must be configured to communicate with your cluster. It is recommended to run this tutorial on a cluster with at least two nodes that are not acting as control plane hosts. If you do not already have a cluster, you can create one by using minikube or you can use one of these Kubernetes playgrounds:iximiuz LabsKillercodaKodeKloudPlay with KubernetesTo check the version, enter kubectl version.The example shown on this page works with kubectl 1.14 and above.Understand Configure a Pod to Use a ConfigMap.Real World Example: Configuring Redis using a ConfigMapFollow the steps below to configure a Redis cache using data stored in a ConfigMap.First create a ConfigMap with an empty configuration block:cat <<EOF >./example-redis-config.yaml apiVersion: v1 kind: ConfigMap metadata: name: example-redis-config data: redis-config: "" EOF Apply the ConfigMap created above, along with a Redis pod manifest:kubectl apply -f example-redis-config.yaml kubectl apply -f https://raw.githubusercontent.com/kubernetes/website/main/content/en/examples/pods/config/redis-pod.yaml Examine the contents of the Redis pod manifest and note the following:A volume named config is created by spec.volumes[1]The key and path under spec.volumes[1].configMap.items[0] exposes the redis-config key from the example-redis-config ConfigMap as a file named redis.conf on the config volume.The config volume is then mounted at /redis-master by spec.containers[0].volumeMounts[1].This has the net effect of exposing the data in data.redis-config from the example-redis-config ConfigMap above as /redis-master/redis.conf inside the Pod.pods/config/redis-pod.yaml apiVersion: v1 kind: Pod metadata: name: redis spec: containers: - name: redis image: redis:8.0.2 command: - redis-server - "/redis-master/redis.conf" env: - name: MASTER value: "true" ports: - containerPort: 6379 resources: limits: cpu: "0.1" volumeMounts: - mountPath: /redis-master-data name: data - mountPath: /redis-master name: config volumes: - name: data emptyDir: {} - name: config configMap: name: example-redis-config items: - key: redis-config path: redis.conf Examine the created objects:kubectl get pod/redis configmap/example-redis-config You should see the following output:NAME READY STATUS RESTARTS AGE pod/redis 1/1 Running 0 8s NAME DATA AGE configmap/example-redis-config 1 14s Recall that we left redis-config key in the example-redis-config ConfigMap blank:kubectl describe configmap/example-redis-config You should see an empty redis-config key:Name: example-redis-config Namespace: default Labels: <


Question: What is Configuring Redis using a ConfigMap?

Answer: T h i s   p a g e   p r o v i d e s   a   r e a l   w o r l d   e x a m p l e   o f   h o w   t o   c o n f i g u r e   R e d i s   u s i n g   a   C o n f i g M a p   a n d   b u i l d s   u p o n   t h e   C o n f i g u r e   a   P o d   t o   U s e   a   C o n f i g M a p   t a s k .


Question: What is Objectives?

Answer: C r e a t e   a   C o n f i g M a p   w i t h   R e d i s   c o n f i g u r a t i o n   v a l u e s C r e a t e   a   R e d i s   P o d   t h a t   m o u n t s   a n d   u s e s   t h e   c r e a t e d   C o n f i g M a p V e r i f y   t h a t   t h e   c o n f i g u r a t i o n   w a s   c o r r e c t l y   a p p l i e d .


Question: What is Before you begin?

Answer: Y o u   n e e d   t o   h a v e   a   K u b e r n e t e s   c l u s t e r ,   a n d   t h e   k u b e c t l   c o m m a n d - l i n e   t o o l   m u s t   b e   c o n f i g u r e d   t o   c o m m u n i c a t e   w i t h   y o u r   c l u s t e r .   I t   i s   r e c o m m e n d e d   t o   r u n   t h i s   t u t o r i a l   o n   a   c l u s t e r   w i t h   a t   l e a s t   t w o   n o d e s   t h a t   a r e   n o t   a c t i n g   a s   c o n t r o l   p l a n e   h o s t s .   I f   y o u   d o   n o t   a l r e a d y   h a v e   a   c l u s t e r ,   y o u   c a n   c r e a t e   o n e   b y   u s i n g   m i n i k u b e   o r   y o u   c a n   u s e   o n e   o f   t h e s e   K u b e r n e t e s   p l a y g r o u n d s : i x i m i u z   L a b s K i l l e r c o d a K o d e K l o u d P l a y   w i t h   K u b e r n e t e s T o   c h e c k   t h e   v e r s i o n ,   e n t e r   k u b e c t l   v e r s i o n .   Y o u   n e e d   t o   h a v e   a   K u b e r n e t e s   c l u s t e r ,   a n d   t h e   k u b e c t l   c o m m a n d - l i n e   t o o l   m u s t   b e   c o n f i g u r e d   t o   c o m m u n i c a t e   w i t h   y o u r   c l u s t e r .   I t   i s   r e c o m m e n d e d   t o   r u n   t h i s   t u t o r i a l   o n   a   c l u s t e r   w i t h   a t   l e a s t   t w o   n o d e s   t h a t   a r e   n o t   a c t i n g   a s   c o n t r o l   p l a n e   h o s t s .   I f   y o u   d o   n o t   a l r e a d y   h a v e   a   c l u s t e r ,   y o u   c a n   c r e a t e   o n e   b y   u s i n g   m i n i k u b e   o r   y o u   c a n   u s e   o n e   o f   t h e s e   K u b e r n e t e s   p l a y g r o u n d s :   i x i m i u z   L a b s K i l l e r c o d a K o d e K l o u d P l a y   w i t h   K u b e r n e t e s   T o   c h e c k   t h e   v e r s i o n ,   e n t e r   k u b e c t l   v e r s i o n .   T h e   e x a m p l e   s h o w n   o n   t h i s   p a g e   w o r k s   w i t h   k u b e c t l   1 . 1 4   a n d   a b o


Question: What is Real World Example: Configuring Redis using a ConfigMap?

Answer: F o l l o w   t h e   s t e p s   b e l o w   t o   c o n f i g u r e   a   R e d i s   c a c h e   u s i n g   d a t a   s t o r e d   i n   a   C o n f i g M a p .   F i r s t   c r e a t e   a   C o n f i g M a p   w i t h   a n   e m p t y   c o n f i g u r a t i o n   b l o c k :   c a t   < < E O F   > . / e x a m p l e - r e d i s - c o n f i g . y a m l   a p i V e r s i o n :   v 1   k i n d :   C o n f i g M a p   m e t a d a t a :   n a m e :   e x a m p l e - r e d i s - c o n f i g   d a t a :   r e d i s - c o n f i g :   " "   E O F   A p p l y   t h e   C o n f i g M a p   c r e a t e d   a b o v e ,   a l o n g   w i t h   a   R e d i s   p o d   m a n i f e s t :   k u b e c t l   a p p l y   - f   e x a m p l e - r e d i s - c o n f i g . y a m l   k u b e c t l   a p p l y   - f   h t t p s : / / r a w . g i t h u b u s e r c o n t e n t . c o m / k u b e r n e t e s / w e b s i t e / m a i n / c o n t e n t / e n / e x a m p l e s / p o d s / c o n f i g / r e d i s - p o d . y a m l   E x a m i n e   t h e   c o n t e n t s   o f   t h e   R e d i s   p o d   m a n i f e s t   a n d   n o t e   t h e   f o l l o w i n g :   A   v o l u m e   n a m e d   c o n f i g   i s   c r e a t e d   b y   s p e c . v o l u m e s [ 1 ] T h e   k e y   a n d   p a t h   u n d e r   s p e c . v o l u m e s [ 1 ] . c o n f i g M a p . i t e m s [ 0 ]   e x p o s e s   t h e   r e d i s - c o n f i g   k e y   f r o m   t h e   e x a m p l e - r e d i s - c o n f i g   C o n f i g M a p   a s   a   f i l e   n a m e d   r e d i s . c o n f   o n   t h e   c o n f i g   v o l u m e . T h e   c o n f i g   v o l u m e   i s   t h e n   m o u n t e d   a t   / r e d i s - m a s t e r   b y   s p e c . c o n t a i n e r s [ 0 ] . v o l u m e M o u n t s [ 1 ] .   T h i s   h a s   t h e   n e t   e f f e c t   o f   e x p o s i n g   t h e   d a t a   i n   d a t a . r e d i s - c o n f i g   f r o m   t h e   e x a m p l e - r e d i s - c o n f i g   C o n f i g


Question: What is What's next?

Answer: L e a r n   m o r e   a b o u t   C o n f i g M a p s . F o l l o w   a n   e x a m p l e   o f   U p d a t i n g   c o n f i g u r a t i o n   v i a   a   C o n f i g M a p .


Question: What is kubectl create priorityclass?

Answer: kubectl create priorityclassSynopsisCreate a priority class with the specified name, value, globalDefault and description.kubectl create priorityclass NAME --value=VALUE --global-default=BOOL [--dry-run=server|client|none] Examples # Create a priority class named high-priority kubectl create priorityclass high-priority --value=1000 --description="high priority" # Create a priority class named default-priority that is considered as the global default priority kubectl create priorityclass default-priority --value=1000 --global-default=true --description="default priority" # Create a priority class named high-priority that cannot preempt pods with lower priority kubectl create priorityclass high-priority --value=1000 --description="high priority" --preemption-policy="Never" Options--allow-missing-template-keys Default: trueIf true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.--description stringdescription is an arbitrary string that usually provides guidelines on when this priority class should be used.--dry-run string[="unchanged"] Default: "none"Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.--field-manager string Default: "kubectl-create"Name of the manager used to track field ownership.--global-defaultglobal-default specifies whether this PriorityClass should be considered as the default priority.-h, --helphelp for priorityclass-o, --output stringOutput format. One of: (json, yaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).--preemption-policy string Default: "PreemptLowerPriority"preemption-policy is the policy for preempting pods with lower priority.--save-configIf true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.--show-managed-fieldsIf true, keep the managedFields when printing objects in JSON or YAML format.--template stringTemplate string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].--validate string[="strict"] Default: "strict"Must be one of: strict (or true), warn, ignore (or false). "true" or "strict" will use a schema to validate the input and fail the request if invalid. It will perform server side validation if ServerSideFieldValidation is enabled on the api-server, but will fall back to less reliable client-side validation if not. "warn" will warn about unknown or duplicate fields without blocking the request if server-side field validation is enabled on the API server, and behave as "ignore" otherwise. "false" or "ignore" will not perform any schema validatio


Question: How does kubectl create priorityclass work?

Answer: kubectl create priorityclassSynopsisCreate a priority class with the specified name, value, globalDefault and description.kubectl create priorityclass NAME --value=VALUE --global-default=BOOL [--dry-run=server|client|none] Examples # Create a priority class named high-priority kubectl create priorityclass high-priority --value=1000 --description="high priority" # Create a priority class named default-priority that is considered as the global default priority kubectl create priorityclass default-priority --value=1000 --global-default=true --description="default priority" # Create a priority class named high-priority that cannot preempt pods with lower priority kubectl create priorityclass high-priority --value=1000 --description="high priority" --preemption-policy="Never" Options--allow-missing-template-keys Default: trueIf true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.--description stringdescription is an arbitrary string that usually provides guidelines on when this priority class should be used.--dry-run string[="unchanged"] Default: "none"Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.--field-manager string Default: "kubectl-create"Name of the manager used to track field ownership.--global-defaultglobal-default specifies whether this PriorityClass should be considered as the default priority.-h, --helphelp for priorityclass-o, --output stringOutput format. One of: (json, yaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).--preemption-policy string Default: "PreemptLowerPriority"preemption-policy is the policy for preempting pods with lower priority.--save-configIf true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.--show-managed-fieldsIf true, keep the managedFields when printing objects in JSON or YAML format.--template stringTemplate string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].--validate string[="strict"] Default: "strict"Must be one of: strict (or true), warn, ignore (or false). "true" or "strict" will use a schema to validate the input and fail the request if invalid. It will perform server side validation if ServerSideFieldValidation is enabled on the api-server, but will fall back to less reliable client-side validation if not. "warn" will warn about unknown or duplicate fields without blocking the request if server-side field validation is enabled on the API server, and behave as "ignore" otherwise. "false" or "ignore" will not perform any schema validatio


Question: When would you use kubectl create priorityclass?

Answer: kubectl create priorityclassSynopsisCreate a priority class with the specified name, value, globalDefault and description.kubectl create priorityclass NAME --value=VALUE --global-default=BOOL [--dry-run=server|client|none] Examples # Create a priority class named high-priority kubectl create priorityclass high-priority --value=1000 --description="high priority" # Create a priority class named default-priority that is considered as the global default priority kubectl create priorityclass default-priority --value=1000 --global-default=true --description="default priority" # Create a priority class named high-priority that cannot preempt pods with lower priority kubectl create priorityclass high-priority --value=1000 --description="high priority" --preemption-policy="Never" Options--allow-missing-template-keys Default: trueIf true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.--description stringdescription is an arbitrary string that usually provides guidelines on when this priority class should be used.--dry-run string[="unchanged"] Default: "none"Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.--field-manager string Default: "kubectl-create"Name of the manager used to track field ownership.--global-defaultglobal-default specifies whether this PriorityClass should be considered as the default priority.-h, --helphelp for priorityclass-o, --output stringOutput format. One of: (json, yaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).--preemption-policy string Default: "PreemptLowerPriority"preemption-policy is the policy for preempting pods with lower priority.--save-configIf true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.--show-managed-fieldsIf true, keep the managedFields when printing objects in JSON or YAML format.--template stringTemplate string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].--validate string[="strict"] Default: "strict"Must be one of: strict (or true), warn, ignore (or false). "true" or "strict" will use a schema to validate the input and fail the request if invalid. It will perform server side validation if ServerSideFieldValidation is enabled on the api-server, but will fall back to less reliable client-side validation if not. "warn" will warn about unknown or duplicate fields without blocking the request if server-side field validation is enabled on the API server, and behave as "ignore" otherwise. "false" or "ignore" will not perform any schema validatio


Question: What are the benefits of kubectl create priorityclass?

Answer: kubectl create priorityclassSynopsisCreate a priority class with the specified name, value, globalDefault and description.kubectl create priorityclass NAME --value=VALUE --global-default=BOOL [--dry-run=server|client|none] Examples # Create a priority class named high-priority kubectl create priorityclass high-priority --value=1000 --description="high priority" # Create a priority class named default-priority that is considered as the global default priority kubectl create priorityclass default-priority --value=1000 --global-default=true --description="default priority" # Create a priority class named high-priority that cannot preempt pods with lower priority kubectl create priorityclass high-priority --value=1000 --description="high priority" --preemption-policy="Never" Options--allow-missing-template-keys Default: trueIf true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.--description stringdescription is an arbitrary string that usually provides guidelines on when this priority class should be used.--dry-run string[="unchanged"] Default: "none"Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.--field-manager string Default: "kubectl-create"Name of the manager used to track field ownership.--global-defaultglobal-default specifies whether this PriorityClass should be considered as the default priority.-h, --helphelp for priorityclass-o, --output stringOutput format. One of: (json, yaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).--preemption-policy string Default: "PreemptLowerPriority"preemption-policy is the policy for preempting pods with lower priority.--save-configIf true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.--show-managed-fieldsIf true, keep the managedFields when printing objects in JSON or YAML format.--template stringTemplate string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].--validate string[="strict"] Default: "strict"Must be one of: strict (or true), warn, ignore (or false). "true" or "strict" will use a schema to validate the input and fail the request if invalid. It will perform server side validation if ServerSideFieldValidation is enabled on the api-server, but will fall back to less reliable client-side validation if not. "warn" will warn about unknown or duplicate fields without blocking the request if server-side field validation is enabled on the API server, and behave as "ignore" otherwise. "false" or "ignore" will not perform any schema validatio


Question: What is Synopsis?

Answer: C r e a t e   a   p r i o r i t y   c l a s s   w i t h   t h e   s p e c i f i e d   n a m e ,   v a l u e ,   g l o b a l D e f a u l t   a n d   d e s c r i p t i o n .   k u b e c t l   c r e a t e   p r i o r i t y c l a s s   N A M E   - - v a l u e = V A L U E   - - g l o b a l - d e f a u l t = B O O L   [ - - d r y - r u n = s e r v e r | c l i e n t | n o n e ]


Question: What is Examples?

Answer: #   C r e a t e   a   p r i o r i t y   c l a s s   n a m e d   h i g h - p r i o r i t y   k u b e c t l   c r e a t e   p r i o r i t y c l a s s   h i g h - p r i o r i t y   - - v a l u e = 1 0 0 0   - - d e s c r i p t i o n = " h i g h   p r i o r i t y "   #   C r e a t e   a   p r i o r i t y   c l a s s   n a m e d   d e f a u l t - p r i o r i t y   t h a t   i s   c o n s i d e r e d   a s   t h e   g l o b a l   d e f a u l t   p r i o r i t y   k u b e c t l   c r e a t e   p r i o r i t y c l a s s   d e f a u l t - p r i o r i t y   - - v a l u e = 1 0 0 0   - - g l o b a l - d e f a u l t = t r u e   - - d e s c r i p t i o n = " d e f a u l t   p r i o r i t y "   #   C r e a t e   a   p r i o r i t y   c l a s s   n a m e d   h i g h - p r i o r i t y   t h a t   c a n n o t   p r e e m p t   p o d s   w i t h   l o w e r   p r i o r i t y   k u b e c t l   c r e a t e   p r i o r i t y c l a s s   h i g h - p r i o r i t y   - - v a l u e = 1 0 0 0   - - d e s c r i p t i o n = " h i g h   p r i o r i t y "   - - p r e e m p t i o n - p o l i c y = " N e v e r "


Question: What is Options?

Answer: I f   t r u e ,   i g n o r e   a n y   e r r o r s   i n   t e m p l a t e s   w h e n   a   f i e l d   o r   m a p   k e y   i s   m i s s i n g   i n   t h e   t e m p l a t e .   O n l y   a p p l i e s   t o   g o l a n g   a n d   j s o n p a t h   o u t p u t   f o r m a t s .   d e s c r i p t i o n   i s   a n   a r b i t r a r y   s t r i n g   t h a t   u s u a l l y   p r o v i d e s   g u i d e l i n e s   o n   w h e n   t h i s   p r i o r i t y   c l a s s   s h o u l d   b e   u s e d .   M u s t   b e   " n o n e " ,   " s e r v e r " ,   o r   " c l i e n t " .   I f   c l i e n t   s t r a t e g y ,   o n l y   p r i n t   t h e   o b j e c t   t h a t   w o u l d   b e   s e n t ,   w i t h o u t   s e n d i n g   i t .   I f   s e r v e r   s t r a t e g y ,   s u b m i t   s e r v e r - s i d e   r e q u e s t   w i t h o u t   p e r s i s t i n g   t h e   r e s o u r c e .   N a m e   o f   t h e   m a n a g e r   u s e d   t o   t r a c k   f i e l d   o w n e r s h i p .   g l o b a l - d e f a u l t   s p e c i f i e s   w h e t h e r   t h i s   P r i o r i t y C l a s s   s h o u l d   b e   c o n s i d e r e d   a s   t h e   d e f a u l t   p r i o r i t y .   h e l p   f o r   p r i o r i t y c l a s s   O u t p u t   f o r m a t .   O n e   o f :   ( j s o n ,   y a m l ,   n a m e ,   g o - t e m p l a t e ,   g o - t e m p l a t e - f i l e ,   t e m p l a t e ,   t e m p l a t e f i l e ,   j s o n p a t h ,   j s o n p a t h - a s - j s o n ,   j s o n p a t h - f i l e ) .   p r e e m p t i o n - p o l i c y   i s   t h e   p o l i c y   f o r   p r e e m p t i n g   p o d s   w i t h   l o w e r   p r i o r i t y .   I f   t r u e ,   t h e   c o n f i g u r a t i o n   o f   c u r r e n t   o b j e c t   w i l l   b e   s a v e d   i n   i t s   a n n o t a t i o n .   O t h e r w i s e ,   t h e   a n n o t a t i o n   w i l l   b e   u n c h a n g e d .   T h i s   f l a g   i s   u s e f u l   w h e n   y o u   w a n t


Question: What is Parent Options Inherited?

Answer: U s e r n a m e   t o   i m p e r s o n a t e   f o r   t h e   o p e r a t i o n .   U s e r   c o u l d   b e   a   r e g u l a r   u s e r   o r   a   s e r v i c e   a c c o u n t   i n   a   n a m e s p a c e .   G r o u p   t o   i m p e r s o n a t e   f o r   t h e   o p e r a t i o n ,   t h i s   f l a g   c a n   b e   r e p e a t e d   t o   s p e c i f y   m u l t i p l e   g r o u p s .   U I D   t o   i m p e r s o n a t e   f o r   t h e   o p e r a t i o n .   D e f a u l t   c a c h e   d i r e c t o r y   P a t h   t o   a   c e r t   f i l e   f o r   t h e   c e r t i f i c a t e   a u t h o r i t y   P a t h   t o   a   c l i e n t   c e r t i f i c a t e   f i l e   f o r   T L S   P a t h   t o   a   c l i e n t   k e y   f i l e   f o r   T L S   T h e   n a m e   o f   t h e   k u b e c o n f i g   c l u s t e r   t o   u s e   T h e   n a m e   o f   t h e   k u b e c o n f i g   c o n t e x t   t o   u s e   I f   t r u e ,   o p t - o u t   o f   r e s p o n s e   c o m p r e s s i o n   f o r   a l l   r e q u e s t s   t o   t h e   s e r v e r   I f   t r u e ,   t h e   s e r v e r ' s   c e r t i f i c a t e   w i l l   n o t   b e   c h e c k e d   f o r   v a l i d i t y .   T h i s   w i l l   m a k e   y o u r   H T T P S   c o n n e c t i o n s   i n s e c u r e   P a t h   t o   t h e   k u b e c o n f i g   f i l e   t o   u s e   f o r   C L I   r e q u e s t s .   P a t h   t o   t h e   k u b e r c   f i l e   t o   u s e   f o r   p r e f e r e n c e s .   T h i s   c a n   b e   d i s a b l e d   b y   e x p o r t i n g   K U B E C T L _ K U B E R C = f a l s e   f e a t u r e   g a t e   o r   t u r n i n g   o f f   t h e   f e a t u r e   K U B E R C = o f f .   R e q u i r e   s e r v e r   v e r s i o n   t o   m a t c h   c l i e n t   v e r s i o n   I f   p r e s e n t ,   t h e   n a m e s p a c e   s c o p e   f o r   t h i s   C L I   r e q u e s t   P a s s w o r d   f o r   b a s i c   a u t h e n t i c a t


Question: What is See Also?

Answer: k u b e c t l   c r e a t e   -   C r e a t e   a   r e s o u r c e   f r o m   a   f i l e   o r   f r o m   s t d i n   T h i s   p a g e   i s   a u t o m a t i c a l l y   g e n e r a t e d .   I f   y o u   p l a n   t o   r e p o r t   a n   i s s u e   w i t h   t h i s   p a g e ,   m e n t i o n   t h a t   t h e   p a g e   i s   a u t o - g e n e r a t e d   i n   y o u r   i s s u e   d e s c r i p t i o n .   T h e   f i x   m a y   n e e d   t o   h a p p e n   e l s e w h e r e   i n   t h e   K u b e r n e t e s   p r o j e c t .


Question: What is kubectl rollout undo?

Answer: kubectl rollout undoSynopsisRoll back to a previous rollout.kubectl rollout undo (TYPE NAME | TYPE/NAME) [flags] Examples # Roll back to the previous deployment kubectl rollout undo deployment/abc # Roll back to daemonset revision 3 kubectl rollout undo daemonset/abc --to-revision=3 # Roll back to the previous deployment with dry-run kubectl rollout undo --dry-run=server deployment/abc Options--allow-missing-template-keys Default: trueIf true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.--dry-run string[="unchanged"] Default: "none"Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.-f, --filename stringsFilename, directory, or URL to files identifying the resource to get from a server.-h, --helphelp for undo-k, --kustomize stringProcess the kustomization directory. This flag can't be used together with -f or -R.-o, --output stringOutput format. One of: (json, yaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).-R, --recursiveProcess the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.-l, --selector stringSelector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.--show-managed-fieldsIf true, keep the managedFields when printing objects in JSON or YAML format.--template stringTemplate string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].--to-revision intThe revision to rollback to. Default to 0 (last revision).Parent Options Inherited--as stringUsername to impersonate for the operation. User could be a regular user or a service account in a namespace.--as-group stringsGroup to impersonate for the operation, this flag can be repeated to specify multiple groups.--as-uid stringUID to impersonate for the operation.--cache-dir string Default: "$HOME/.kube/cache"Default cache directory--certificate-authority stringPath to a cert file for the certificate authority--client-certificate stringPath to a client certificate file for TLS--client-key stringPath to a client key file for TLS--cluster stringThe name of the kubeconfig cluster to use--context stringThe name of the kubeconfig context to use--disable-compressionIf true, opt-out of response compression for all requests to the server--insecure-skip-tls-verifyIf true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure--kubeconfig stringPath to the kubeconfig file to use for CLI requests.--kuberc stringPath to the kuberc file


Question: How does kubectl rollout undo work?

Answer: kubectl rollout undoSynopsisRoll back to a previous rollout.kubectl rollout undo (TYPE NAME | TYPE/NAME) [flags] Examples # Roll back to the previous deployment kubectl rollout undo deployment/abc # Roll back to daemonset revision 3 kubectl rollout undo daemonset/abc --to-revision=3 # Roll back to the previous deployment with dry-run kubectl rollout undo --dry-run=server deployment/abc Options--allow-missing-template-keys Default: trueIf true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.--dry-run string[="unchanged"] Default: "none"Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.-f, --filename stringsFilename, directory, or URL to files identifying the resource to get from a server.-h, --helphelp for undo-k, --kustomize stringProcess the kustomization directory. This flag can't be used together with -f or -R.-o, --output stringOutput format. One of: (json, yaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).-R, --recursiveProcess the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.-l, --selector stringSelector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.--show-managed-fieldsIf true, keep the managedFields when printing objects in JSON or YAML format.--template stringTemplate string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].--to-revision intThe revision to rollback to. Default to 0 (last revision).Parent Options Inherited--as stringUsername to impersonate for the operation. User could be a regular user or a service account in a namespace.--as-group stringsGroup to impersonate for the operation, this flag can be repeated to specify multiple groups.--as-uid stringUID to impersonate for the operation.--cache-dir string Default: "$HOME/.kube/cache"Default cache directory--certificate-authority stringPath to a cert file for the certificate authority--client-certificate stringPath to a client certificate file for TLS--client-key stringPath to a client key file for TLS--cluster stringThe name of the kubeconfig cluster to use--context stringThe name of the kubeconfig context to use--disable-compressionIf true, opt-out of response compression for all requests to the server--insecure-skip-tls-verifyIf true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure--kubeconfig stringPath to the kubeconfig file to use for CLI requests.--kuberc stringPath to the kuberc file


Question: When would you use kubectl rollout undo?

Answer: kubectl rollout undoSynopsisRoll back to a previous rollout.kubectl rollout undo (TYPE NAME | TYPE/NAME) [flags] Examples # Roll back to the previous deployment kubectl rollout undo deployment/abc # Roll back to daemonset revision 3 kubectl rollout undo daemonset/abc --to-revision=3 # Roll back to the previous deployment with dry-run kubectl rollout undo --dry-run=server deployment/abc Options--allow-missing-template-keys Default: trueIf true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.--dry-run string[="unchanged"] Default: "none"Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.-f, --filename stringsFilename, directory, or URL to files identifying the resource to get from a server.-h, --helphelp for undo-k, --kustomize stringProcess the kustomization directory. This flag can't be used together with -f or -R.-o, --output stringOutput format. One of: (json, yaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).-R, --recursiveProcess the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.-l, --selector stringSelector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.--show-managed-fieldsIf true, keep the managedFields when printing objects in JSON or YAML format.--template stringTemplate string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].--to-revision intThe revision to rollback to. Default to 0 (last revision).Parent Options Inherited--as stringUsername to impersonate for the operation. User could be a regular user or a service account in a namespace.--as-group stringsGroup to impersonate for the operation, this flag can be repeated to specify multiple groups.--as-uid stringUID to impersonate for the operation.--cache-dir string Default: "$HOME/.kube/cache"Default cache directory--certificate-authority stringPath to a cert file for the certificate authority--client-certificate stringPath to a client certificate file for TLS--client-key stringPath to a client key file for TLS--cluster stringThe name of the kubeconfig cluster to use--context stringThe name of the kubeconfig context to use--disable-compressionIf true, opt-out of response compression for all requests to the server--insecure-skip-tls-verifyIf true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure--kubeconfig stringPath to the kubeconfig file to use for CLI requests.--kuberc stringPath to the kuberc file


Question: What are the benefits of kubectl rollout undo?

Answer: kubectl rollout undoSynopsisRoll back to a previous rollout.kubectl rollout undo (TYPE NAME | TYPE/NAME) [flags] Examples # Roll back to the previous deployment kubectl rollout undo deployment/abc # Roll back to daemonset revision 3 kubectl rollout undo daemonset/abc --to-revision=3 # Roll back to the previous deployment with dry-run kubectl rollout undo --dry-run=server deployment/abc Options--allow-missing-template-keys Default: trueIf true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.--dry-run string[="unchanged"] Default: "none"Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.-f, --filename stringsFilename, directory, or URL to files identifying the resource to get from a server.-h, --helphelp for undo-k, --kustomize stringProcess the kustomization directory. This flag can't be used together with -f or -R.-o, --output stringOutput format. One of: (json, yaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).-R, --recursiveProcess the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.-l, --selector stringSelector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.--show-managed-fieldsIf true, keep the managedFields when printing objects in JSON or YAML format.--template stringTemplate string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].--to-revision intThe revision to rollback to. Default to 0 (last revision).Parent Options Inherited--as stringUsername to impersonate for the operation. User could be a regular user or a service account in a namespace.--as-group stringsGroup to impersonate for the operation, this flag can be repeated to specify multiple groups.--as-uid stringUID to impersonate for the operation.--cache-dir string Default: "$HOME/.kube/cache"Default cache directory--certificate-authority stringPath to a cert file for the certificate authority--client-certificate stringPath to a client certificate file for TLS--client-key stringPath to a client key file for TLS--cluster stringThe name of the kubeconfig cluster to use--context stringThe name of the kubeconfig context to use--disable-compressionIf true, opt-out of response compression for all requests to the server--insecure-skip-tls-verifyIf true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure--kubeconfig stringPath to the kubeconfig file to use for CLI requests.--kuberc stringPath to the kuberc file


Question: What is Synopsis?

Answer: R o l l   b a c k   t o   a   p r e v i o u s   r o l l o u t .   k u b e c t l   r o l l o u t   u n d o   ( T Y P E   N A M E   |   T Y P E / N A M E )   [ f l a g s ]


Question: What is Examples?

Answer: #   R o l l   b a c k   t o   t h e   p r e v i o u s   d e p l o y m e n t   k u b e c t l   r o l l o u t   u n d o   d e p l o y m e n t / a b c   #   R o l l   b a c k   t o   d a e m o n s e t   r e v i s i o n   3   k u b e c t l   r o l l o u t   u n d o   d a e m o n s e t / a b c   - - t o - r e v i s i o n = 3   #   R o l l   b a c k   t o   t h e   p r e v i o u s   d e p l o y m e n t   w i t h   d r y - r u n   k u b e c t l   r o l l o u t   u n d o   - - d r y - r u n = s e r v e r   d e p l o y m e n t / a b c


Question: What is Options?

Answer: I f   t r u e ,   i g n o r e   a n y   e r r o r s   i n   t e m p l a t e s   w h e n   a   f i e l d   o r   m a p   k e y   i s   m i s s i n g   i n   t h e   t e m p l a t e .   O n l y   a p p l i e s   t o   g o l a n g   a n d   j s o n p a t h   o u t p u t   f o r m a t s .   M u s t   b e   " n o n e " ,   " s e r v e r " ,   o r   " c l i e n t " .   I f   c l i e n t   s t r a t e g y ,   o n l y   p r i n t   t h e   o b j e c t   t h a t   w o u l d   b e   s e n t ,   w i t h o u t   s e n d i n g   i t .   I f   s e r v e r   s t r a t e g y ,   s u b m i t   s e r v e r - s i d e   r e q u e s t   w i t h o u t   p e r s i s t i n g   t h e   r e s o u r c e .   F i l e n a m e ,   d i r e c t o r y ,   o r   U R L   t o   f i l e s   i d e n t i f y i n g   t h e   r e s o u r c e   t o   g e t   f r o m   a   s e r v e r .   h e l p   f o r   u n d o   P r o c e s s   t h e   k u s t o m i z a t i o n   d i r e c t o r y .   T h i s   f l a g   c a n ' t   b e   u s e d   t o g e t h e r   w i t h   - f   o r   - R .   O u t p u t   f o r m a t .   O n e   o f :   ( j s o n ,   y a m l ,   n a m e ,   g o - t e m p l a t e ,   g o - t e m p l a t e - f i l e ,   t e m p l a t e ,   t e m p l a t e f i l e ,   j s o n p a t h ,   j s o n p a t h - a s - j s o n ,   j s o n p a t h - f i l e ) .   P r o c e s s   t h e   d i r e c t o r y   u s e d   i n   - f ,   - - f i l e n a m e   r e c u r s i v e l y .   U s e f u l   w h e n   y o u   w a n t   t o   m a n a g e   r e l a t e d   m a n i f e s t s   o r g a n i z e d   w i t h i n   t h e   s a m e   d i r e c t o r y .   S e l e c t o r   ( l a b e l   q u e r y )   t o   f i l t e r   o n ,   s u p p o r t s   ' = ' ,   ' = = ' ,   ' ! = ' ,   ' i n ' ,   ' n o t i n ' . ( e . g .   - l   k e y 1 = v a l u e 1 , k e y 2 = v a l u e 2 , k e y 3   i n   ( v a l u e 3 ) ) .   M a t c h i n g   o b j e c t s   m u s t   s a t i s f y   a l l   o f   t h e   s p e c i f i e d   l a b e l   c


Question: What is Parent Options Inherited?

Answer: U s e r n a m e   t o   i m p e r s o n a t e   f o r   t h e   o p e r a t i o n .   U s e r   c o u l d   b e   a   r e g u l a r   u s e r   o r   a   s e r v i c e   a c c o u n t   i n   a   n a m e s p a c e .   G r o u p   t o   i m p e r s o n a t e   f o r   t h e   o p e r a t i o n ,   t h i s   f l a g   c a n   b e   r e p e a t e d   t o   s p e c i f y   m u l t i p l e   g r o u p s .   U I D   t o   i m p e r s o n a t e   f o r   t h e   o p e r a t i o n .   D e f a u l t   c a c h e   d i r e c t o r y   P a t h   t o   a   c e r t   f i l e   f o r   t h e   c e r t i f i c a t e   a u t h o r i t y   P a t h   t o   a   c l i e n t   c e r t i f i c a t e   f i l e   f o r   T L S   P a t h   t o   a   c l i e n t   k e y   f i l e   f o r   T L S   T h e   n a m e   o f   t h e   k u b e c o n f i g   c l u s t e r   t o   u s e   T h e   n a m e   o f   t h e   k u b e c o n f i g   c o n t e x t   t o   u s e   I f   t r u e ,   o p t - o u t   o f   r e s p o n s e   c o m p r e s s i o n   f o r   a l l   r e q u e s t s   t o   t h e   s e r v e r   I f   t r u e ,   t h e   s e r v e r ' s   c e r t i f i c a t e   w i l l   n o t   b e   c h e c k e d   f o r   v a l i d i t y .   T h i s   w i l l   m a k e   y o u r   H T T P S   c o n n e c t i o n s   i n s e c u r e   P a t h   t o   t h e   k u b e c o n f i g   f i l e   t o   u s e   f o r   C L I   r e q u e s t s .   P a t h   t o   t h e   k u b e r c   f i l e   t o   u s e   f o r   p r e f e r e n c e s .   T h i s   c a n   b e   d i s a b l e d   b y   e x p o r t i n g   K U B E C T L _ K U B E R C = f a l s e   f e a t u r e   g a t e   o r   t u r n i n g   o f f   t h e   f e a t u r e   K U B E R C = o f f .   R e q u i r e   s e r v e r   v e r s i o n   t o   m a t c h   c l i e n t   v e r s i o n   I f   p r e s e n t ,   t h e   n a m e s p a c e   s c o p e   f o r   t h i s   C L I   r e q u e s t   P a s s w o r d   f o r   b a s i c   a u t h e n t i c a t


Question: What is See Also?

Answer: k u b e c t l   r o l l o u t   -   M a n a g e   t h e   r o l l o u t   o f   a   r e s o u r c e   T h i s   p a g e   i s   a u t o m a t i c a l l y   g e n e r a t e d .   I f   y o u   p l a n   t o   r e p o r t   a n   i s s u e   w i t h   t h i s   p a g e ,   m e n t i o n   t h a t   t h e   p a g e   i s   a u t o - g e n e r a t e d   i n   y o u r   i s s u e   d e s c r i p t i o n .   T h e   f i x   m a y   n e e d   t o   h a p p e n   e l s e w h e r e   i n   t h e   K u b e r n e t e s   p r o j e c t .


Question: What is Node Autoscaling?

Answer: Node AutoscalingAutomatically provision and consolidate the Nodes in your cluster to adapt to demand and optimize cost.In order to run workloads in your cluster, you need Nodes. Nodes in your cluster can be autoscaled - dynamically provisioned, or consolidated to provide needed capacity while optimizing cost. Autoscaling is performed by Node autoscalers.Node provisioningIf there are Pods in a cluster that can't be scheduled on existing Nodes, new Nodes can be automatically added to the cluster—provisioned—to accommodate the Pods. This is especially useful if the number of Pods changes over time, for example as a result of combining horizontal workload with Node autoscaling.Autoscalers provision the Nodes by creating and deleting cloud provider resources backing them. Most commonly, the resources backing the Nodes are Virtual Machines.The main goal of provisioning is to make all Pods schedulable. This goal is not always attainable because of various limitations, including reaching configured provisioning limits, provisioning configuration not being compatible with a particular set of pods, or the lack of cloud provider capacity. While provisioning, Node autoscalers often try to achieve additional goals (for example minimizing the cost of the provisioned Nodes or balancing the number of Nodes between failure domains).There are two main inputs to a Node autoscaler when determining Nodes to provision—Pod scheduling constraints, and Node constraints imposed by autoscaler configuration.Autoscaler configuration may also include other Node provisioning triggers (for example the number of Nodes falling below a configured minimum limit).Note:Provisioning was formerly known as scale-up in Cluster Autoscaler.Pod scheduling constraintsPods can express scheduling constraints to impose limitations on the kind of Nodes they can be scheduled on. Node autoscalers take these constraints into account to ensure that the pending Pods can be scheduled on the provisioned Nodes.The most common kind of scheduling constraints are the resource requests specified by Pod containers. Autoscalers will make sure that the provisioned Nodes have enough resources to satisfy the requests. However, they don't directly take into account the real resource usage of the Pods after they start running. In order to autoscale Nodes based on actual workload resource usage, you can combine horizontal workload autoscaling with Node autoscaling.Other common Pod scheduling constraints include Node affinity, inter-Pod affinity, or a requirement for a particular storage volume.Node constraints imposed by autoscaler configurationThe specifics of the provisioned Nodes (for example the amount of resources, the presence of a given label) depend on autoscaler configuration. Autoscalers can either choose them from a pre-defined set of Node configurations, or use auto-provisioning.Auto-provisioningNode auto-provisioning is a mode of provisioning in which a user doesn't have to fully configure the specific


Question: How does Node Autoscaling work?

Answer: Node AutoscalingAutomatically provision and consolidate the Nodes in your cluster to adapt to demand and optimize cost.In order to run workloads in your cluster, you need Nodes. Nodes in your cluster can be autoscaled - dynamically provisioned, or consolidated to provide needed capacity while optimizing cost. Autoscaling is performed by Node autoscalers.Node provisioningIf there are Pods in a cluster that can't be scheduled on existing Nodes, new Nodes can be automatically added to the cluster—provisioned—to accommodate the Pods. This is especially useful if the number of Pods changes over time, for example as a result of combining horizontal workload with Node autoscaling.Autoscalers provision the Nodes by creating and deleting cloud provider resources backing them. Most commonly, the resources backing the Nodes are Virtual Machines.The main goal of provisioning is to make all Pods schedulable. This goal is not always attainable because of various limitations, including reaching configured provisioning limits, provisioning configuration not being compatible with a particular set of pods, or the lack of cloud provider capacity. While provisioning, Node autoscalers often try to achieve additional goals (for example minimizing the cost of the provisioned Nodes or balancing the number of Nodes between failure domains).There are two main inputs to a Node autoscaler when determining Nodes to provision—Pod scheduling constraints, and Node constraints imposed by autoscaler configuration.Autoscaler configuration may also include other Node provisioning triggers (for example the number of Nodes falling below a configured minimum limit).Note:Provisioning was formerly known as scale-up in Cluster Autoscaler.Pod scheduling constraintsPods can express scheduling constraints to impose limitations on the kind of Nodes they can be scheduled on. Node autoscalers take these constraints into account to ensure that the pending Pods can be scheduled on the provisioned Nodes.The most common kind of scheduling constraints are the resource requests specified by Pod containers. Autoscalers will make sure that the provisioned Nodes have enough resources to satisfy the requests. However, they don't directly take into account the real resource usage of the Pods after they start running. In order to autoscale Nodes based on actual workload resource usage, you can combine horizontal workload autoscaling with Node autoscaling.Other common Pod scheduling constraints include Node affinity, inter-Pod affinity, or a requirement for a particular storage volume.Node constraints imposed by autoscaler configurationThe specifics of the provisioned Nodes (for example the amount of resources, the presence of a given label) depend on autoscaler configuration. Autoscalers can either choose them from a pre-defined set of Node configurations, or use auto-provisioning.Auto-provisioningNode auto-provisioning is a mode of provisioning in which a user doesn't have to fully configure the specific


Question: When would you use Node Autoscaling?

Answer: Node AutoscalingAutomatically provision and consolidate the Nodes in your cluster to adapt to demand and optimize cost.In order to run workloads in your cluster, you need Nodes. Nodes in your cluster can be autoscaled - dynamically provisioned, or consolidated to provide needed capacity while optimizing cost. Autoscaling is performed by Node autoscalers.Node provisioningIf there are Pods in a cluster that can't be scheduled on existing Nodes, new Nodes can be automatically added to the cluster—provisioned—to accommodate the Pods. This is especially useful if the number of Pods changes over time, for example as a result of combining horizontal workload with Node autoscaling.Autoscalers provision the Nodes by creating and deleting cloud provider resources backing them. Most commonly, the resources backing the Nodes are Virtual Machines.The main goal of provisioning is to make all Pods schedulable. This goal is not always attainable because of various limitations, including reaching configured provisioning limits, provisioning configuration not being compatible with a particular set of pods, or the lack of cloud provider capacity. While provisioning, Node autoscalers often try to achieve additional goals (for example minimizing the cost of the provisioned Nodes or balancing the number of Nodes between failure domains).There are two main inputs to a Node autoscaler when determining Nodes to provision—Pod scheduling constraints, and Node constraints imposed by autoscaler configuration.Autoscaler configuration may also include other Node provisioning triggers (for example the number of Nodes falling below a configured minimum limit).Note:Provisioning was formerly known as scale-up in Cluster Autoscaler.Pod scheduling constraintsPods can express scheduling constraints to impose limitations on the kind of Nodes they can be scheduled on. Node autoscalers take these constraints into account to ensure that the pending Pods can be scheduled on the provisioned Nodes.The most common kind of scheduling constraints are the resource requests specified by Pod containers. Autoscalers will make sure that the provisioned Nodes have enough resources to satisfy the requests. However, they don't directly take into account the real resource usage of the Pods after they start running. In order to autoscale Nodes based on actual workload resource usage, you can combine horizontal workload autoscaling with Node autoscaling.Other common Pod scheduling constraints include Node affinity, inter-Pod affinity, or a requirement for a particular storage volume.Node constraints imposed by autoscaler configurationThe specifics of the provisioned Nodes (for example the amount of resources, the presence of a given label) depend on autoscaler configuration. Autoscalers can either choose them from a pre-defined set of Node configurations, or use auto-provisioning.Auto-provisioningNode auto-provisioning is a mode of provisioning in which a user doesn't have to fully configure the specific


Question: What are the benefits of Node Autoscaling?

Answer: Node AutoscalingAutomatically provision and consolidate the Nodes in your cluster to adapt to demand and optimize cost.In order to run workloads in your cluster, you need Nodes. Nodes in your cluster can be autoscaled - dynamically provisioned, or consolidated to provide needed capacity while optimizing cost. Autoscaling is performed by Node autoscalers.Node provisioningIf there are Pods in a cluster that can't be scheduled on existing Nodes, new Nodes can be automatically added to the cluster—provisioned—to accommodate the Pods. This is especially useful if the number of Pods changes over time, for example as a result of combining horizontal workload with Node autoscaling.Autoscalers provision the Nodes by creating and deleting cloud provider resources backing them. Most commonly, the resources backing the Nodes are Virtual Machines.The main goal of provisioning is to make all Pods schedulable. This goal is not always attainable because of various limitations, including reaching configured provisioning limits, provisioning configuration not being compatible with a particular set of pods, or the lack of cloud provider capacity. While provisioning, Node autoscalers often try to achieve additional goals (for example minimizing the cost of the provisioned Nodes or balancing the number of Nodes between failure domains).There are two main inputs to a Node autoscaler when determining Nodes to provision—Pod scheduling constraints, and Node constraints imposed by autoscaler configuration.Autoscaler configuration may also include other Node provisioning triggers (for example the number of Nodes falling below a configured minimum limit).Note:Provisioning was formerly known as scale-up in Cluster Autoscaler.Pod scheduling constraintsPods can express scheduling constraints to impose limitations on the kind of Nodes they can be scheduled on. Node autoscalers take these constraints into account to ensure that the pending Pods can be scheduled on the provisioned Nodes.The most common kind of scheduling constraints are the resource requests specified by Pod containers. Autoscalers will make sure that the provisioned Nodes have enough resources to satisfy the requests. However, they don't directly take into account the real resource usage of the Pods after they start running. In order to autoscale Nodes based on actual workload resource usage, you can combine horizontal workload autoscaling with Node autoscaling.Other common Pod scheduling constraints include Node affinity, inter-Pod affinity, or a requirement for a particular storage volume.Node constraints imposed by autoscaler configurationThe specifics of the provisioned Nodes (for example the amount of resources, the presence of a given label) depend on autoscaler configuration. Autoscalers can either choose them from a pre-defined set of Node configurations, or use auto-provisioning.Auto-provisioningNode auto-provisioning is a mode of provisioning in which a user doesn't have to fully configure the specific


Question: What is Node Autoscaling?

Answer: I n   o r d e r   t o   r u n   w o r k l o a d s   i n   y o u r   c l u s t e r ,   y o u   n e e d   N o d e s .   N o d e s   i n   y o u r   c l u s t e r   c a n   b e   a u t o s c a l e d   -   d y n a m i c a l l y   p r o v i s i o n e d ,   o r   c o n s o l i d a t e d   t o   p r o v i d e   n e e d e d   c a p a c i t y   w h i l e   o p t i m i z i n g   c o s t .   A u t o s c a l i n g   i s   p e r f o r m e d   b y   N o d e   a u t o s c a l e r s .


Question: What is Node provisioning?

Answer: I f   t h e r e   a r e   P o d s   i n   a   c l u s t e r   t h a t   c a n ' t   b e   s c h e d u l e d   o n   e x i s t i n g   N o d e s ,   n e w   N o d e s   c a n   b e   a u t o m a t i c a l l y   a d d e d   t o   t h e   c l u s t e r — p r o v i s i o n e d — t o   a c c o m m o d a t e   t h e   P o d s .   T h i s   i s   e s p e c i a l l y   u s e f u l   i f   t h e   n u m b e r   o f   P o d s   c h a n g e s   o v e r   t i m e ,   f o r   e x a m p l e   a s   a   r e s u l t   o f   c o m b i n i n g   h o r i z o n t a l   w o r k l o a d   w i t h   N o d e   a u t o s c a l i n g .   A u t o s c a l e r s   p r o v i s i o n   t h e   N o d e s   b y   c r e a t i n g   a n d   d e l e t i n g   c l o u d   p r o v i d e r   r e s o u r c e s   b a c k i n g   t h e m .   M o s t   c o m m o n l y ,   t h e   r e s o u r c e s   b a c k i n g   t h e   N o d e s   a r e   V i r t u a l   M a c h i n e s .   T h e   m a i n   g o a l   o f   p r o v i s i o n i n g   i s   t o   m a k e   a l l   P o d s   s c h e d u l a b l e .   T h i s   g o a l   i s   n o t   a l w a y s   a t t a i n a b l e   b e c a u s e   o f   v a r i o u s   l i m i t a t i o n s ,   i n c l u d i n g   r e a c h i n g   c o n f i g u r e d   p r o v i s i o n i n g   l i m i t s ,   p r o v i s i o n i n g   c o n f i g u r a t i o n   n o t   b e i n g   c o m p a t i b l e   w i t h   a   p a r t i c u l a r   s e t   o f   p o d s ,   o r   t h e   l a c k   o f   c l o u d   p r o v i d e r   c a p a c i t y .   W h i l e   p r o v i s i o n i n g ,   N o d e   a u t o s c a l e r s   o f t e n   t r y   t o   a c h i e v e   a d d i t i o n a l   g o a l s   ( f o r   e x a m p l e   m i n i m i z i n g   t h e   c o s t   o f   t h e   p r o v i s i o n e d   N o d e s   o r   b a l a n c i n g   t h e   n u m b e r   o f   N o d e s   b e t w e e n   f a i l u r e   d o m a i n s ) .   T h e r e   a r e   t w o   m a i n   i n p u t s   t o   a   N o


Question: What is Pod scheduling constraints?

Answer: P o d s   c a n   e x p r e s s   s c h e d u l i n g   c o n s t r a i n t s   t o   i m p o s e   l i m i t a t i o n s   o n   t h e   k i n d   o f   N o d e s   t h e y   c a n   b e   s c h e d u l e d   o n .   N o d e   a u t o s c a l e r s   t a k e   t h e s e   c o n s t r a i n t s   i n t o   a c c o u n t   t o   e n s u r e   t h a t   t h e   p e n d i n g   P o d s   c a n   b e   s c h e d u l e d   o n   t h e   p r o v i s i o n e d   N o d e s .   T h e   m o s t   c o m m o n   k i n d   o f   s c h e d u l i n g   c o n s t r a i n t s   a r e   t h e   r e s o u r c e   r e q u e s t s   s p e c i f i e d   b y   P o d   c o n t a i n e r s .   A u t o s c a l e r s   w i l l   m a k e   s u r e   t h a t   t h e   p r o v i s i o n e d   N o d e s   h a v e   e n o u g h   r e s o u r c e s   t o   s a t i s f y   t h e   r e q u e s t s .   H o w e v e r ,   t h e y   d o n ' t   d i r e c t l y   t a k e   i n t o   a c c o u n t   t h e   r e a l   r e s o u r c e   u s a g e   o f   t h e   P o d s   a f t e r   t h e y   s t a r t   r u n n i n g .   I n   o r d e r   t o   a u t o s c a l e   N o d e s   b a s e d   o n   a c t u a l   w o r k l o a d   r e s o u r c e   u s a g e ,   y o u   c a n   c o m b i n e   h o r i z o n t a l   w o r k l o a d   a u t o s c a l i n g   w i t h   N o d e   a u t o s c a l i n g .   O t h e r   c o m m o n   P o d   s c h e d u l i n g   c o n s t r a i n t s   i n c l u d e   N o d e   a f f i n i t y ,   i n t e r - P o d   a f f i n i t y ,   o r   a   r e q u i r e m e n t   f o r   a   p a r t i c u l a r   s t o r a g e   v o l u m e .


Question: What is Node constraints imposed by autoscaler configuration?

Answer: T h e   s p e c i f i c s   o f   t h e   p r o v i s i o n e d   N o d e s   ( f o r   e x a m p l e   t h e   a m o u n t   o f   r e s o u r c e s ,   t h e   p r e s e n c e   o f   a   g i v e n   l a b e l )   d e p e n d   o n   a u t o s c a l e r   c o n f i g u r a t i o n .   A u t o s c a l e r s   c a n   e i t h e r   c h o o s e   t h e m   f r o m   a   p r e - d e f i n e d   s e t   o f   N o d e   c o n f i g u r a t i o n s ,   o r   u s e   a u t o - p r o v i s i o n i n g .


Question: What is Auto-provisioning?

Answer: N o d e   a u t o - p r o v i s i o n i n g   i s   a   m o d e   o f   p r o v i s i o n i n g   i n   w h i c h   a   u s e r   d o e s n ' t   h a v e   t o   f u l l y   c o n f i g u r e   t h e   s p e c i f i c s   o f   t h e   N o d e s   t h a t   c a n   b e   p r o v i s i o n e d .   I n s t e a d ,   t h e   a u t o s c a l e r   d y n a m i c a l l y   c h o o s e s   t h e   N o d e   c o n f i g u r a t i o n   b a s e d   o n   t h e   p e n d i n g   P o d s   i t ' s   r e a c t i n g   t o ,   a s   w e l l   a s   p r e - c o n f i g u r e d   c o n s t r a i n t s   ( f o r   e x a m p l e ,   t h e   m i n i m u m   a m o u n t   o f   r e s o u r c e s   o r   t h e   n e e d   f o r   a   g i v e n   l a b e l ) .


Question: What is Node consolidation?

Answer: T h e   m a i n   c o n s i d e r a t i o n   w h e n   r u n n i n g   a   c l u s t e r   i s   e n s u r i n g   t h a t   a l l   s c h e d u l a b l e   p o d s   a r e   r u n n i n g ,   w h i l s t   k e e p i n g   t h e   c o s t   o f   t h e   c l u s t e r   a s   l o w   a s   p o s s i b l e .   T o   a c h i e v e   t h i s ,   t h e   P o d s '   r e s o u r c e   r e q u e s t s   s h o u l d   u t i l i z e   a s   m u c h   o f   t h e   N o d e s '   r e s o u r c e s   a s   p o s s i b l e .   F r o m   t h i s   p e r s p e c t i v e ,   t h e   o v e r a l l   N o d e   u t i l i z a t i o n   i n   a   c l u s t e r   c a n   b e   u s e d   a s   a   p r o x y   f o r   h o w   c o s t - e f f e c t i v e   t h e   c l u s t e r   i s .


Question: What is Note:?

Answer: N o d e s   i n   y o u r   c l u s t e r   c a n   b e   a u t o m a t i c a l l y   c o n s o l i d a t e d   i n   o r d e r   t o   i m p r o v e   t h e   o v e r a l l   N o d e   u t i l i z a t i o n ,   a n d   i n   t u r n   t h e   c o s t - e f f e c t i v e n e s s   o f   t h e   c l u s t e r .   C o n s o l i d a t i o n   h a p p e n s   t h r o u g h   r e m o v i n g   a   s e t   o f   u n d e r u t i l i z e d   N o d e s   f r o m   t h e   c l u s t e r .   O p t i o n a l l y ,   a   d i f f e r e n t   s e t   o f   N o d e s   c a n   b e   p r o v i s i o n e d   t o   r e p l a c e   t h e m .   C o n s o l i d a t i o n ,   l i k e   p r o v i s i o n i n g ,   o n l y   c o n s i d e r s   P o d   r e s o u r c e   r e q u e s t s   a n d   n o t   r e a l   r e s o u r c e   u s a g e   w h e n   m a k i n g   d e c i s i o n s .   F o r   t h e   p u r p o s e   o f   c o n s o l i d a t i o n ,   a   N o d e   i s   c o n s i d e r e d   e m p t y   i f   i t   o n l y   h a s   D a e m o n S e t   a n d   s t a t i c   P o d s   r u n n i n g   o n   i t .   R e m o v i n g   e m p t y   N o d e s   d u r i n g   c o n s o l i d a t i o n   i s   m o r e   s t r a i g h t f o r w a r d   t h a n   n o n - e m p t y   o n e s ,   a n d   a u t o s c a l e r s   o f t e n   h a v e   o p t i m i z a t i o n s   d e s i g n e d   s p e c i f i c a l l y   f o r   c o n s o l i d a t i n g   e m p t y   N o d e s .   R e m o v i n g   n o n - e m p t y   N o d e s   d u r i n g   c o n s o l i d a t i o n   i s   d i s r u p t i v e — t h e   P o d s   r u n n i n g   o n   t h e m   a r e   t e r m i n a t e d ,   a n d   p o s s i b l y   h a v e   t o   b e   r e c r e a t e d   ( f o r   e x a m p l e   b y   a   D e p l o y m e n t ) .   H o w e v e r ,   a l l   s u c h   r e c r e a t e d   P o d s   s h o u l d   b e   a b l e   t o   s c h e d u l e   o n   e x i s t i n g   N o d e s   i n   t h e   c l u s t e r ,   o r   t


Question: What is Note:?

Answer: A u t o s c a l e r   c o n f i g u r a t i o n   m a y   a l s o   e n a b l e   t r i g g e r i n g   c o n s o l i d a t i o n   b y   o t h e r   c o n d i t i o n s   ( f o r   e x a m p l e ,   t h e   t i m e   e l a p s e d   s i n c e   a   N o d e   w a s   c r e a t e d ) ,   i n   o r d e r   t o   o p t i m i z e   d i f f e r e n t   p r o p e r t i e s   ( f o r   e x a m p l e ,   t h e   m a x i m u m   l i f e s p a n   o f   N o d e s   i n   a   c l u s t e r ) .   T h e   d e t a i l s   o f   h o w   c o n s o l i d a t i o n   i s   p e r f o r m e d   d e p e n d   o n   t h e   c o n f i g u r a t i o n   o f   a   g i v e n   a u t o s c a l e r .


Question: What is Autoscalers?

Answer: T h e   f u n c t i o n a l i t i e s   d e s c r i b e d   i n   p r e v i o u s   s e c t i o n s   a r e   p r o v i d e d   b y   N o d e   a u t o s c a l e r s .   I n   a d d i t i o n   t o   t h e   K u b e r n e t e s   A P I ,   a u t o s c a l e r s   a l s o   n e e d   t o   i n t e r a c t   w i t h   c l o u d   p r o v i d e r   A P I s   t o   p r o v i s i o n   a n d   c o n s o l i d a t e   N o d e s .   T h i s   m e a n s   t h a t   t h e y   n e e d   t o   b e   e x p l i c i t l y   i n t e g r a t e d   w i t h   e a c h   s u p p o r t e d   c l o u d   p r o v i d e r .   T h e   p e r f o r m a n c e   a n d   f e a t u r e   s e t   o f   a   g i v e n   a u t o s c a l e r   c a n   d i f f e r   b e t w e e n   c l o u d   p r o v i d e r   i n t e g r a t i o n s .


Question: What is Autoscaler implementations?

Answer: C l u s t e r   A u t o s c a l e r   a n d   K a r p e n t e r   a r e   t h e   t w o   N o d e   a u t o s c a l e r s   c u r r e n t l y   s p o n s o r e d   b y   S I G   A u t o s c a l i n g .   F r o m   t h e   p e r s p e c t i v e   o f   a   c l u s t e r   u s e r ,   b o t h   a u t o s c a l e r s   s h o u l d   p r o v i d e   a   s i m i l a r   N o d e   a u t o s c a l i n g   e x p e r i e n c e .   B o t h   w i l l   p r o v i s i o n   n e w   N o d e s   f o r   u n s c h e d u l a b l e   P o d s ,   a n d   b o t h   w i l l   c o n s o l i d a t e   t h e   N o d e s   t h a t   a r e   n o   l o n g e r   o p t i m a l l y   u t i l i z e d .   D i f f e r e n t   a u t o s c a l e r s   m a y   a l s o   p r o v i d e   f e a t u r e s   o u t s i d e   t h e   N o d e   a u t o s c a l i n g   s c o p e   d e s c r i b e d   o n   t h i s   p a g e ,   a n d   t h o s e   a d d i t i o n a l   f e a t u r e s   m a y   d i f f e r   b e t w e e n   t h e m .   C o n s u l t   t h e   s e c t i o n s   b e l o w ,   a n d   t h e   l i n k e d   d o c u m e n t a t i o n   f o r   t h e   i n d i v i d u a l   a u t o s c a l e r s   t o   d e c i d e   w h i c h   a u t o s c a l e r   f i t s   y o u r   u s e   c a s e   b e t t e r .


Question: What is Cluster Autoscaler?

Answer: C l u s t e r   A u t o s c a l e r   a d d s   o r   r e m o v e s   N o d e s   t o   p r e - c o n f i g u r e d   N o d e   g r o u p s .   N o d e   g r o u p s   g e n e r a l l y   m a p   t o   s o m e   s o r t   o f   c l o u d   p r o v i d e r   r e s o u r c e   g r o u p   ( m o s t   c o m m o n l y   a   V i r t u a l   M a c h i n e   g r o u p ) .   A   s i n g l e   i n s t a n c e   o f   C l u s t e r   A u t o s c a l e r   c a n   s i m u l t a n e o u s l y   m a n a g e   m u l t i p l e   N o d e   g r o u p s .   W h e n   p r o v i s i o n i n g ,   C l u s t e r   A u t o s c a l e r   w i l l   a d d   N o d e s   t o   t h e   g r o u p   t h a t   b e s t   f i t s   t h e   r e q u e s t s   o f   p e n d i n g   P o d s .   W h e n   c o n s o l i d a t i n g ,   C l u s t e r   A u t o s c a l e r   a l w a y s   s e l e c t s   s p e c i f i c   N o d e s   t o   r e m o v e ,   a s   o p p o s e d   t o   j u s t   r e s i z i n g   t h e   u n d e r l y i n g   c l o u d   p r o v i d e r   r e s o u r c e   g r o u p .   A d d i t i o n a l   c o n t e x t :   D o c u m e n t a t i o n   o v e r v i e w C l o u d   p r o v i d e r   i n t e g r a t i o n s C l u s t e r   A u t o s c a l e r   F A Q C o n t a c t


Question: What is Karpenter?

Answer: K a r p e n t e r   a u t o - p r o v i s i o n s   N o d e s   b a s e d   o n   N o d e P o o l   c o n f i g u r a t i o n s   p r o v i d e d   b y   t h e   c l u s t e r   o p e r a t o r .   K a r p e n t e r   h a n d l e s   a l l   a s p e c t s   o f   n o d e   l i f e c y c l e ,   n o t   j u s t   a u t o s c a l i n g .   T h i s   i n c l u d e s   a u t o m a t i c a l l y   r e f r e s h i n g   N o d e s   o n c e   t h e y   r e a c h   a   c e r t a i n   l i f e t i m e ,   a n d   a u t o - u p g r a d i n g   N o d e s   w h e n   n e w   w o r k e r   N o d e   i m a g e s   a r e   r e l e a s e d .   I t   w o r k s   d i r e c t l y   w i t h   i n d i v i d u a l   c l o u d   p r o v i d e r   r e s o u r c e s   ( m o s t   c o m m o n l y   i n d i v i d u a l   V i r t u a l   M a c h i n e s ) ,   a n d   d o e s n ' t   r e l y   o n   c l o u d   p r o v i d e r   r e s o u r c e   g r o u p s .   A d d i t i o n a l   c o n t e x t :   D o c u m e n t a t i o n C l o u d   p r o v i d e r   i n t e g r a t i o n s K a r p e n t e r   F A Q C o n t a c t


Question: What is Implementation comparison?

Answer: M a i n   d i f f e r e n c e s   b e t w e e n   C l u s t e r   A u t o s c a l e r   a n d   K a r p e n t e r :   C l u s t e r   A u t o s c a l e r   p r o v i d e s   f e a t u r e s   r e l a t e d   t o   j u s t   N o d e   a u t o s c a l i n g .   K a r p e n t e r   h a s   a   w i d e r   s c o p e ,   a n d   a l s o   p r o v i d e s   f e a t u r e s   i n t e n d e d   f o r   m a n a g i n g   N o d e   l i f e c y c l e   a l t o g e t h e r   ( f o r   e x a m p l e ,   u t i l i z i n g   d i s r u p t i o n   t o   a u t o - r e c r e a t e   N o d e s   o n c e   t h e y   r e a c h   a   c e r t a i n   l i f e t i m e ,   o r   a u t o - u p g r a d e   t h e m   t o   n e w   v e r s i o n s ) . C l u s t e r   A u t o s c a l e r   d o e s n ' t   s u p p o r t   a u t o - p r o v i s i o n i n g ,   t h e   N o d e   g r o u p s   i t   c a n   p r o v i s i o n   f r o m   h a v e   t o   b e   p r e - c o n f i g u r e d .   K a r p e n t e r   s u p p o r t s   a u t o - p r o v i s i o n i n g ,   s o   t h e   u s e r   o n l y   h a s   t o   c o n f i g u r e   a   s e t   o f   c o n s t r a i n t s   f o r   t h e   p r o v i s i o n e d   N o d e s ,   i n s t e a d   o f   f u l l y   c o n f i g u r i n g   h o m o g e n o u s   g r o u p s . C l u s t e r   A u t o s c a l e r   p r o v i d e s   c l o u d   p r o v i d e r   i n t e g r a t i o n s   d i r e c t l y ,   w h i c h   m e a n s   t h a t   t h e y ' r e   a   p a r t   o f   t h e   K u b e r n e t e s   p r o j e c t .   F o r   K a r p e n t e r ,   t h e   K u b e r n e t e s   p r o j e c t   p u b l i s h e s   K a r p e n t e r   a s   a   l i b r a r y   t h a t   c l o u d   p r o v i d e r s   c a n   i n t e g r a t e   w i t h   t o   b u i l d   a   N o d e   a u t o s c a l e r . C l u s t e r   A u t o s c a l e r   p r o v i d e s   i n t e g r a t i o n s   w i t h   n u m e r o u s   c l o u d   p r o v i d e r s ,   i n c l u d i n g   s m a


Question: What is Horizontal workload autoscaling?

Answer: N o d e   a u t o s c a l i n g   u s u a l l y   w o r k s   i n   r e s p o n s e   t o   P o d s — i t   p r o v i s i o n s   n e w   N o d e s   t o   a c c o m m o d a t e   u n s c h e d u l a b l e   P o d s ,   a n d   t h e n   c o n s o l i d a t e s   t h e   N o d e s   o n c e   t h e y ' r e   n o   l o n g e r   n e e d e d .   H o r i z o n t a l   w o r k l o a d   a u t o s c a l i n g   a u t o m a t i c a l l y   s c a l e s   t h e   n u m b e r   o f   w o r k l o a d   r e p l i c a s   t o   m a i n t a i n   a   d e s i r e d   a v e r a g e   r e s o u r c e   u t i l i z a t i o n   a c r o s s   t h e   r e p l i c a s .   I n   o t h e r   w o r d s ,   i t   a u t o m a t i c a l l y   c r e a t e s   n e w   P o d s   i n   r e s p o n s e   t o   a p p l i c a t i o n   l o a d ,   a n d   t h e n   r e m o v e s   t h e   P o d s   o n c e   t h e   l o a d   d e c r e a s e s .   Y o u   c a n   u s e   N o d e   a u t o s c a l i n g   t o g e t h e r   w i t h   h o r i z o n t a l   w o r k l o a d   a u t o s c a l i n g   t o   a u t o s c a l e   t h e   N o d e s   i n   y o u r   c l u s t e r   b a s e d   o n   t h e   a v e r a g e   r e a l   r e s o u r c e   u t i l i z a t i o n   o f   y o u r   P o d s .   I f   t h e   a p p l i c a t i o n   l o a d   i n c r e a s e s ,   t h e   a v e r a g e   u t i l i z a t i o n   o f   i t s   P o d s   s h o u l d   a l s o   i n c r e a s e ,   p r o m p t i n g   w o r k l o a d   a u t o s c a l i n g   t o   c r e a t e   n e w   P o d s .   N o d e   a u t o s c a l i n g   s h o u l d   t h e n   p r o v i s i o n   n e w   N o d e s   t o   a c c o m m o d a t e   t h e   n e w   P o d s .   O n c e   t h e   a p p l i c a t i o n   l o a d   d e c r e a s e s ,   w o r k l o a d   a u t o s c a l i n g   s h o u l d   r e m o v e   u n n e c e s s a r y   P o d s .   N o d e   a u t o s c a l i n g   s h o u l d ,   i n   t u r n ,   c o n s o l i d a t e   t h e


Question: What is Vertical workload autoscaling?

Answer: W h e n   u s i n g   N o d e   a u t o s c a l i n g ,   i t ' s   i m p o r t a n t   t o   s e t   P o d   r e s o u r c e   r e q u e s t s   c o r r e c t l y .   I f   t h e   r e q u e s t s   o f   a   g i v e n   P o d   a r e   t o o   l o w ,   p r o v i s i o n i n g   a   n e w   N o d e   f o r   i t   m i g h t   n o t   h e l p   t h e   P o d   a c t u a l l y   r u n .   I f   t h e   r e q u e s t s   o f   a   g i v e n   P o d   a r e   t o o   h i g h ,   i t   m i g h t   i n c o r r e c t l y   p r e v e n t   c o n s o l i d a t i n g   i t s   N o d e .   V e r t i c a l   w o r k l o a d   a u t o s c a l i n g   a u t o m a t i c a l l y   a d j u s t s   t h e   r e s o u r c e   r e q u e s t s   o f   y o u r   P o d s   b a s e d   o n   t h e i r   h i s t o r i c a l   r e s o u r c e   u s a g e .   Y o u   c a n   u s e   N o d e   a u t o s c a l i n g   t o g e t h e r   w i t h   v e r t i c a l   w o r k l o a d   a u t o s c a l i n g   i n   o r d e r   t o   a d j u s t   t h e   r e s o u r c e   r e q u e s t s   o f   y o u r   P o d s   w h i l e   p r e s e r v i n g   N o d e   a u t o s c a l i n g   c a p a b i l i t i e s   i n   y o u r   c l u s t e r .


Question: What is Related components?

Answer: T h i s   s e c t i o n   d e s c r i b e s   c o m p o n e n t s   p r o v i d i n g   f u n c t i o n a l i t y   r e l a t e d   t o   N o d e   a u t o s c a l i n g .


Question: What is Descheduler?

Answer: T h e   d e s c h e d u l e r   i s   a   c o m p o n e n t   p r o v i d i n g   N o d e   c o n s o l i d a t i o n   f u n c t i o n a l i t y   b a s e d   o n   c u s t o m   p o l i c i e s ,   a s   w e l l   a s   o t h e r   f e a t u r e s   r e l a t e d   t o   o p t i m i z i n g   N o d e s   a n d   P o d s   ( f o r   e x a m p l e   d e l e t i n g   f r e q u e n t l y   r e s t a r t i n g   P o d s ) .


Question: What is Workload autoscalers based on cluster size?

Answer: C l u s t e r   P r o p o r t i o n a l   A u t o s c a l e r   a n d   C l u s t e r   P r o p o r t i o n a l   V e r t i c a l   A u t o s c a l e r   p r o v i d e   h o r i z o n t a l ,   a n d   v e r t i c a l   w o r k l o a d   a u t o s c a l i n g   b a s e d   o n   t h e   n u m b e r   o f   N o d e s   i n   t h e   c l u s t e r .   Y o u   c a n   r e a d   m o r e   i n   a u t o s c a l i n g   b a s e d   o n   c l u s t e r   s i z e .


Question: What is What's next?

Answer: R e a d   a b o u t   w o r k l o a d - l e v e l   a u t o s c a l i n g


Question: What is Viewing Pods and Nodes?

Answer: Viewing Pods and NodesObjectivesLearn about Kubernetes Pods.Learn about Kubernetes Nodes.Troubleshoot deployed applications.Kubernetes PodsA Pod is a group of one or more application containers (such as Docker) and includes shared storage (volumes), IP address and information about how to run them.When you created a Deployment in Module 2, Kubernetes created a Pod to host your application instance. A Pod is a Kubernetes abstraction that represents a group of one or more application containers (such as Docker), and some shared resources for those containers. Those resources include:Shared storage, as VolumesNetworking, as a unique cluster IP addressInformation about how to run each container, such as the container image version or specific ports to useA Pod models an application-specific "logical host" and can contain different application containers which are relatively tightly coupled. For example, a Pod might include both the container with your Node.js app as well as a different container that feeds the data to be published by the Node.js webserver. The containers in a Pod share an IP Address and port space, are always co-located and co-scheduled, and run in a shared context on the same Node.Pods are the atomic unit on the Kubernetes platform. When we create a Deployment on Kubernetes, that Deployment creates Pods with containers inside them (as opposed to creating containers directly). Each Pod is tied to the Node where it is scheduled, and remains there until termination (according to restart policy) or deletion. In case of a Node failure, identical Pods are scheduled on other available Nodes in the cluster.Pods overviewContainers should only be scheduled together in a single Pod if they are tightly coupled and need to share resources such as disk.NodesA Pod always runs on a Node. A Node is a worker machine in Kubernetes and may be either a virtual or a physical machine, depending on the cluster. Each Node is managed by the control plane. A Node can have multiple pods, and the Kubernetes control plane automatically handles scheduling the pods across the Nodes in the cluster. The control plane's automatic scheduling takes into account the available resources on each Node.Every Kubernetes Node runs at least:Kubelet, a process responsible for communication between the Kubernetes control plane and the Node; it manages the Pods and the containers running on a machine.A container runtime (like Docker) responsible for pulling the container image from a registry, unpacking the container, and running the application.Nodes overviewTroubleshooting with kubectlIn Module 2, you used the kubectl command-line interface. You'll continue to use it in Module 3 to get information about deployed applications and their environments. The most common operations can be done with the following kubectl subcommands:kubectl get - list resourceskubectl describe - show detailed information about a resourcekubectl logs - print the logs from a container in a podkubectl exe


Question: How does Viewing Pods and Nodes work?

Answer: Viewing Pods and NodesObjectivesLearn about Kubernetes Pods.Learn about Kubernetes Nodes.Troubleshoot deployed applications.Kubernetes PodsA Pod is a group of one or more application containers (such as Docker) and includes shared storage (volumes), IP address and information about how to run them.When you created a Deployment in Module 2, Kubernetes created a Pod to host your application instance. A Pod is a Kubernetes abstraction that represents a group of one or more application containers (such as Docker), and some shared resources for those containers. Those resources include:Shared storage, as VolumesNetworking, as a unique cluster IP addressInformation about how to run each container, such as the container image version or specific ports to useA Pod models an application-specific "logical host" and can contain different application containers which are relatively tightly coupled. For example, a Pod might include both the container with your Node.js app as well as a different container that feeds the data to be published by the Node.js webserver. The containers in a Pod share an IP Address and port space, are always co-located and co-scheduled, and run in a shared context on the same Node.Pods are the atomic unit on the Kubernetes platform. When we create a Deployment on Kubernetes, that Deployment creates Pods with containers inside them (as opposed to creating containers directly). Each Pod is tied to the Node where it is scheduled, and remains there until termination (according to restart policy) or deletion. In case of a Node failure, identical Pods are scheduled on other available Nodes in the cluster.Pods overviewContainers should only be scheduled together in a single Pod if they are tightly coupled and need to share resources such as disk.NodesA Pod always runs on a Node. A Node is a worker machine in Kubernetes and may be either a virtual or a physical machine, depending on the cluster. Each Node is managed by the control plane. A Node can have multiple pods, and the Kubernetes control plane automatically handles scheduling the pods across the Nodes in the cluster. The control plane's automatic scheduling takes into account the available resources on each Node.Every Kubernetes Node runs at least:Kubelet, a process responsible for communication between the Kubernetes control plane and the Node; it manages the Pods and the containers running on a machine.A container runtime (like Docker) responsible for pulling the container image from a registry, unpacking the container, and running the application.Nodes overviewTroubleshooting with kubectlIn Module 2, you used the kubectl command-line interface. You'll continue to use it in Module 3 to get information about deployed applications and their environments. The most common operations can be done with the following kubectl subcommands:kubectl get - list resourceskubectl describe - show detailed information about a resourcekubectl logs - print the logs from a container in a podkubectl exe


Question: When would you use Viewing Pods and Nodes?

Answer: Viewing Pods and NodesObjectivesLearn about Kubernetes Pods.Learn about Kubernetes Nodes.Troubleshoot deployed applications.Kubernetes PodsA Pod is a group of one or more application containers (such as Docker) and includes shared storage (volumes), IP address and information about how to run them.When you created a Deployment in Module 2, Kubernetes created a Pod to host your application instance. A Pod is a Kubernetes abstraction that represents a group of one or more application containers (such as Docker), and some shared resources for those containers. Those resources include:Shared storage, as VolumesNetworking, as a unique cluster IP addressInformation about how to run each container, such as the container image version or specific ports to useA Pod models an application-specific "logical host" and can contain different application containers which are relatively tightly coupled. For example, a Pod might include both the container with your Node.js app as well as a different container that feeds the data to be published by the Node.js webserver. The containers in a Pod share an IP Address and port space, are always co-located and co-scheduled, and run in a shared context on the same Node.Pods are the atomic unit on the Kubernetes platform. When we create a Deployment on Kubernetes, that Deployment creates Pods with containers inside them (as opposed to creating containers directly). Each Pod is tied to the Node where it is scheduled, and remains there until termination (according to restart policy) or deletion. In case of a Node failure, identical Pods are scheduled on other available Nodes in the cluster.Pods overviewContainers should only be scheduled together in a single Pod if they are tightly coupled and need to share resources such as disk.NodesA Pod always runs on a Node. A Node is a worker machine in Kubernetes and may be either a virtual or a physical machine, depending on the cluster. Each Node is managed by the control plane. A Node can have multiple pods, and the Kubernetes control plane automatically handles scheduling the pods across the Nodes in the cluster. The control plane's automatic scheduling takes into account the available resources on each Node.Every Kubernetes Node runs at least:Kubelet, a process responsible for communication between the Kubernetes control plane and the Node; it manages the Pods and the containers running on a machine.A container runtime (like Docker) responsible for pulling the container image from a registry, unpacking the container, and running the application.Nodes overviewTroubleshooting with kubectlIn Module 2, you used the kubectl command-line interface. You'll continue to use it in Module 3 to get information about deployed applications and their environments. The most common operations can be done with the following kubectl subcommands:kubectl get - list resourceskubectl describe - show detailed information about a resourcekubectl logs - print the logs from a container in a podkubectl exe


Question: What are the benefits of Viewing Pods and Nodes?

Answer: Viewing Pods and NodesObjectivesLearn about Kubernetes Pods.Learn about Kubernetes Nodes.Troubleshoot deployed applications.Kubernetes PodsA Pod is a group of one or more application containers (such as Docker) and includes shared storage (volumes), IP address and information about how to run them.When you created a Deployment in Module 2, Kubernetes created a Pod to host your application instance. A Pod is a Kubernetes abstraction that represents a group of one or more application containers (such as Docker), and some shared resources for those containers. Those resources include:Shared storage, as VolumesNetworking, as a unique cluster IP addressInformation about how to run each container, such as the container image version or specific ports to useA Pod models an application-specific "logical host" and can contain different application containers which are relatively tightly coupled. For example, a Pod might include both the container with your Node.js app as well as a different container that feeds the data to be published by the Node.js webserver. The containers in a Pod share an IP Address and port space, are always co-located and co-scheduled, and run in a shared context on the same Node.Pods are the atomic unit on the Kubernetes platform. When we create a Deployment on Kubernetes, that Deployment creates Pods with containers inside them (as opposed to creating containers directly). Each Pod is tied to the Node where it is scheduled, and remains there until termination (according to restart policy) or deletion. In case of a Node failure, identical Pods are scheduled on other available Nodes in the cluster.Pods overviewContainers should only be scheduled together in a single Pod if they are tightly coupled and need to share resources such as disk.NodesA Pod always runs on a Node. A Node is a worker machine in Kubernetes and may be either a virtual or a physical machine, depending on the cluster. Each Node is managed by the control plane. A Node can have multiple pods, and the Kubernetes control plane automatically handles scheduling the pods across the Nodes in the cluster. The control plane's automatic scheduling takes into account the available resources on each Node.Every Kubernetes Node runs at least:Kubelet, a process responsible for communication between the Kubernetes control plane and the Node; it manages the Pods and the containers running on a machine.A container runtime (like Docker) responsible for pulling the container image from a registry, unpacking the container, and running the application.Nodes overviewTroubleshooting with kubectlIn Module 2, you used the kubectl command-line interface. You'll continue to use it in Module 3 to get information about deployed applications and their environments. The most common operations can be done with the following kubectl subcommands:kubectl get - list resourceskubectl describe - show detailed information about a resourcekubectl logs - print the logs from a container in a podkubectl exe


Question: What is Objectives?

Answer: L e a r n   a b o u t   K u b e r n e t e s   P o d s . L e a r n   a b o u t   K u b e r n e t e s   N o d e s . T r o u b l e s h o o t   d e p l o y e d   a p p l i c a t i o n s .


Question: What is Kubernetes Pods?

Answer: W h e n   y o u   c r e a t e d   a   D e p l o y m e n t   i n   M o d u l e   2 ,   K u b e r n e t e s   c r e a t e d   a   P o d   t o   h o s t   y o u r   a p p l i c a t i o n   i n s t a n c e .   A   P o d   i s   a   K u b e r n e t e s   a b s t r a c t i o n   t h a t   r e p r e s e n t s   a   g r o u p   o f   o n e   o r   m o r e   a p p l i c a t i o n   c o n t a i n e r s   ( s u c h   a s   D o c k e r ) ,   a n d   s o m e   s h a r e d   r e s o u r c e s   f o r   t h o s e   c o n t a i n e r s .   T h o s e   r e s o u r c e s   i n c l u d e :   S h a r e d   s t o r a g e ,   a s   V o l u m e s N e t w o r k i n g ,   a s   a   u n i q u e   c l u s t e r   I P   a d d r e s s I n f o r m a t i o n   a b o u t   h o w   t o   r u n   e a c h   c o n t a i n e r ,   s u c h   a s   t h e   c o n t a i n e r   i m a g e   v e r s i o n   o r   s p e c i f i c   p o r t s   t o   u s e   A   P o d   m o d e l s   a n   a p p l i c a t i o n - s p e c i f i c   " l o g i c a l   h o s t "   a n d   c a n   c o n t a i n   d i f f e r e n t   a p p l i c a t i o n   c o n t a i n e r s   w h i c h   a r e   r e l a t i v e l y   t i g h t l y   c o u p l e d .   F o r   e x a m p l e ,   a   P o d   m i g h t   i n c l u d e   b o t h   t h e   c o n t a i n e r   w i t h   y o u r   N o d e . j s   a p p   a s   w e l l   a s   a   d i f f e r e n t   c o n t a i n e r   t h a t   f e e d s   t h e   d a t a   t o   b e   p u b l i s h e d   b y   t h e   N o d e . j s   w e b s e r v e r .   T h e   c o n t a i n e r s   i n   a   P o d   s h a r e   a n   I P   A d d r e s s   a n d   p o r t   s p a c e ,   a r e   a l w a y s   c o - l o c a t e d   a n d   c o - s c h e d u l e d ,   a n d   r u n   i n   a   s h a r e d   c o n t e x t   o n   t h e   s a m e   N o d e .   P o d s   a r e   t h e   a t o m i c   u n i t   o n   t h e   K u b e r n e t e s   p l a t f o r m .   W h e n   w e   c r e a t e   a   D e p l o y m e n t   o


Question: What is Nodes?

Answer: A   P o d   a l w a y s   r u n s   o n   a   N o d e .   A   N o d e   i s   a   w o r k e r   m a c h i n e   i n   K u b e r n e t e s   a n d   m a y   b e   e i t h e r   a   v i r t u a l   o r   a   p h y s i c a l   m a c h i n e ,   d e p e n d i n g   o n   t h e   c l u s t e r .   E a c h   N o d e   i s   m a n a g e d   b y   t h e   c o n t r o l   p l a n e .   A   N o d e   c a n   h a v e   m u l t i p l e   p o d s ,   a n d   t h e   K u b e r n e t e s   c o n t r o l   p l a n e   a u t o m a t i c a l l y   h a n d l e s   s c h e d u l i n g   t h e   p o d s   a c r o s s   t h e   N o d e s   i n   t h e   c l u s t e r .   T h e   c o n t r o l   p l a n e ' s   a u t o m a t i c   s c h e d u l i n g   t a k e s   i n t o   a c c o u n t   t h e   a v a i l a b l e   r e s o u r c e s   o n   e a c h   N o d e .   E v e r y   K u b e r n e t e s   N o d e   r u n s   a t   l e a s t :   K u b e l e t ,   a   p r o c e s s   r e s p o n s i b l e   f o r   c o m m u n i c a t i o n   b e t w e e n   t h e   K u b e r n e t e s   c o n t r o l   p l a n e   a n d   t h e   N o d e ;   i t   m a n a g e s   t h e   P o d s   a n d   t h e   c o n t a i n e r s   r u n n i n g   o n   a   m a c h i n e . A   c o n t a i n e r   r u n t i m e   ( l i k e   D o c k e r )   r e s p o n s i b l e   f o r   p u l l i n g   t h e   c o n t a i n e r   i m a g e   f r o m   a   r e g i s t r y ,   u n p a c k i n g   t h e   c o n t a i n e r ,   a n d   r u n n i n g   t h e   a p p l i c a t i o n .   K u b e l e t ,   a   p r o c e s s   r e s p o n s i b l e   f o r   c o m m u n i c a t i o n   b e t w e e n   t h e   K u b e r n e t e s   c o n t r o l   p l a n e   a n d   t h e   N o d e ;   i t   m a n a g e s   t h e   P o d s   a n d   t h e   c o n t a i n e r s   r u n n i n g   o n   a   m a c h i n e .   A   c o n t a i n e r   r u n t i m e   ( l i k e   D o c k e r )   r e s p o n s i b l e   f o r   p u l l i n g   t h e   c o n t