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 .   A s s i g n   y o u r   o w n   C l u s t e r I P   o r   s e t   t o   ' N o n e '   f o r   a   ' h e a d l e s s '   s e r v i c e   ( n o   l o a d b a l a n c i n g ) .   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 .   h e l p   f o r   c l u s t e r i p   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 ) .   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   t o   p e r f o r m   k u b e c t l   a p p l y   o n   t h i s   o b j e c t   i n   t h e   f u t u r e .   I f   t r u e ,   k e e p   t h e   m a n a g e d F i e l d s   w h e n   p r i n t i n g   o b j e c t s   i n   J S O N   o r   Y A M L   f o r m a t .   P o r t   p a i r s   c a n   b e   s p e c i f i e d   a s   ' < p o r t > : < t a r g e t P o r t > ' .   T e m p l a t e   s t r


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   s e r v i c e   -   C r e a t e   a   s e r v i c e   u s i n g   a   s p e c i f i e d   s u b c o m m a n d   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 Using kubectl to Create a Deployment?

Answer: Using kubectl to Create a DeploymentObjectivesLearn about application Deployments.Deploy your first app on Kubernetes with kubectl.Kubernetes DeploymentsA Deployment is responsible for creating and updating instances of your application.Note:This tutorial uses a container that requires the AMD64 architecture. If you are using minikube on a computer with a different CPU architecture, you could try using minikube with a driver that can emulate AMD64. For example, the Docker Desktop driver can do this.Once you have a running Kubernetes cluster, you can deploy your containerized applications on top of it. To do so, you create a Kubernetes Deployment. The Deployment instructs Kubernetes how to create and update instances of your application. Once you've created a Deployment, the Kubernetes control plane schedules the application instances included in that Deployment to run on individual Nodes in the cluster.Once the application instances are created, a Kubernetes Deployment controller continuously monitors those instances. If the Node hosting an instance goes down or is deleted, the Deployment controller replaces the instance with an instance on another Node in the cluster. This provides a self-healing mechanism to address machine failure or maintenance.In a pre-orchestration world, installation scripts would often be used to start applications, but they did not allow recovery from machine failure. By both creating your application instances and keeping them running across Nodes, Kubernetes Deployments provide a fundamentally different approach to application management.Deploying your first app on KubernetesApplications need to be packaged into one of the supported container formats in order to be deployed on Kubernetes.You can create and manage a Deployment by using the Kubernetes command line interface, kubectl. kubectl uses the Kubernetes API to interact with the cluster. In this module, you'll learn the most common kubectl commands needed to create Deployments that run your applications on a Kubernetes cluster.When you create a Deployment, you'll need to specify the container image for your application and the number of replicas that you want to run. You can change that information later by updating your Deployment; Module 5 and Module 6 of the bootcamp discuss how you can scale and update your Deployments.For your first Deployment, you'll use a hello-node application packaged in a Docker container that uses NGINX to echo back all the requests. (If you didn't already try creating a hello-node application and deploying it using a container, you can do that first by following the instructions from the Hello Minikube tutorial.)You will need to have installed kubectl as well. If you need to install it, visit install tools.Now that you know what Deployments are, let's deploy our first app!kubectl basicsThe common format of a kubectl command is: kubectl action resource.This performs the specified action (like create, describe or delete) on the specified


Question: How does Using kubectl to Create a Deployment work?

Answer: Using kubectl to Create a DeploymentObjectivesLearn about application Deployments.Deploy your first app on Kubernetes with kubectl.Kubernetes DeploymentsA Deployment is responsible for creating and updating instances of your application.Note:This tutorial uses a container that requires the AMD64 architecture. If you are using minikube on a computer with a different CPU architecture, you could try using minikube with a driver that can emulate AMD64. For example, the Docker Desktop driver can do this.Once you have a running Kubernetes cluster, you can deploy your containerized applications on top of it. To do so, you create a Kubernetes Deployment. The Deployment instructs Kubernetes how to create and update instances of your application. Once you've created a Deployment, the Kubernetes control plane schedules the application instances included in that Deployment to run on individual Nodes in the cluster.Once the application instances are created, a Kubernetes Deployment controller continuously monitors those instances. If the Node hosting an instance goes down or is deleted, the Deployment controller replaces the instance with an instance on another Node in the cluster. This provides a self-healing mechanism to address machine failure or maintenance.In a pre-orchestration world, installation scripts would often be used to start applications, but they did not allow recovery from machine failure. By both creating your application instances and keeping them running across Nodes, Kubernetes Deployments provide a fundamentally different approach to application management.Deploying your first app on KubernetesApplications need to be packaged into one of the supported container formats in order to be deployed on Kubernetes.You can create and manage a Deployment by using the Kubernetes command line interface, kubectl. kubectl uses the Kubernetes API to interact with the cluster. In this module, you'll learn the most common kubectl commands needed to create Deployments that run your applications on a Kubernetes cluster.When you create a Deployment, you'll need to specify the container image for your application and the number of replicas that you want to run. You can change that information later by updating your Deployment; Module 5 and Module 6 of the bootcamp discuss how you can scale and update your Deployments.For your first Deployment, you'll use a hello-node application packaged in a Docker container that uses NGINX to echo back all the requests. (If you didn't already try creating a hello-node application and deploying it using a container, you can do that first by following the instructions from the Hello Minikube tutorial.)You will need to have installed kubectl as well. If you need to install it, visit install tools.Now that you know what Deployments are, let's deploy our first app!kubectl basicsThe common format of a kubectl command is: kubectl action resource.This performs the specified action (like create, describe or delete) on the specified


Question: When would you use Using kubectl to Create a Deployment?

Answer: Using kubectl to Create a DeploymentObjectivesLearn about application Deployments.Deploy your first app on Kubernetes with kubectl.Kubernetes DeploymentsA Deployment is responsible for creating and updating instances of your application.Note:This tutorial uses a container that requires the AMD64 architecture. If you are using minikube on a computer with a different CPU architecture, you could try using minikube with a driver that can emulate AMD64. For example, the Docker Desktop driver can do this.Once you have a running Kubernetes cluster, you can deploy your containerized applications on top of it. To do so, you create a Kubernetes Deployment. The Deployment instructs Kubernetes how to create and update instances of your application. Once you've created a Deployment, the Kubernetes control plane schedules the application instances included in that Deployment to run on individual Nodes in the cluster.Once the application instances are created, a Kubernetes Deployment controller continuously monitors those instances. If the Node hosting an instance goes down or is deleted, the Deployment controller replaces the instance with an instance on another Node in the cluster. This provides a self-healing mechanism to address machine failure or maintenance.In a pre-orchestration world, installation scripts would often be used to start applications, but they did not allow recovery from machine failure. By both creating your application instances and keeping them running across Nodes, Kubernetes Deployments provide a fundamentally different approach to application management.Deploying your first app on KubernetesApplications need to be packaged into one of the supported container formats in order to be deployed on Kubernetes.You can create and manage a Deployment by using the Kubernetes command line interface, kubectl. kubectl uses the Kubernetes API to interact with the cluster. In this module, you'll learn the most common kubectl commands needed to create Deployments that run your applications on a Kubernetes cluster.When you create a Deployment, you'll need to specify the container image for your application and the number of replicas that you want to run. You can change that information later by updating your Deployment; Module 5 and Module 6 of the bootcamp discuss how you can scale and update your Deployments.For your first Deployment, you'll use a hello-node application packaged in a Docker container that uses NGINX to echo back all the requests. (If you didn't already try creating a hello-node application and deploying it using a container, you can do that first by following the instructions from the Hello Minikube tutorial.)You will need to have installed kubectl as well. If you need to install it, visit install tools.Now that you know what Deployments are, let's deploy our first app!kubectl basicsThe common format of a kubectl command is: kubectl action resource.This performs the specified action (like create, describe or delete) on the specified


Question: What are the benefits of Using kubectl to Create a Deployment?

Answer: Using kubectl to Create a DeploymentObjectivesLearn about application Deployments.Deploy your first app on Kubernetes with kubectl.Kubernetes DeploymentsA Deployment is responsible for creating and updating instances of your application.Note:This tutorial uses a container that requires the AMD64 architecture. If you are using minikube on a computer with a different CPU architecture, you could try using minikube with a driver that can emulate AMD64. For example, the Docker Desktop driver can do this.Once you have a running Kubernetes cluster, you can deploy your containerized applications on top of it. To do so, you create a Kubernetes Deployment. The Deployment instructs Kubernetes how to create and update instances of your application. Once you've created a Deployment, the Kubernetes control plane schedules the application instances included in that Deployment to run on individual Nodes in the cluster.Once the application instances are created, a Kubernetes Deployment controller continuously monitors those instances. If the Node hosting an instance goes down or is deleted, the Deployment controller replaces the instance with an instance on another Node in the cluster. This provides a self-healing mechanism to address machine failure or maintenance.In a pre-orchestration world, installation scripts would often be used to start applications, but they did not allow recovery from machine failure. By both creating your application instances and keeping them running across Nodes, Kubernetes Deployments provide a fundamentally different approach to application management.Deploying your first app on KubernetesApplications need to be packaged into one of the supported container formats in order to be deployed on Kubernetes.You can create and manage a Deployment by using the Kubernetes command line interface, kubectl. kubectl uses the Kubernetes API to interact with the cluster. In this module, you'll learn the most common kubectl commands needed to create Deployments that run your applications on a Kubernetes cluster.When you create a Deployment, you'll need to specify the container image for your application and the number of replicas that you want to run. You can change that information later by updating your Deployment; Module 5 and Module 6 of the bootcamp discuss how you can scale and update your Deployments.For your first Deployment, you'll use a hello-node application packaged in a Docker container that uses NGINX to echo back all the requests. (If you didn't already try creating a hello-node application and deploying it using a container, you can do that first by following the instructions from the Hello Minikube tutorial.)You will need to have installed kubectl as well. If you need to install it, visit install tools.Now that you know what Deployments are, let's deploy our first app!kubectl basicsThe common format of a kubectl command is: kubectl action resource.This performs the specified action (like create, describe or delete) on the specified


Question: What is Objectives?

Answer: L e a r n   a b o u t   a p p l i c a t i o n   D e p l o y m e n t s . D e p l o y   y o u r   f i r s t   a p p   o n   K u b e r n e t e s   w i t h   k u b e c t l .


Question: What is Note:?

Answer: O n c e   y o u   h a v e   a   r u n n i n g   K u b e r n e t e s   c l u s t e r ,   y o u   c a n   d e p l o y   y o u r   c o n t a i n e r i z e d   a p p l i c a t i o n s   o n   t o p   o f   i t .   T o   d o   s o ,   y o u   c r e a t e   a   K u b e r n e t e s   D e p l o y m e n t .   T h e   D e p l o y m e n t   i n s t r u c t s   K u b e r n e t e s   h o w   t o   c r e a t e   a n d   u p d a t e   i n s t a n c e s   o f   y o u r   a p p l i c a t i o n .   O n c e   y o u ' v e   c r e a t e d   a   D e p l o y m e n t ,   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   s c h e d u l e s   t h e   a p p l i c a t i o n   i n s t a n c e s   i n c l u d e d   i n   t h a t   D e p l o y m e n t   t o   r u n   o n   i n d i v i d u a l   N o d e s   i n   t h e   c l u s t e r .   O n c e   t h e   a p p l i c a t i o n   i n s t a n c e s   a r e   c r e a t e d ,   a   K u b e r n e t e s   D e p l o y m e n t   c o n t r o l l e r   c o n t i n u o u s l y   m o n i t o r s   t h o s e   i n s t a n c e s .   I f   t h e   N o d e   h o s t i n g   a n   i n s t a n c e   g o e s   d o w n   o r   i s   d e l e t e d ,   t h e   D e p l o y m e n t   c o n t r o l l e r   r e p l a c e s   t h e   i n s t a n c e   w i t h   a n   i n s t a n c e   o n   a n o t h e r   N o d e   i n   t h e   c l u s t e r .   T h i s   p r o v i d e s   a   s e l f - h e a l i n g   m e c h a n i s m   t o   a d d r e s s   m a c h i n e   f a i l u r e   o r   m a i n t e n a n c e .   I n   a   p r e - o r c h e s t r a t i o n   w o r l d ,   i n s t a l l a t i o n   s c r i p t s   w o u l d   o f t e n   b e   u s e d   t o   s t a r t   a p p l i c a t i o n s ,   b u t   t h e y   d i d   n o t   a l l o w   r e c o v e r y   f r o m   m a c h i n e   f a i l u r e .   B y   b o t h   c r e a t i n g   y o u r   a p p l i c a t i o n   i n s t a n c e s   a n d   k e e p i n g   t h e m   r u n n i n g   a c r o s s   N o d e s ,   K u


Question: What is Deploying your first app on Kubernetes?

Answer: Y o u   c a n   c r e a t e   a n d   m a n a g e   a   D e p l o y m e n t   b y   u s i n g   t h e   K u b e r n e t e s   c o m m a n d   l i n e   i n t e r f a c e ,   k u b e c t l .   k u b e c t l   u s e s   t h e   K u b e r n e t e s   A P I   t o   i n t e r a c t   w i t h   t h e   c l u s t e r .   I n   t h i s   m o d u l e ,   y o u ' l l   l e a r n   t h e   m o s t   c o m m o n   k u b e c t l   c o m m a n d s   n e e d e d   t o   c r e a t e   D e p l o y m e n t s   t h a t   r u n   y o u r   a p p l i c a t i o n s   o n   a   K u b e r n e t e s   c l u s t e r .   W h e n   y o u   c r e a t e   a   D e p l o y m e n t ,   y o u ' l l   n e e d   t o   s p e c i f y   t h e   c o n t a i n e r   i m a g e   f o r   y o u r   a p p l i c a t i o n   a n d   t h e   n u m b e r   o f   r e p l i c a s   t h a t   y o u   w a n t   t o   r u n .   Y o u   c a n   c h a n g e   t h a t   i n f o r m a t i o n   l a t e r   b y   u p d a t i n g   y o u r   D e p l o y m e n t ;   M o d u l e   5   a n d   M o d u l e   6   o f   t h e   b o o t c a m p   d i s c u s s   h o w   y o u   c a n   s c a l e   a n d   u p d a t e   y o u r   D e p l o y m e n t s .   F o r   y o u r   f i r s t   D e p l o y m e n t ,   y o u ' l l   u s e   a   h e l l o - n o d e   a p p l i c a t i o n   p a c k a g e d   i n   a   D o c k e r   c o n t a i n e r   t h a t   u s e s   N G I N X   t o   e c h o   b a c k   a l l   t h e   r e q u e s t s .   ( I f   y o u   d i d n ' t   a l r e a d y   t r y   c r e a t i n g   a   h e l l o - n o d e   a p p l i c a t i o n   a n d   d e p l o y i n g   i t   u s i n g   a   c o n t a i n e r ,   y o u   c a n   d o   t h a t   f i r s t   b y   f o l l o w i n g   t h e   i n s t r u c t i o n s   f r o m   t h e   H e l l o   M i n i k u b e   t u t o r i a l . )   Y o u   w i l l   n e e d   t o   h a v e   i n s t a l l e d   k u b e c t l   a s   w e l l .   I f   y o u   n e e d   t o   i n s t a l l


Question: What is kubectl basics?

Answer: T h e   c o m m o n   f o r m a t   o f   a   k u b e c t l   c o m m a n d   i s :   k u b e c t l   a c t i o n   r e s o u r c e .   T h i s   p e r f o r m s   t h e   s p e c i f i e d   a c t i o n   ( l i k e   c r e a t e ,   d e s c r i b e   o r   d e l e t e )   o n   t h e   s p e c i f i e d   r e s o u r c e   ( l i k e   n o d e   o r   d e p l o y m e n t .   Y o u   c a n   u s e   - - h e l p   a f t e r   t h e   s u b c o m m a n d   t o   g e t   a d d i t i o n a l   i n f o   a b o u t   p o s s i b l e   p a r a m e t e r s   ( f o r   e x a m p l e :   k u b e c t l   g e t   n o d e s   - - h e l p ) .   C h e c k   t h a t   k u b e c t l   i s   c o n f i g u r e d   t o   t a l k   t o   y o u r   c l u s t e r ,   b y   r u n n i n g   t h e   k u b e c t l   v e r s i o n   c o m m a n d .   C h e c k   t h a t   k u b e c t l   i s   i n s t a l l e d   a n d   t h a t   y o u   c a n   s e e   b o t h   t h e   c l i e n t   a n d   t h e   s e r v e r   v e r s i o n s .   T o   v i e w   t h e   n o d e s   i n   t h e   c l u s t e r ,   r u n   t h e   k u b e c t l   g e t   n o d e s   c o m m a n d .   Y o u   s e e   t h e   a v a i l a b l e   n o d e s .   L a t e r ,   K u b e r n e t e s   w i l l   c h o o s e   w h e r e   t o   d e p l o y   o u r   a p p l i c a t i o n   b a s e d   o n   N o d e   a v a i l a b l e   r e s o u r c e s .


Question: What is Deploy an app?

Answer: L e t ’ s   d e p l o y   o u r   f i r s t   a p p   o n   K u b e r n e t e s   w i t h   t h e   k u b e c t l   c r e a t e   d e p l o y m e n t   c o m m a n d .   W e   n e e d   t o   p r o v i d e   t h e   d e p l o y m e n t   n a m e   a n d   a p p   i m a g e   l o c a t i o n   ( i n c l u d e   t h e   f u l l   r e p o s i t o r y   u r l   f o r   i m a g e s   h o s t e d   o u t s i d e   D o c k e r   H u b ) .   k u b e c t l   c r e a t e   d e p l o y m e n t   k u b e r n e t e s - b o o t c a m p   - - i m a g e = g c r . i o / g o o g l e - s a m p l e s / k u b e r n e t e s - b o o t c a m p : v 1   G r e a t !   Y o u   j u s t   d e p l o y e d   y o u r   f i r s t   a p p l i c a t i o n   b y   c r e a t i n g   a   d e p l o y m e n t .   T h i s   p e r f o r m e d   a   f e w   t h i n g s   f o r   y o u :   s e a r c h e d   f o r   a   s u i t a b l e   n o d e   w h e r e   a n   i n s t a n c e   o f   t h e   a p p l i c a t i o n   c o u l d   b e   r u n   ( w e   h a v e   o n l y   1   a v a i l a b l e   n o d e ) s c h e d u l e d   t h e   a p p l i c a t i o n   t o   r u n   o n   t h a t   N o d e c o n f i g u r e d   t h e   c l u s t e r   t o   r e s c h e d u l e   t h e   i n s t a n c e   o n   a   n e w   N o d e   w h e n   n e e d e d   T o   l i s t   y o u r   d e p l o y m e n t s   u s e   t h e   k u b e c t l   g e t   d e p l o y m e n t s   c o m m a n d :   k u b e c t l   g e t   d e p l o y m e n t s   W e   s e e   t h a t   t h e r e   i s   1   d e p l o y m e n t   r u n n i n g   a   s i n g l e   i n s t a n c e   o f   y o u r   a p p .   T h e   i n s t a n c e   i s   r u n n i n g   i n s i d e   a   c o n t a i n e r   o n   y o u r   n o d e .


Question: What is View the app?

Answer: P o d s   t h a t   a r e   r u n n i n g   i n s i d e   K u b e r n e t e s   a r e   r u n n i n g   o n   a   p r i v a t e ,   i s o l a t e d   n e t w o r k .   B y   d e f a u l t   t h e y   a r e   v i s i b l e   f r o m   o t h e r   p o d s   a n d   s e r v i c e s   w i t h i n   t h e   s a m e   K u b e r n e t e s   c l u s t e r ,   b u t   n o t   o u t s i d e   t h a t   n e t w o r k .   W h e n   w e   u s e   k u b e c t l ,   w e ' r e   i n t e r a c t i n g   t h r o u g h   a n   A P I   e n d p o i n t   t o   c o m m u n i c a t e   w i t h   o u r   a p p l i c a t i o n .   W e   w i l l   c o v e r   o t h e r   o p t i o n s   o n   h o w   t o   e x p o s e   y o u r   a p p l i c a t i o n   o u t s i d e   t h e   K u b e r n e t e s   c l u s t e r   l a t e r ,   i n   M o d u l e   4 .   A l s o   a s   a   b a s i c   t u t o r i a l ,   w e ' r e   n o t   e x p l a i n i n g   w h a t   P o d s   a r e   i n   a n y   d e t a i l   h e r e ,   i t   w i l l   b e   c o v e r e d   i n   l a t e r   t o p i c s .   T h e   k u b e c t l   p r o x y   c o m m a n d   c a n   c r e a t e   a   p r o x y   t h a t   w i l l   f o r w a r d   c o m m u n i c a t i o n s   i n t o   t h e   c l u s t e r - w i d e ,   p r i v a t e   n e t w o r k .   T h e   p r o x y   c a n   b e   t e r m i n a t e d   b y   p r e s s i n g   c o n t r o l - C   a n d   w o n ' t   s h o w   a n y   o u t p u t   w h i l e   i t ' s   r u n n i n g .   Y o u   n e e d   t o   o p e n   a   s e c o n d   t e r m i n a l   w i n d o w   t o   r u n   t h e   p r o x y .   k u b e c t l   p r o x y   W e   n o w   h a v e   a   c o n n e c t i o n   b e t w e e n   o u r   h o s t   ( t h e   t e r m i n a l )   a n d   t h e   K u b e r n e t e s   c l u s t e r .   T h e   p r o x y   e n a b l e s   d i r e c t   a c c e s s   t o   t h e   A P I   f r o m   t h e s e   t e r m i n a l s .   Y o u   c a n   s e e   a l l   t h o s e   A P I


Question: What is Note:?

Answer: T h e   A P I   s e r v e r   w i l l   a u t o m a t i c a l l y   c r e a t e   a n   e n d p o i n t   f o r   e a c h   p o d ,   b a s e d   o n   t h e   p o d   n a m e ,   t h a t   i s   a l s o   a c c e s s i b l e   t h r o u g h   t h e   p r o x y .   F i r s t   w e   n e e d   t o   g e t   t h e   P o d   n a m e ,   a n d   w e ' l l   s t o r e   i t   i n   t h e   e n v i r o n m e n t   v a r i a b l e   P O D _ N A M E .   e x p o r t   P O D _ N A M E = $ ( k u b e c t l   g e t   p o d s   - o   g o - t e m p l a t e   - - t e m p l a t e   ' { { r a n g e   . i t e m s } } { { . m e t a d a t a . n a m e } } { { " \ n " } } { { e n d } } ' )   e c h o   N a m e   o f   t h e   P o d :   $ P O D _ N A M E   Y o u   c a n   a c c e s s   t h e   P o d   t h r o u g h   t h e   p r o x i e d   A P I ,   b y   r u n n i n g :   c u r l   h t t p : / / l o c a l h o s t : 8 0 0 1 / a p i / v 1 / n a m e s p a c e s / d e f a u l t / p o d s / $ P O D _ N A M E : 8 0 8 0 / p r o x y /   I n   o r d e r   f o r   t h e   n e w   D e p l o y m e n t   t o   b e   a c c e s s i b l e   w i t h o u t   u s i n g   t h e   p r o x y ,   a   S e r v i c e   i s   r e q u i r e d   w h i c h   w i l l   b e   e x p l a i n e d   i n   M o d u l e   4 .


Question: What is What's next?

Answer: T u t o r i a l   V i e w i n g   P o d s   a n d   N o d e s . L e a r n   m o r e   a b o u t   D e p l o y m e n t s .


Question: What is kubectl uncordon?

Answer: kubectl uncordonSynopsisMark node as schedulable.kubectl uncordon NODE Examples # Mark node "foo" as schedulable kubectl uncordon foo Options--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.-h, --helphelp for uncordon-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.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 to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.--match-server-versionRequire server version to match client version-n, --namespace stringIf present, the namespace scope for this CLI request--password stringPassword for basic authentication to the API server--profile string Default: "none"Name of profile to capture. One of (none|cpu|heap|goroutine|threadcreate|block|mutex)--profile-output string Default: "profile.pprof"Name of the file to write the profile to--request-timeout string Default: "0"The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't timeout requests.-s, --server stringThe address and port of the Kubernetes API server--storage-driver-buffer-duration duration Default: 1m0sWrites in the storage driver will be buffered for this duration, and committed to the non memory backends as a single transaction--storage-driver-db string Default: "cadvisor"database name--storage-driver-host string Default: "localhost:8086"database host:port--storage-driver-password string Default: "root"database password--storage-driver-secureuse secure connection with database--storage-driver-table string Default: "stats"table nam


Question: How does kubectl uncordon work?

Answer: kubectl uncordonSynopsisMark node as schedulable.kubectl uncordon NODE Examples # Mark node "foo" as schedulable kubectl uncordon foo Options--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.-h, --helphelp for uncordon-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.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 to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.--match-server-versionRequire server version to match client version-n, --namespace stringIf present, the namespace scope for this CLI request--password stringPassword for basic authentication to the API server--profile string Default: "none"Name of profile to capture. One of (none|cpu|heap|goroutine|threadcreate|block|mutex)--profile-output string Default: "profile.pprof"Name of the file to write the profile to--request-timeout string Default: "0"The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't timeout requests.-s, --server stringThe address and port of the Kubernetes API server--storage-driver-buffer-duration duration Default: 1m0sWrites in the storage driver will be buffered for this duration, and committed to the non memory backends as a single transaction--storage-driver-db string Default: "cadvisor"database name--storage-driver-host string Default: "localhost:8086"database host:port--storage-driver-password string Default: "root"database password--storage-driver-secureuse secure connection with database--storage-driver-table string Default: "stats"table nam


Question: When would you use kubectl uncordon?

Answer: kubectl uncordonSynopsisMark node as schedulable.kubectl uncordon NODE Examples # Mark node "foo" as schedulable kubectl uncordon foo Options--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.-h, --helphelp for uncordon-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.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 to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.--match-server-versionRequire server version to match client version-n, --namespace stringIf present, the namespace scope for this CLI request--password stringPassword for basic authentication to the API server--profile string Default: "none"Name of profile to capture. One of (none|cpu|heap|goroutine|threadcreate|block|mutex)--profile-output string Default: "profile.pprof"Name of the file to write the profile to--request-timeout string Default: "0"The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't timeout requests.-s, --server stringThe address and port of the Kubernetes API server--storage-driver-buffer-duration duration Default: 1m0sWrites in the storage driver will be buffered for this duration, and committed to the non memory backends as a single transaction--storage-driver-db string Default: "cadvisor"database name--storage-driver-host string Default: "localhost:8086"database host:port--storage-driver-password string Default: "root"database password--storage-driver-secureuse secure connection with database--storage-driver-table string Default: "stats"table nam


Question: What are the benefits of kubectl uncordon?

Answer: kubectl uncordonSynopsisMark node as schedulable.kubectl uncordon NODE Examples # Mark node "foo" as schedulable kubectl uncordon foo Options--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.-h, --helphelp for uncordon-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.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 to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.--match-server-versionRequire server version to match client version-n, --namespace stringIf present, the namespace scope for this CLI request--password stringPassword for basic authentication to the API server--profile string Default: "none"Name of profile to capture. One of (none|cpu|heap|goroutine|threadcreate|block|mutex)--profile-output string Default: "profile.pprof"Name of the file to write the profile to--request-timeout string Default: "0"The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't timeout requests.-s, --server stringThe address and port of the Kubernetes API server--storage-driver-buffer-duration duration Default: 1m0sWrites in the storage driver will be buffered for this duration, and committed to the non memory backends as a single transaction--storage-driver-db string Default: "cadvisor"database name--storage-driver-host string Default: "localhost:8086"database host:port--storage-driver-password string Default: "root"database password--storage-driver-secureuse secure connection with database--storage-driver-table string Default: "stats"table nam


Question: What is Synopsis?

Answer: M a r k   n o d e   a s   s c h e d u l a b l e .   k u b e c t l   u n c o r d o n   N O D E


Question: What is Examples?

Answer: #   M a r k   n o d e   " f o o "   a s   s c h e d u l a b l e   k u b e c t l   u n c o r d o n   f o o


Question: What is Options?

Answer: 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 .   h e l p   f o r   u n c o r d o n   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 o n s t r a i n t s .


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   -   k u b e c t l   c o n t r o l s   t h e   K u b e r n e t e s   c l u s t e r   m a n a g e r   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 Kubernetes Metrics Reference?

Answer: Kubernetes Metrics ReferenceDetails of the metric data that Kubernetes components export.Metrics (v1.34)This page details the metrics that different Kubernetes components export. You can query the metrics endpoint for these components using an HTTP scrape, and fetch the current metrics data in Prometheus format.List of Stable Kubernetes MetricsStable metrics observe strict API contracts and no labels can be added or removed from stable metrics during their lifetime.apiserver_admission_controller_admission_duration_secondsAdmission controller latency histogram in seconds, identified by name and broken out for each operation and API resource and type (validate or admit).Stability Level:STABLEType: HistogramLabels:nameoperationrejectedtypeapiserver_admission_step_admission_duration_secondsAdmission sub-step latency histogram in seconds, broken out for each operation and API resource and step type (validate or admit).Stability Level:STABLEType: HistogramLabels:operationrejectedtypeapiserver_admission_webhook_admission_duration_secondsAdmission webhook latency histogram in seconds, identified by name and broken out for each operation and API resource and type (validate or admit).Stability Level:STABLEType: HistogramLabels:nameoperationrejectedtypeapiserver_current_inflight_requestsMaximal number of currently used inflight request limit of this apiserver per request kind in last second.Stability Level:STABLEType: GaugeLabels:request_kindapiserver_longrunning_requestsGauge of all active long-running apiserver requests broken out by verb, group, version, resource, scope and component. Not all requests are tracked this way.Stability Level:STABLEType: GaugeLabels:componentgroupresourcescopesubresourceverbversionapiserver_request_duration_secondsResponse latency distribution in seconds for each verb, dry run value, group, version, resource, subresource, scope and component.Stability Level:STABLEType: HistogramLabels:componentdry_rungroupresourcescopesubresourceverbversionapiserver_request_totalCounter of apiserver requests broken out for each verb, dry run value, group, version, resource, scope, component, and HTTP response code.Stability Level:STABLEType: CounterLabels:codecomponentdry_rungroupresourcescopesubresourceverbversionapiserver_requested_deprecated_apisGauge of deprecated APIs that have been requested, broken out by API group, version, resource, subresource, and removed_release.Stability Level:STABLEType: GaugeLabels:groupremoved_releaseresourcesubresourceversionapiserver_response_sizesResponse size distribution in bytes for each group, version, verb, resource, subresource, scope and component.Stability Level:STABLEType: HistogramLabels:componentgroupresourcescopesubresourceverbversionapiserver_storage_objects[DEPRECATED, consider using apiserver_resource_objects instead] Number of stored objects at the time of last check split by kind. In case of a fetching error, the value will be -1.Stability Level:STABLEType: GaugeLabels:resourceDeprecated Ve


Question: How does Kubernetes Metrics Reference work?

Answer: Kubernetes Metrics ReferenceDetails of the metric data that Kubernetes components export.Metrics (v1.34)This page details the metrics that different Kubernetes components export. You can query the metrics endpoint for these components using an HTTP scrape, and fetch the current metrics data in Prometheus format.List of Stable Kubernetes MetricsStable metrics observe strict API contracts and no labels can be added or removed from stable metrics during their lifetime.apiserver_admission_controller_admission_duration_secondsAdmission controller latency histogram in seconds, identified by name and broken out for each operation and API resource and type (validate or admit).Stability Level:STABLEType: HistogramLabels:nameoperationrejectedtypeapiserver_admission_step_admission_duration_secondsAdmission sub-step latency histogram in seconds, broken out for each operation and API resource and step type (validate or admit).Stability Level:STABLEType: HistogramLabels:operationrejectedtypeapiserver_admission_webhook_admission_duration_secondsAdmission webhook latency histogram in seconds, identified by name and broken out for each operation and API resource and type (validate or admit).Stability Level:STABLEType: HistogramLabels:nameoperationrejectedtypeapiserver_current_inflight_requestsMaximal number of currently used inflight request limit of this apiserver per request kind in last second.Stability Level:STABLEType: GaugeLabels:request_kindapiserver_longrunning_requestsGauge of all active long-running apiserver requests broken out by verb, group, version, resource, scope and component. Not all requests are tracked this way.Stability Level:STABLEType: GaugeLabels:componentgroupresourcescopesubresourceverbversionapiserver_request_duration_secondsResponse latency distribution in seconds for each verb, dry run value, group, version, resource, subresource, scope and component.Stability Level:STABLEType: HistogramLabels:componentdry_rungroupresourcescopesubresourceverbversionapiserver_request_totalCounter of apiserver requests broken out for each verb, dry run value, group, version, resource, scope, component, and HTTP response code.Stability Level:STABLEType: CounterLabels:codecomponentdry_rungroupresourcescopesubresourceverbversionapiserver_requested_deprecated_apisGauge of deprecated APIs that have been requested, broken out by API group, version, resource, subresource, and removed_release.Stability Level:STABLEType: GaugeLabels:groupremoved_releaseresourcesubresourceversionapiserver_response_sizesResponse size distribution in bytes for each group, version, verb, resource, subresource, scope and component.Stability Level:STABLEType: HistogramLabels:componentgroupresourcescopesubresourceverbversionapiserver_storage_objects[DEPRECATED, consider using apiserver_resource_objects instead] Number of stored objects at the time of last check split by kind. In case of a fetching error, the value will be -1.Stability Level:STABLEType: GaugeLabels:resourceDeprecated Ve


Question: When would you use Kubernetes Metrics Reference?

Answer: Kubernetes Metrics ReferenceDetails of the metric data that Kubernetes components export.Metrics (v1.34)This page details the metrics that different Kubernetes components export. You can query the metrics endpoint for these components using an HTTP scrape, and fetch the current metrics data in Prometheus format.List of Stable Kubernetes MetricsStable metrics observe strict API contracts and no labels can be added or removed from stable metrics during their lifetime.apiserver_admission_controller_admission_duration_secondsAdmission controller latency histogram in seconds, identified by name and broken out for each operation and API resource and type (validate or admit).Stability Level:STABLEType: HistogramLabels:nameoperationrejectedtypeapiserver_admission_step_admission_duration_secondsAdmission sub-step latency histogram in seconds, broken out for each operation and API resource and step type (validate or admit).Stability Level:STABLEType: HistogramLabels:operationrejectedtypeapiserver_admission_webhook_admission_duration_secondsAdmission webhook latency histogram in seconds, identified by name and broken out for each operation and API resource and type (validate or admit).Stability Level:STABLEType: HistogramLabels:nameoperationrejectedtypeapiserver_current_inflight_requestsMaximal number of currently used inflight request limit of this apiserver per request kind in last second.Stability Level:STABLEType: GaugeLabels:request_kindapiserver_longrunning_requestsGauge of all active long-running apiserver requests broken out by verb, group, version, resource, scope and component. Not all requests are tracked this way.Stability Level:STABLEType: GaugeLabels:componentgroupresourcescopesubresourceverbversionapiserver_request_duration_secondsResponse latency distribution in seconds for each verb, dry run value, group, version, resource, subresource, scope and component.Stability Level:STABLEType: HistogramLabels:componentdry_rungroupresourcescopesubresourceverbversionapiserver_request_totalCounter of apiserver requests broken out for each verb, dry run value, group, version, resource, scope, component, and HTTP response code.Stability Level:STABLEType: CounterLabels:codecomponentdry_rungroupresourcescopesubresourceverbversionapiserver_requested_deprecated_apisGauge of deprecated APIs that have been requested, broken out by API group, version, resource, subresource, and removed_release.Stability Level:STABLEType: GaugeLabels:groupremoved_releaseresourcesubresourceversionapiserver_response_sizesResponse size distribution in bytes for each group, version, verb, resource, subresource, scope and component.Stability Level:STABLEType: HistogramLabels:componentgroupresourcescopesubresourceverbversionapiserver_storage_objects[DEPRECATED, consider using apiserver_resource_objects instead] Number of stored objects at the time of last check split by kind. In case of a fetching error, the value will be -1.Stability Level:STABLEType: GaugeLabels:resourceDeprecated Ve


Question: What are the benefits of Kubernetes Metrics Reference?

Answer: Kubernetes Metrics ReferenceDetails of the metric data that Kubernetes components export.Metrics (v1.34)This page details the metrics that different Kubernetes components export. You can query the metrics endpoint for these components using an HTTP scrape, and fetch the current metrics data in Prometheus format.List of Stable Kubernetes MetricsStable metrics observe strict API contracts and no labels can be added or removed from stable metrics during their lifetime.apiserver_admission_controller_admission_duration_secondsAdmission controller latency histogram in seconds, identified by name and broken out for each operation and API resource and type (validate or admit).Stability Level:STABLEType: HistogramLabels:nameoperationrejectedtypeapiserver_admission_step_admission_duration_secondsAdmission sub-step latency histogram in seconds, broken out for each operation and API resource and step type (validate or admit).Stability Level:STABLEType: HistogramLabels:operationrejectedtypeapiserver_admission_webhook_admission_duration_secondsAdmission webhook latency histogram in seconds, identified by name and broken out for each operation and API resource and type (validate or admit).Stability Level:STABLEType: HistogramLabels:nameoperationrejectedtypeapiserver_current_inflight_requestsMaximal number of currently used inflight request limit of this apiserver per request kind in last second.Stability Level:STABLEType: GaugeLabels:request_kindapiserver_longrunning_requestsGauge of all active long-running apiserver requests broken out by verb, group, version, resource, scope and component. Not all requests are tracked this way.Stability Level:STABLEType: GaugeLabels:componentgroupresourcescopesubresourceverbversionapiserver_request_duration_secondsResponse latency distribution in seconds for each verb, dry run value, group, version, resource, subresource, scope and component.Stability Level:STABLEType: HistogramLabels:componentdry_rungroupresourcescopesubresourceverbversionapiserver_request_totalCounter of apiserver requests broken out for each verb, dry run value, group, version, resource, scope, component, and HTTP response code.Stability Level:STABLEType: CounterLabels:codecomponentdry_rungroupresourcescopesubresourceverbversionapiserver_requested_deprecated_apisGauge of deprecated APIs that have been requested, broken out by API group, version, resource, subresource, and removed_release.Stability Level:STABLEType: GaugeLabels:groupremoved_releaseresourcesubresourceversionapiserver_response_sizesResponse size distribution in bytes for each group, version, verb, resource, subresource, scope and component.Stability Level:STABLEType: HistogramLabels:componentgroupresourcescopesubresourceverbversionapiserver_storage_objects[DEPRECATED, consider using apiserver_resource_objects instead] Number of stored objects at the time of last check split by kind. In case of a fetching error, the value will be -1.Stability Level:STABLEType: GaugeLabels:resourceDeprecated Ve


Question: What is Metrics (v1.34)?

Answer: T h i s   p a g e   d e t a i l s   t h e   m e t r i c s   t h a t   d i f f e r e n t   K u b e r n e t e s   c o m p o n e n t s   e x p o r t .   Y o u   c a n   q u e r y   t h e   m e t r i c s   e n d p o i n t   f o r   t h e s e   c o m p o n e n t s   u s i n g   a n   H T T P   s c r a p e ,   a n d   f e t c h   t h e   c u r r e n t   m e t r i c s   d a t a   i n   P r o m e t h e u s   f o r m a t .


Question: What is List of Stable Kubernetes Metrics?

Answer: S t a b l e   m e t r i c s   o b s e r v e   s t r i c t   A P I   c o n t r a c t s   a n d   n o   l a b e l s   c a n   b e   a d d e d   o r   r e m o v e d   f r o m   s t a b l e   m e t r i c s   d u r i n g   t h e i r   l i f e t i m e .   S t a b i l i t y   L e v e l : S T A B L E T y p e :   H i s t o g r a m L a b e l s : n a m e o p e r a t i o n r e j e c t e d t y p e   S t a b i l i t y   L e v e l : S T A B L E T y p e :   H i s t o g r a m L a b e l s : o p e r a t i o n r e j e c t e d t y p e   S t a b i l i t y   L e v e l : S T A B L E T y p e :   H i s t o g r a m L a b e l s : n a m e o p e r a t i o n r e j e c t e d t y p e   S t a b i l i t y   L e v e l : S T A B L E T y p e :   G a u g e L a b e l s : r e q u e s t _ k i n d   S t a b i l i t y   L e v e l : S T A B L E T y p e :   G a u g e L a b e l s : c o m p o n e n t g r o u p r e s o u r c e s c o p e s u b r e s o u r c e v e r b v e r s i o n   S t a b i l i t y   L e v e l : S T A B L E T y p e :   H i s t o g r a m L a b e l s : c o m p o n e n t d r y _ r u n g r o u p r e s o u r c e s c o p e s u b r e s o u r c e v e r b v e r s i o n   S t a b i l i t y   L e v e l : S T A B L E T y p e :   C o u n t e r L a b e l s : c o d e c o m p o n e n t d r y _ r u n g r o u p r e s o u r c e s c o p e s u b r e s o u r c e v e r b v e r s i o n   S t a b i l i t y   L e v e l : S T A B L E T y p e :   G a u g e L a b e l s : g r o u p r e m o v e d _ r e l e a s e r e s o u r c e s u b r e s o u r c e v e r s i o n   S t a b i l i t y   L e v e l : S T A B L E T y p e :   H i s t o g r a m L a b e l s : c o m p o n e n t g r o u p r e s o u r c e s c o p e s u b r e s o u r c e v e r b v e r s i o n   S t a b i l i t y   L e v e l : S T A B L E T y p e :   G a u g e L a b e l s : r e s o u r c e D e p r e c a t e d   V e r s i o n s : 1 . 3 4 . 0   S t a b i l i t y   L e v e l : S T A B L E T y p e :   C u s t o m L a b e l s : s t o r a g e _ c l u s t e r _ i d   S t a b i l


Question: What is List of Beta Kubernetes Metrics?

Answer: B e t a   m e t r i c s   o b s e r v e   a   l o o s e r   A P I   c o n t r a c t   t h a n   i t s   s t a b l e   c o u n t e r p a r t s .   N o   l a b e l s   c a n   b e   r e m o v e d   f r o m   b e t a   m e t r i c s   d u r i n g   t h e i r   l i f e t i m e ,   h o w e v e r ,   l a b e l s   c a n   b e   a d d e d   w h i l e   t h e   m e t r i c   i s   i n   t h e   b e t a   s t a g e .   T h i s   o f f e r s   t h e   a s s u r a n c e   t h a t   b e t a   m e t r i c s   w i l l   h o n o r   e x i s t i n g   d a s h b o a r d s   a n d   a l e r t s ,   w h i l e   a l l o w i n g   f o r   a m e n d m e n t s   i n   t h e   f u t u r e .   S t a b i l i t y   L e v e l : B E T A T y p e :   G a u g e L a b e l s : a p i s e r v e r _ i d _ h a s h s t a t u s   S t a b i l i t y   L e v e l : B E T A T y p e :   C o u n t e r L a b e l s : a p i s e r v e r _ i d _ h a s h s t a t u s   S t a b i l i t y   L e v e l : B E T A T y p e :   G a u g e L a b e l s : a p i s e r v e r _ i d _ h a s h s t a t u s   S t a b i l i t y   L e v e l : B E T A T y p e :   C o u n t e r L a b e l s : a p i s e r v e r _ i d _ h a s h s t a t u s   S t a b i l i t y   L e v e l : B E T A T y p e :   H i s t o g r a m   S t a b i l i t y   L e v e l : B E T A T y p e :   H i s t o g r a m   S t a b i l i t y   L e v e l : B E T A T y p e :   G a u g e L a b e l s : f l o w _ s c h e m a p r i o r i t y _ l e v e l   S t a b i l i t y   L e v e l : B E T A T y p e :   G a u g e L a b e l s : f l o w _ s c h e m a p r i o r i t y _ l e v e l   S t a b i l i t y   L e v e l : B E T A T y p e :   G a u g e L a b e l s : f l o w _ s c h e m a p r i o r i t y _ l e v e l   S t a b i l i t y   L e v e l : B E T A T y p e :   C o u n t e r L a b e l s : f l o w _ s c h e m a p r i o r i t y _ l e v e l   S t a b i l i t y   L e v e l : B E T A T y p e :   G a u g e L a b e l s : p r i o r i t y _ l e v e l   S t a b i l i t y   L e v e l : B E T A T y p e :


Question: What is List of Alpha Kubernetes Metrics?

Answer: A l p h a   m e t r i c s   d o   n o t   h a v e   a n y   A P I   g u a r a n t e e s .   T h e s e   m e t r i c s   m u s t   b e   u s e d   a t   y o u r   o w n   r i s k ,   s u b s e q u e n t   v e r s i o n s   o f   K u b e r n e t e s   m a y   r e m o v e   t h e s e   m e t r i c s   a l t o g e t h e r ,   o r   m u t a t e   t h e   A P I   i n   s u c h   a   w a y   t h a t   b r e a k s   e x i s t i n g   d a s h b o a r d s   a n d   a l e r t s .   S t a b i l i t y   L e v e l : A L P H A T y p e :   C o u n t e r   S t a b i l i t y   L e v e l : A L P H A T y p e :   C o u n t e r L a b e l s : a p i s e r v i c e r e a s o n   S t a b i l i t y   L e v e l : A L P H A T y p e :   G a u g e L a b e l s : r e a s o n   S t a b i l i t y   L e v e l : A L P H A T y p e :   C u s t o m L a b e l s : n a m e   S t a b i l i t y   L e v e l : A L P H A T y p e :   C o u n t e r L a b e l s : n a m e r e a s o n   S t a b i l i t y   L e v e l : A L P H A T y p e :   H i s t o g r a m   S t a b i l i t y   L e v e l : A L P H A T y p e :   C o u n t e r L a b e l s : c r d r e a s o n   S t a b i l i t y   L e v e l : A L P H A T y p e :   C o u n t e r L a b e l s : c r d g r o u p r e a s o n v e r s i o n   S t a b i l i t y   L e v e l : A L P H A T y p e :   C o u n t e r L a b e l s : k i n d n a m e o p e r a t i o n t y p e   S t a b i l i t y   L e v e l : A L P H A T y p e :   H i s t o g r a m L a b e l s : k i n d n a m e o p e r a t i o n t y p e   S t a b i l i t y   L e v e l : A L P H A T y p e :   C o u n t e r L a b e l s : k i n d n a m e o p e r a t i o n t y p e   S t a b i l i t y   L e v e l : A L P H A T y p e :   S u m m a r y L a b e l s : o p e r a t i o n r e j e c t e d t y p e   S t a b i l i t y   L e v e l : A L P H A T y p e :   C o u n t e r L a b e l s : n a m e t y p e   S t a b i l i t y   L e v e l : A L P H A T y p e :   C o u n t e r L a b e l s : e r r o r _ t y p e n a m e o p e r a t i o n r e j e c t i


Question: What is Update API Objects in Place Using kubectl patch?

Answer: Update API Objects in Place Using kubectl patchUse kubectl patch to update Kubernetes API objects in place. Do a strategic merge patch or a JSON merge patch.This task shows how to use kubectl patch to update an API object in place. The exercises in this task demonstrate a strategic merge patch and a JSON merge patch.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.Use a strategic merge patch to update a DeploymentHere's the configuration file for a Deployment that has two replicas. Each replica is a Pod that has one container:application/deployment-patch.yaml apiVersion: apps/v1 kind: Deployment metadata: name: patch-demo spec: replicas: 2 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: patch-demo-ctr image: nginx tolerations: - effect: NoSchedule key: dedicated value: test-team Create the Deployment:kubectl apply -f https://k8s.io/examples/application/deployment-patch.yaml View the Pods associated with your Deployment:kubectl get pods The output shows that the Deployment has two Pods. The 1/1 indicates that each Pod has one container:NAME READY STATUS RESTARTS AGE patch-demo-28633765-670qr 1/1 Running 0 23s patch-demo-28633765-j5qs3 1/1 Running 0 23s Make a note of the names of the running Pods. Later, you will see that these Pods get terminated and replaced by new ones.At this point, each Pod has one Container that runs the nginx image. Now suppose you want each Pod to have two containers: one that runs nginx and one that runs redis.Create a file named patch-file.yaml that has this content:spec: template: spec: containers: - name: patch-demo-ctr-2 image: redis Patch your Deployment:kubectl patch deployment patch-demo --patch-file patch-file.yaml View the patched Deployment:kubectl get deployment patch-demo --output yaml The output shows that the PodSpec in the Deployment has two Containers:containers: - image: redis imagePullPolicy: Always name: patch-demo-ctr-2 ... - image: nginx imagePullPolicy: Always name: patch-demo-ctr ... View the Pods associated with your patched Deployment:kubectl get pods The output shows that the running Pods have different names from the Pods that were running previously. The Deployment terminated the old Pods and created two new Pods that comply with the updated Deployment spec. The 2/2 indicates that each Pod has two Containers:NAME READY STATUS RESTARTS AGE patch-demo-1081991389-2wrn5 2/2 Running 0 1m patch-demo-1081991389-jmg7b 2/2 Running 0 1m Take a closer look at one of the patch-demo Pods:kubectl get pod <your-pod-name> --output yam


Question: How does Update API Objects in Place Using kubectl patch work?

Answer: Update API Objects in Place Using kubectl patchUse kubectl patch to update Kubernetes API objects in place. Do a strategic merge patch or a JSON merge patch.This task shows how to use kubectl patch to update an API object in place. The exercises in this task demonstrate a strategic merge patch and a JSON merge patch.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.Use a strategic merge patch to update a DeploymentHere's the configuration file for a Deployment that has two replicas. Each replica is a Pod that has one container:application/deployment-patch.yaml apiVersion: apps/v1 kind: Deployment metadata: name: patch-demo spec: replicas: 2 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: patch-demo-ctr image: nginx tolerations: - effect: NoSchedule key: dedicated value: test-team Create the Deployment:kubectl apply -f https://k8s.io/examples/application/deployment-patch.yaml View the Pods associated with your Deployment:kubectl get pods The output shows that the Deployment has two Pods. The 1/1 indicates that each Pod has one container:NAME READY STATUS RESTARTS AGE patch-demo-28633765-670qr 1/1 Running 0 23s patch-demo-28633765-j5qs3 1/1 Running 0 23s Make a note of the names of the running Pods. Later, you will see that these Pods get terminated and replaced by new ones.At this point, each Pod has one Container that runs the nginx image. Now suppose you want each Pod to have two containers: one that runs nginx and one that runs redis.Create a file named patch-file.yaml that has this content:spec: template: spec: containers: - name: patch-demo-ctr-2 image: redis Patch your Deployment:kubectl patch deployment patch-demo --patch-file patch-file.yaml View the patched Deployment:kubectl get deployment patch-demo --output yaml The output shows that the PodSpec in the Deployment has two Containers:containers: - image: redis imagePullPolicy: Always name: patch-demo-ctr-2 ... - image: nginx imagePullPolicy: Always name: patch-demo-ctr ... View the Pods associated with your patched Deployment:kubectl get pods The output shows that the running Pods have different names from the Pods that were running previously. The Deployment terminated the old Pods and created two new Pods that comply with the updated Deployment spec. The 2/2 indicates that each Pod has two Containers:NAME READY STATUS RESTARTS AGE patch-demo-1081991389-2wrn5 2/2 Running 0 1m patch-demo-1081991389-jmg7b 2/2 Running 0 1m Take a closer look at one of the patch-demo Pods:kubectl get pod <your-pod-name> --output yam


Question: When would you use Update API Objects in Place Using kubectl patch?

Answer: Update API Objects in Place Using kubectl patchUse kubectl patch to update Kubernetes API objects in place. Do a strategic merge patch or a JSON merge patch.This task shows how to use kubectl patch to update an API object in place. The exercises in this task demonstrate a strategic merge patch and a JSON merge patch.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.Use a strategic merge patch to update a DeploymentHere's the configuration file for a Deployment that has two replicas. Each replica is a Pod that has one container:application/deployment-patch.yaml apiVersion: apps/v1 kind: Deployment metadata: name: patch-demo spec: replicas: 2 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: patch-demo-ctr image: nginx tolerations: - effect: NoSchedule key: dedicated value: test-team Create the Deployment:kubectl apply -f https://k8s.io/examples/application/deployment-patch.yaml View the Pods associated with your Deployment:kubectl get pods The output shows that the Deployment has two Pods. The 1/1 indicates that each Pod has one container:NAME READY STATUS RESTARTS AGE patch-demo-28633765-670qr 1/1 Running 0 23s patch-demo-28633765-j5qs3 1/1 Running 0 23s Make a note of the names of the running Pods. Later, you will see that these Pods get terminated and replaced by new ones.At this point, each Pod has one Container that runs the nginx image. Now suppose you want each Pod to have two containers: one that runs nginx and one that runs redis.Create a file named patch-file.yaml that has this content:spec: template: spec: containers: - name: patch-demo-ctr-2 image: redis Patch your Deployment:kubectl patch deployment patch-demo --patch-file patch-file.yaml View the patched Deployment:kubectl get deployment patch-demo --output yaml The output shows that the PodSpec in the Deployment has two Containers:containers: - image: redis imagePullPolicy: Always name: patch-demo-ctr-2 ... - image: nginx imagePullPolicy: Always name: patch-demo-ctr ... View the Pods associated with your patched Deployment:kubectl get pods The output shows that the running Pods have different names from the Pods that were running previously. The Deployment terminated the old Pods and created two new Pods that comply with the updated Deployment spec. The 2/2 indicates that each Pod has two Containers:NAME READY STATUS RESTARTS AGE patch-demo-1081991389-2wrn5 2/2 Running 0 1m patch-demo-1081991389-jmg7b 2/2 Running 0 1m Take a closer look at one of the patch-demo Pods:kubectl get pod <your-pod-name> --output yam


Question: What are the benefits of Update API Objects in Place Using kubectl patch?

Answer: Update API Objects in Place Using kubectl patchUse kubectl patch to update Kubernetes API objects in place. Do a strategic merge patch or a JSON merge patch.This task shows how to use kubectl patch to update an API object in place. The exercises in this task demonstrate a strategic merge patch and a JSON merge patch.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.Use a strategic merge patch to update a DeploymentHere's the configuration file for a Deployment that has two replicas. Each replica is a Pod that has one container:application/deployment-patch.yaml apiVersion: apps/v1 kind: Deployment metadata: name: patch-demo spec: replicas: 2 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: patch-demo-ctr image: nginx tolerations: - effect: NoSchedule key: dedicated value: test-team Create the Deployment:kubectl apply -f https://k8s.io/examples/application/deployment-patch.yaml View the Pods associated with your Deployment:kubectl get pods The output shows that the Deployment has two Pods. The 1/1 indicates that each Pod has one container:NAME READY STATUS RESTARTS AGE patch-demo-28633765-670qr 1/1 Running 0 23s patch-demo-28633765-j5qs3 1/1 Running 0 23s Make a note of the names of the running Pods. Later, you will see that these Pods get terminated and replaced by new ones.At this point, each Pod has one Container that runs the nginx image. Now suppose you want each Pod to have two containers: one that runs nginx and one that runs redis.Create a file named patch-file.yaml that has this content:spec: template: spec: containers: - name: patch-demo-ctr-2 image: redis Patch your Deployment:kubectl patch deployment patch-demo --patch-file patch-file.yaml View the patched Deployment:kubectl get deployment patch-demo --output yaml The output shows that the PodSpec in the Deployment has two Containers:containers: - image: redis imagePullPolicy: Always name: patch-demo-ctr-2 ... - image: nginx imagePullPolicy: Always name: patch-demo-ctr ... View the Pods associated with your patched Deployment:kubectl get pods The output shows that the running Pods have different names from the Pods that were running previously. The Deployment terminated the old Pods and created two new Pods that comply with the updated Deployment spec. The 2/2 indicates that each Pod has two Containers:NAME READY STATUS RESTARTS AGE patch-demo-1081991389-2wrn5 2/2 Running 0 1m patch-demo-1081991389-jmg7b 2/2 Running 0 1m Take a closer look at one of the patch-demo Pods:kubectl get pod <your-pod-name> --output yam


Question: What is Update API Objects in Place Using kubectl patch?

Answer: T h i s   t a s k   s h o w s   h o w   t o   u s e   k u b e c t l   p a t c h   t o   u p d a t e   a n   A P I   o b j e c t   i n   p l a c e .   T h e   e x e r c i s e s   i n   t h i s   t a s k   d e m o n s t r a t e   a   s t r a t e g i c   m e r g e   p a t c h   a n d   a   J S O N   m e r g e   p a t c h .


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 .


Question: What is Use a strategic merge patch to update a Deployment?

Answer: H e r e ' s   t h e   c o n f i g u r a t i o n   f i l e   f o r   a   D e p l o y m e n t   t h a t   h a s   t w o   r e p l i c a s .   E a c h   r e p l i c a   i s   a   P o d   t h a t   h a s   o n e   c o n t a i n e r :   a p i V e r s i o n :   a p p s / v 1   k i n d :   D e p l o y m e n t   m e t a d a t a :   n a m e :   p a t c h - d e m o   s p e c :   r e p l i c a s :   2   s e l e c t o r :   m a t c h L a b e l s :   a p p :   n g i n x   t e m p l a t e :   m e t a d a t a :   l a b e l s :   a p p :   n g i n x   s p e c :   c o n t a i n e r s :   -   n a m e :   p a t c h - d e m o - c t r   i m a g e :   n g i n x   t o l e r a t i o n s :   -   e f f e c t :   N o S c h e d u l e   k e y :   d e d i c a t e d   v a l u e :   t e s t - t e a m   C r e a t e   t h e   D e p l o y m e n t :   k u b e c t l   a p p l y   - f   h t t p s : / / k 8 s . i o / e x a m p l e s / a p p l i c a t i o n / d e p l o y m e n t - p a t c h . y a m l   V i e w   t h e   P o d s   a s s o c i a t e d   w i t h   y o u r   D e p l o y m e n t :   k u b e c t l   g e t   p o d s   T h e   o u t p u t   s h o w s   t h a t   t h e   D e p l o y m e n t   h a s   t w o   P o d s .   T h e   1 / 1   i n d i c a t e s   t h a t   e a c h   P o d   h a s   o n e   c o n t a i n e r :   N A M E   R E A D Y   S T A T U S   R E S T A R T S   A G E   p a t c h - d e m o - 2 8 6 3 3 7 6 5 - 6 7 0 q r   1 / 1   R u n n i n g   0   2 3 s   p a t c h - d e m o - 2 8 6 3 3 7 6 5 - j 5 q s 3   1 / 1   R u n n i n g   0   2 3 s   M a k e   a   n o t e   o f   t h e   n a m e s   o f   t h e   r u n n i n g   P o d s .   L a t e r ,   y o u   w i l l   s e e   t h a t   t h e s e   P o d s   g e t   t e r m i n a t e d   a n d   r e p l a c e d   b y   n e w   o n e s .   A t   t h i s   p o i n t ,   e a c h   P o d   h a s   o n e   C o n t a i n e r   t h a t   r u n s   t h e   n g i n x   i m a g e .   N o w   s u p p o s e   y o u   w a n t   e a c h   P o d   t o   h


Question: What is Notes on the strategic merge patch?

Answer: T h e   p a t c h   y o u   d i d   i n   t h e   p r e c e d i n g   e x e r c i s e   i s   c a l l e d   a   s t r a t e g i c   m e r g e   p a t c h .   N o t i c e   t h a t   t h e   p a t c h   d i d   n o t   r e p l a c e   t h e   c o n t a i n e r s   l i s t .   I n s t e a d   i t   a d d e d   a   n e w   C o n t a i n e r   t o   t h e   l i s t .   I n   o t h e r   w o r d s ,   t h e   l i s t   i n   t h e   p a t c h   w a s   m e r g e d   w i t h   t h e   e x i s t i n g   l i s t .   T h i s   i s   n o t   a l w a y s   w h a t   h a p p e n s   w h e n   y o u   u s e   a   s t r a t e g i c   m e r g e   p a t c h   o n   a   l i s t .   I n   s o m e   c a s e s ,   t h e   l i s t   i s   r e p l a c e d ,   n o t   m e r g e d .   W i t h   a   s t r a t e g i c   m e r g e   p a t c h ,   a   l i s t   i s   e i t h e r   r e p l a c e d   o r   m e r g e d   d e p e n d i n g   o n   i t s   p a t c h   s t r a t e g y .   T h e   p a t c h   s t r a t e g y   i s   s p e c i f i e d   b y   t h e   v a l u e   o f   t h e   p a t c h S t r a t e g y   k e y   i n   a   f i e l d   t a g   i n   t h e   K u b e r n e t e s   s o u r c e   c o d e .   F o r   e x a m p l e ,   t h e   C o n t a i n e r s   f i e l d   o f   P o d S p e c   s t r u c t   h a s   a   p a t c h S t r a t e g y   o f   m e r g e :   t y p e   P o d S p e c   s t r u c t   {   . . .   C o n t a i n e r s   [ ] C o n t a i n e r   ` j s o n : " c o n t a i n e r s "   p a t c h S t r a t e g y : " m e r g e "   p a t c h M e r g e K e y : " n a m e "   . . . `   . . .   }   Y o u   c a n   a l s o   s e e   t h e   p a t c h   s t r a t e g y   i n   t h e   O p e n A p i   s p e c :   " i o . k 8 s . a p i . c o r e . v 1 . P o d S p e c " :   {   . . . ,   " c o n t a i n e r s " :   {   " d e s c r i p t i o n " :   " L i s t   o f   c o n t a i n e r s   b e l o n g i n g   t o   t h e   p o d .   . . . . "   } ,   " x - k u b e r n e t e s - p a t c h


Question: What is Use a JSON merge patch to update a Deployment?

Answer: A   s t r a t e g i c   m e r g e   p a t c h   i s   d i f f e r e n t   f r o m   a   J S O N   m e r g e   p a t c h .   W i t h   a   J S O N   m e r g e   p a t c h ,   i f   y o u   w a n t   t o   u p d a t e   a   l i s t ,   y o u   h a v e   t o   s p e c i f y   t h e   e n t i r e   n e w   l i s t .   A n d   t h e   n e w   l i s t   c o m p l e t e l y   r e p l a c e s   t h e   e x i s t i n g   l i s t .   T h e   k u b e c t l   p a t c h   c o m m a n d   h a s   a   t y p e   p a r a m e t e r   t h a t   y o u   c a n   s e t   t o   o n e   o f   t h e s e   v a l u e s :   F o r   a   c o m p a r i s o n   o f   J S O N   p a t c h   a n d   J S O N   m e r g e   p a t c h ,   s e e   J S O N   P a t c h   a n d   J S O N   M e r g e   P a t c h .   T h e   d e f a u l t   v a l u e   f o r   t h e   t y p e   p a r a m e t e r   i s   s t r a t e g i c .   S o   i n   t h e   p r e c e d i n g   e x e r c i s e ,   y o u   d i d   a   s t r a t e g i c   m e r g e   p a t c h .   N e x t ,   d o   a   J S O N   m e r g e   p a t c h   o n   y o u r   s a m e   D e p l o y m e n t .   C r e a t e   a   f i l e   n a m e d   p a t c h - f i l e - 2 . y a m l   t h a t   h a s   t h i s   c o n t e n t :   s p e c :   t e m p l a t e :   s p e c :   c o n t a i n e r s :   -   n a m e :   p a t c h - d e m o - c t r - 3   i m a g e :   g c r . i o / g o o g l e - s a m p l e s / h e l l o - a p p : 2 . 0   I n   y o u r   p a t c h   c o m m a n d ,   s e t   t y p e   t o   m e r g e :   k u b e c t l   p a t c h   d e p l o y m e n t   p a t c h - d e m o   - - t y p e   m e r g e   - - p a t c h - f i l e   p a t c h - f i l e - 2 . y a m l   V i e w   t h e   p a t c h e d   D e p l o y m e n t :   k u b e c t l   g e t   d e p l o y m e n t   p a t c h - d e m o   - - o u t p u t   y a m l   T h e   c o n t a i n e r s   l i s t   t h a t   y o u   s p e c i f i e d   i n   t h e   p a t c h   h a s   o n l y   o n e   C o n t a i n e r .


Question: What is Use strategic merge patch to update a Deployment using the retainKeys strategy?

Answer: H e r e ' s   t h e   c o n f i g u r a t i o n   f i l e   f o r   a   D e p l o y m e n t   t h a t   u s e s   t h e   R o l l i n g U p d a t e   s t r a t e g y :   a p i V e r s i o n :   a p p s / v 1   k i n d :   D e p l o y m e n t   m e t a d a t a :   n a m e :   r e t a i n k e y s - d e m o   s p e c :   s e l e c t o r :   m a t c h L a b e l s :   a p p :   n g i n x   s t r a t e g y :   r o l l i n g U p d a t e :   m a x S u r g e :   3 0 %   t e m p l a t e :   m e t a d a t a :   l a b e l s :   a p p :   n g i n x   s p e c :   c o n t a i n e r s :   -   n a m e :   r e t a i n k e y s - d e m o - c t r   i m a g e :   n g i n x   C r e a t e   t h e   d e p l o y m e n t :   k u b e c t l   a p p l y   - f   h t t p s : / / k 8 s . i o / e x a m p l e s / a p p l i c a t i o n / d e p l o y m e n t - r e t a i n k e y s . y a m l   A t   t h i s   p o i n t ,   t h e   d e p l o y m e n t   i s   c r e a t e d   a n d   i s   u s i n g   t h e   R o l l i n g U p d a t e   s t r a t e g y .   C r e a t e   a   f i l e   n a m e d   p a t c h - f i l e - n o - r e t a i n k e y s . y a m l   t h a t   h a s   t h i s   c o n t e n t :   s p e c :   s t r a t e g y :   t y p e :   R e c r e a t e   P a t c h   y o u r   D e p l o y m e n t :   k u b e c t l   p a t c h   d e p l o y m e n t   r e t a i n k e y s - d e m o   - - t y p e   s t r a t e g i c   - - p a t c h - f i l e   p a t c h - f i l e - n o - r e t a i n k e y s . y a m l   I n   t h e   o u t p u t ,   y o u   c a n   s e e   t h a t   i t   i s   n o t   p o s s i b l e   t o   s e t   t y p e   a s   R e c r e a t e   w h e n   a   v a l u e   i s   d e f i n e d   f o r   s p e c . s t r a t e g y . r o l l i n g U p d a t e :   T h e   D e p l o y m e n t   " r e t a i n k e y s - d e m o "   i s   i n v a l i d :   s p e c . s t r a t e g y . r o l l i n g U p d a t e :   F o r b i d d e n :   m a y   n o t   b e   s p e c i f i e d   w h e n   s t r a t e g y   ` t y p


Question: What is Notes on the strategic merge patch using the retainKeys strategy?

Answer: T h e   p a t c h   y o u   d i d   i n   t h e   p r e c e d i n g   e x e r c i s e   i s   c a l l e d   a   s t r a t e g i c   m e r g e   p a t c h   w i t h   r e t a i n K e y s   s t r a t e g y .   T h i s   m e t h o d   i n t r o d u c e s   a   n e w   d i r e c t i v e   $ r e t a i n K e y s   t h a t   h a s   t h e   f o l l o w i n g   s t r a t e g i e s :   I t   c o n t a i n s   a   l i s t   o f   s t r i n g s . A l l   f i e l d s   n e e d i n g   t o   b e   p r e s e r v e d   m u s t   b e   p r e s e n t   i n   t h e   $ r e t a i n K e y s   l i s t . T h e   f i e l d s   t h a t   a r e   p r e s e n t   w i l l   b e   m e r g e d   w i t h   l i v e   o b j e c t . A l l   o f   t h e   m i s s i n g   f i e l d s   w i l l   b e   c l e a r e d   w h e n   p a t c h i n g . A l l   f i e l d s   i n   t h e   $ r e t a i n K e y s   l i s t   m u s t   b e   a   s u p e r s e t   o r   t h e   s a m e   a s   t h e   f i e l d s   p r e s e n t   i n   t h e   p a t c h .   T h e   r e t a i n K e y s   s t r a t e g y   d o e s   n o t   w o r k   f o r   a l l   o b j e c t s .   I t   o n l y   w o r k s   w h e n   t h e   v a l u e   o f   t h e   p a t c h S t r a t e g y   k e y   i n   a   f i e l d   t a g   i n   t h e   K u b e r n e t e s   s o u r c e   c o d e   c o n t a i n s   r e t a i n K e y s .   F o r   e x a m p l e ,   t h e   S t r a t e g y   f i e l d   o f   t h e   D e p l o y m e n t S p e c   s t r u c t   h a s   a   p a t c h S t r a t e g y   o f   r e t a i n K e y s :   t y p e   D e p l o y m e n t S p e c   s t r u c t   {   . . .   / /   + p a t c h S t r a t e g y = r e t a i n K e y s   S t r a t e g y   D e p l o y m e n t S t r a t e g y   ` j s o n : " s t r a t e g y , o m i t e m p t y "   p a t c h S t r a t e g y : " r e t a i n K e y s "   . . . `   . . .   }   Y o u   c a n   a l s o   s e e   t h e   r e t a i n K e y s   s t r a t e g y   i n   t h e   O p e n A p i   s p e c :


Question: What is Alternate forms of the kubectl patch command?

Answer: T h e   k u b e c t l   p a t c h   c o m m a n d   t a k e s   Y A M L   o r   J S O N .   I t   c a n   t a k e   t h e   p a t c h   a s   a   f i l e   o r   d i r e c t l y   o n   t h e   c o m m a n d   l i n e .   C r e a t e   a   f i l e   n a m e d   p a t c h - f i l e . j s o n   t h a t   h a s   t h i s   c o n t e n t :   {   " s p e c " :   {   " t e m p l a t e " :   {   " s p e c " :   {   " c o n t a i n e r s " :   [   {   " n a m e " :   " p a t c h - d e m o - c t r - 2 " ,   " i m a g e " :   " r e d i s "   }   ]   }   }   }   }   T h e   f o l l o w i n g   c o m m a n d s   a r e   e q u i v a l e n t :   k u b e c t l   p a t c h   d e p l o y m e n t   p a t c h - d e m o   - - p a t c h - f i l e   p a t c h - f i l e . y a m l   k u b e c t l   p a t c h   d e p l o y m e n t   p a t c h - d e m o   - - p a t c h   ' s p e c : \ n   t e m p l a t e : \ n   s p e c : \ n   c o n t a i n e r s : \ n   -   n a m e :   p a t c h - d e m o - c t r - 2 \ n   i m a g e :   r e d i s '   k u b e c t l   p a t c h   d e p l o y m e n t   p a t c h - d e m o   - - p a t c h - f i l e   p a t c h - f i l e . j s o n   k u b e c t l   p a t c h   d e p l o y m e n t   p a t c h - d e m o   - - p a t c h   ' { " s p e c " :   { " t e m p l a t e " :   { " s p e c " :   { " c o n t a i n e r s " :   [ { " n a m e " :   " p a t c h - d e m o - c t r - 2 " , " i m a g e " :   " r e d i s " } ] } } } } '


Question: What is Update an object's replica count using kubectl patch with --subresource?

Answer: T h e   f l a g   - - s u b r e s o u r c e = [ s u b r e s o u r c e - n a m e ]   i s   u s e d   w i t h   k u b e c t l   c o m m a n d s   l i k e   g e t ,   p a t c h ,   e d i t ,   a p p l y   a n d   r e p l a c e   t o   f e t c h   a n d   u p d a t e   s t a t u s ,   s c a l e   a n d   r e s i z e   s u b r e s o u r c e   o f   t h e   r e s o u r c e s   y o u   s p e c i f y .   Y o u   c a n   s p e c i f y   a   s u b r e s o u r c e   f o r   a n y   o f   t h e   K u b e r n e t e s   A P I   r e s o u r c e s   ( b u i l t - i n   a n d   C R s )   t h a t   h a v e   s t a t u s ,   s c a l e   o r   r e s i z e   s u b r e s o u r c e .   F o r   e x a m p l e ,   a   D e p l o y m e n t   h a s   a   s t a t u s   s u b r e s o u r c e   a n d   a   s c a l e   s u b r e s o u r c e ,   s o   y o u   c a n   u s e   k u b e c t l   t o   g e t   o r   m o d i f y   j u s t   t h e   s t a t u s   s u b r e s o u r c e   o f   a   D e p l o y m e n t .   H e r e ' s   a   m a n i f e s t   f o r   a   D e p l o y m e n t   t h a t   h a s   t w o   r e p l i c a s :   a p i V e r s i o n :   a p p s / v 1   k i n d :   D e p l o y m e n t   m e t a d a t a :   n a m e :   n g i n x - d e p l o y m e n t   s p e c :   s e l e c t o r :   m a t c h L a b e l s :   a p p :   n g i n x   r e p l i c a s :   2   #   t e l l s   d e p l o y m e n t   t o   r u n   2   p o d s   m a t c h i n g   t h e   t e m p l a t e   t e m p l a t e :   m e t a d a t a :   l a b e l s :   a p p :   n g i n x   s p e c :   c o n t a i n e r s :   -   n a m e :   n g i n x   i m a g e :   n g i n x : 1 . 1 4 . 2   p o r t s :   -   c o n t a i n e r P o r t :   8 0   C r e a t e   t h e   D e p l o y m e n t :   k u b e c t l   a p p l y   - f   h t t p s : / / k 8 s . i o / e x a m p l e s / a p p l i c a t i o n / d e p l o y m e n t . y a m l   V i e w   t h e   P o d s   a s s o c i a t e d   w i t h   y o u r   D e p l o y m e n t :   k u b e c t l   g e t


Question: What is Summary?

Answer: I n   t h i s   e x e r c i s e ,   y o u   u s e d   k u b e c t l   p a t c h   t o   c h a n g e   t h e   l i v e   c o n f i g u r a t i o n   o f   a   D e p l o y m e n t   o b j e c t .   Y o u   d i d   n o t   c h a n g e   t h e   c o n f i g u r a t i o n   f i l e   t h a t   y o u   o r i g i n a l l y   u s e d   t o   c r e a t e   t h e   D e p l o y m e n t   o b j e c t .   O t h e r   c o m m a n d s   f o r   u p d a t i n g   A P I   o b j e c t s   i n c l u d e   k u b e c t l   a n n o t a t e ,   k u b e c t l   e d i t ,   k u b e c t l   r e p l a c e ,   k u b e c t l   s c a l e ,   a n d   k u b e c t l   a p p l y .


Question: What is What's next?

Answer: K u b e r n e t e s   O b j e c t   M a n a g e m e n t M a n a g i n g   K u b e r n e t e s   O b j e c t s   U s i n g   I m p e r a t i v e   C o m m a n d s I m p e r a t i v e   M a n a g e m e n t   o f   K u b e r n e t e s   O b j e c t s   U s i n g   C o n f i g u r a t i o n   F i l e s D e c l a r a t i v e   M a n a g e m e n t   o f   K u b e r n e t e s   O b j e c t s   U s i n g   C o n f i g u r a t i o n   F i l e s


Question: What is kube-controller-manager?

Answer: kube-controller-managerSynopsisThe Kubernetes controller manager is a daemon that embeds the core control loops shipped with Kubernetes. In applications of robotics and automation, a control loop is a non-terminating loop that regulates the state of the system. In Kubernetes, a controller is a control loop that watches the shared state of the cluster through the apiserver and makes changes attempting to move the current state towards the desired state. Examples of controllers that ship with Kubernetes today are the replication controller, endpoints controller, namespace controller, and serviceaccounts controller.kube-controller-manager [flags] Options--allocate-node-cidrsShould CIDRs for Pods be allocated and set on the cloud provider. Requires --cluster-cidr.--allow-metric-labels stringToString Default: []The map from metric-label to value allow-list of this label. The key's format is <MetricName>,<LabelName>. The value's format is <allowed_value>,<allowed_value>...e.g. metric1,label1='v1,v2,v3', metric1,label2='v1,v2,v3' metric2,label1='v1,v2,v3'.--allow-metric-labels-manifest stringThe path to the manifest file that contains the allow-list mapping. The format of the file is the same as the flag --allow-metric-labels. Note that the flag --allow-metric-labels will override the manifest file.--attach-detach-reconcile-sync-period duration Default: 1m0sThe reconciler sync wait time between volume attach detach. This duration must be larger than one second, and increasing this value from the default may allow for volumes to be mismatched with pods.--authentication-kubeconfig stringkubeconfig file pointing at the 'core' kubernetes server with enough rights to create tokenreviews.authentication.k8s.io. This is optional. If empty, all token requests are considered to be anonymous and no client CA is looked up in the cluster.--authentication-skip-lookupIf false, the authentication-kubeconfig will be used to lookup missing authentication configuration from the cluster.--authentication-token-webhook-cache-ttl duration Default: 10sThe duration to cache responses from the webhook token authenticator.--authentication-tolerate-lookup-failureIf true, failures to look up missing authentication configuration from the cluster are not considered fatal. Note that this can result in authentication that treats all requests as anonymous.--authorization-always-allow-paths strings Default: "/healthz,/readyz,/livez"A list of HTTP paths to skip during authorization, i.e. these are authorized without contacting the 'core' kubernetes server.--authorization-kubeconfig stringkubeconfig file pointing at the 'core' kubernetes server with enough rights to create subjectaccessreviews.authorization.k8s.io. This is optional. If empty, all requests not skipped by authorization are forbidden.--authorization-webhook-cache-authorized-ttl duration Default: 10sThe duration to cache 'authorized' responses from the webhook authorizer.--authorization-webhook-cache-unauthorized-ttl duration


Question: How does kube-controller-manager work?

Answer: kube-controller-managerSynopsisThe Kubernetes controller manager is a daemon that embeds the core control loops shipped with Kubernetes. In applications of robotics and automation, a control loop is a non-terminating loop that regulates the state of the system. In Kubernetes, a controller is a control loop that watches the shared state of the cluster through the apiserver and makes changes attempting to move the current state towards the desired state. Examples of controllers that ship with Kubernetes today are the replication controller, endpoints controller, namespace controller, and serviceaccounts controller.kube-controller-manager [flags] Options--allocate-node-cidrsShould CIDRs for Pods be allocated and set on the cloud provider. Requires --cluster-cidr.--allow-metric-labels stringToString Default: []The map from metric-label to value allow-list of this label. The key's format is <MetricName>,<LabelName>. The value's format is <allowed_value>,<allowed_value>...e.g. metric1,label1='v1,v2,v3', metric1,label2='v1,v2,v3' metric2,label1='v1,v2,v3'.--allow-metric-labels-manifest stringThe path to the manifest file that contains the allow-list mapping. The format of the file is the same as the flag --allow-metric-labels. Note that the flag --allow-metric-labels will override the manifest file.--attach-detach-reconcile-sync-period duration Default: 1m0sThe reconciler sync wait time between volume attach detach. This duration must be larger than one second, and increasing this value from the default may allow for volumes to be mismatched with pods.--authentication-kubeconfig stringkubeconfig file pointing at the 'core' kubernetes server with enough rights to create tokenreviews.authentication.k8s.io. This is optional. If empty, all token requests are considered to be anonymous and no client CA is looked up in the cluster.--authentication-skip-lookupIf false, the authentication-kubeconfig will be used to lookup missing authentication configuration from the cluster.--authentication-token-webhook-cache-ttl duration Default: 10sThe duration to cache responses from the webhook token authenticator.--authentication-tolerate-lookup-failureIf true, failures to look up missing authentication configuration from the cluster are not considered fatal. Note that this can result in authentication that treats all requests as anonymous.--authorization-always-allow-paths strings Default: "/healthz,/readyz,/livez"A list of HTTP paths to skip during authorization, i.e. these are authorized without contacting the 'core' kubernetes server.--authorization-kubeconfig stringkubeconfig file pointing at the 'core' kubernetes server with enough rights to create subjectaccessreviews.authorization.k8s.io. This is optional. If empty, all requests not skipped by authorization are forbidden.--authorization-webhook-cache-authorized-ttl duration Default: 10sThe duration to cache 'authorized' responses from the webhook authorizer.--authorization-webhook-cache-unauthorized-ttl duration