Question: What is Good practices for Dynamic Resource Allocation as a Cluster Admin?

Answer: Good practices for Dynamic Resource Allocation as a Cluster AdminThis page describes good practices when configuring a Kubernetes cluster utilizing Dynamic Resource Allocation (DRA). These instructions are for cluster administrators.Separate permissions to DRA related APIsDRA is orchestrated through a number of different APIs. Use authorization tools (like RBAC, or another solution) to control access to the right APIs depending on the persona of your user.In general, DeviceClasses and ResourceSlices should be restricted to admins and the DRA drivers. Cluster operators that will be deploying Pods with claims will need access to ResourceClaim and ResourceClaimTemplate APIs; both of these APIs are namespace scoped.DRA driver deployment and maintenanceDRA drivers are third-party applications that run on each node of your cluster to interface with the hardware of that node and Kubernetes' native DRA components. The installation procedure depends on the driver you choose, but is likely deployed as a DaemonSet to all or a selection of the nodes (using node selectors or similar mechanisms) in your cluster.Use drivers with seamless upgrade if availableDRA drivers implement the kubeletplugin package interface. Your driver may support seamless upgrades by implementing a property of this interface that allows two versions of the same DRA driver to coexist for a short time. This is only available for kubelet versions 1.33 and above and may not be supported by your driver for heterogeneous clusters with attached nodes running older versions of Kubernetes - check your driver's documentation to be sure.If seamless upgrades are available for your situation, consider using it to minimize scheduling delays when your driver updates.If you cannot use seamless upgrades, during driver downtime for upgrades you may observe that:Pods cannot start unless the claims they depend on were already prepared for use.Cleanup after the last pod which used a claim gets delayed until the driver is available again. The pod is not marked as terminated. This prevents reusing the resources used by the pod for other pods.Running pods will continue to run.Confirm your DRA driver exposes a liveness probe and utilize itYour DRA driver likely implements a gRPC socket for healthchecks as part of DRA driver good practices. The easiest way to utilize this grpc socket is to configure it as a liveness probe for the DaemonSet deploying your DRA driver. Your driver's documentation or deployment tooling may already include this, but if you are building your configuration separately or not running your DRA driver as a Kubernetes pod, be sure that your orchestration tooling restarts the DRA driver on failed healthchecks to this grpc socket. Doing so will minimize any accidental downtime of the DRA driver and give it more opportunities to self heal, reducing scheduling delays or troubleshooting time.When draining a node, drain the DRA driver as late as possibleThe DRA driver is responsible for unprepar


Question: How does Good practices for Dynamic Resource Allocation as a Cluster Admin work?

Answer: Good practices for Dynamic Resource Allocation as a Cluster AdminThis page describes good practices when configuring a Kubernetes cluster utilizing Dynamic Resource Allocation (DRA). These instructions are for cluster administrators.Separate permissions to DRA related APIsDRA is orchestrated through a number of different APIs. Use authorization tools (like RBAC, or another solution) to control access to the right APIs depending on the persona of your user.In general, DeviceClasses and ResourceSlices should be restricted to admins and the DRA drivers. Cluster operators that will be deploying Pods with claims will need access to ResourceClaim and ResourceClaimTemplate APIs; both of these APIs are namespace scoped.DRA driver deployment and maintenanceDRA drivers are third-party applications that run on each node of your cluster to interface with the hardware of that node and Kubernetes' native DRA components. The installation procedure depends on the driver you choose, but is likely deployed as a DaemonSet to all or a selection of the nodes (using node selectors or similar mechanisms) in your cluster.Use drivers with seamless upgrade if availableDRA drivers implement the kubeletplugin package interface. Your driver may support seamless upgrades by implementing a property of this interface that allows two versions of the same DRA driver to coexist for a short time. This is only available for kubelet versions 1.33 and above and may not be supported by your driver for heterogeneous clusters with attached nodes running older versions of Kubernetes - check your driver's documentation to be sure.If seamless upgrades are available for your situation, consider using it to minimize scheduling delays when your driver updates.If you cannot use seamless upgrades, during driver downtime for upgrades you may observe that:Pods cannot start unless the claims they depend on were already prepared for use.Cleanup after the last pod which used a claim gets delayed until the driver is available again. The pod is not marked as terminated. This prevents reusing the resources used by the pod for other pods.Running pods will continue to run.Confirm your DRA driver exposes a liveness probe and utilize itYour DRA driver likely implements a gRPC socket for healthchecks as part of DRA driver good practices. The easiest way to utilize this grpc socket is to configure it as a liveness probe for the DaemonSet deploying your DRA driver. Your driver's documentation or deployment tooling may already include this, but if you are building your configuration separately or not running your DRA driver as a Kubernetes pod, be sure that your orchestration tooling restarts the DRA driver on failed healthchecks to this grpc socket. Doing so will minimize any accidental downtime of the DRA driver and give it more opportunities to self heal, reducing scheduling delays or troubleshooting time.When draining a node, drain the DRA driver as late as possibleThe DRA driver is responsible for unprepar


Question: When would you use Good practices for Dynamic Resource Allocation as a Cluster Admin?

Answer: Good practices for Dynamic Resource Allocation as a Cluster AdminThis page describes good practices when configuring a Kubernetes cluster utilizing Dynamic Resource Allocation (DRA). These instructions are for cluster administrators.Separate permissions to DRA related APIsDRA is orchestrated through a number of different APIs. Use authorization tools (like RBAC, or another solution) to control access to the right APIs depending on the persona of your user.In general, DeviceClasses and ResourceSlices should be restricted to admins and the DRA drivers. Cluster operators that will be deploying Pods with claims will need access to ResourceClaim and ResourceClaimTemplate APIs; both of these APIs are namespace scoped.DRA driver deployment and maintenanceDRA drivers are third-party applications that run on each node of your cluster to interface with the hardware of that node and Kubernetes' native DRA components. The installation procedure depends on the driver you choose, but is likely deployed as a DaemonSet to all or a selection of the nodes (using node selectors or similar mechanisms) in your cluster.Use drivers with seamless upgrade if availableDRA drivers implement the kubeletplugin package interface. Your driver may support seamless upgrades by implementing a property of this interface that allows two versions of the same DRA driver to coexist for a short time. This is only available for kubelet versions 1.33 and above and may not be supported by your driver for heterogeneous clusters with attached nodes running older versions of Kubernetes - check your driver's documentation to be sure.If seamless upgrades are available for your situation, consider using it to minimize scheduling delays when your driver updates.If you cannot use seamless upgrades, during driver downtime for upgrades you may observe that:Pods cannot start unless the claims they depend on were already prepared for use.Cleanup after the last pod which used a claim gets delayed until the driver is available again. The pod is not marked as terminated. This prevents reusing the resources used by the pod for other pods.Running pods will continue to run.Confirm your DRA driver exposes a liveness probe and utilize itYour DRA driver likely implements a gRPC socket for healthchecks as part of DRA driver good practices. The easiest way to utilize this grpc socket is to configure it as a liveness probe for the DaemonSet deploying your DRA driver. Your driver's documentation or deployment tooling may already include this, but if you are building your configuration separately or not running your DRA driver as a Kubernetes pod, be sure that your orchestration tooling restarts the DRA driver on failed healthchecks to this grpc socket. Doing so will minimize any accidental downtime of the DRA driver and give it more opportunities to self heal, reducing scheduling delays or troubleshooting time.When draining a node, drain the DRA driver as late as possibleThe DRA driver is responsible for unprepar


Question: What are the benefits of Good practices for Dynamic Resource Allocation as a Cluster Admin?

Answer: Good practices for Dynamic Resource Allocation as a Cluster AdminThis page describes good practices when configuring a Kubernetes cluster utilizing Dynamic Resource Allocation (DRA). These instructions are for cluster administrators.Separate permissions to DRA related APIsDRA is orchestrated through a number of different APIs. Use authorization tools (like RBAC, or another solution) to control access to the right APIs depending on the persona of your user.In general, DeviceClasses and ResourceSlices should be restricted to admins and the DRA drivers. Cluster operators that will be deploying Pods with claims will need access to ResourceClaim and ResourceClaimTemplate APIs; both of these APIs are namespace scoped.DRA driver deployment and maintenanceDRA drivers are third-party applications that run on each node of your cluster to interface with the hardware of that node and Kubernetes' native DRA components. The installation procedure depends on the driver you choose, but is likely deployed as a DaemonSet to all or a selection of the nodes (using node selectors or similar mechanisms) in your cluster.Use drivers with seamless upgrade if availableDRA drivers implement the kubeletplugin package interface. Your driver may support seamless upgrades by implementing a property of this interface that allows two versions of the same DRA driver to coexist for a short time. This is only available for kubelet versions 1.33 and above and may not be supported by your driver for heterogeneous clusters with attached nodes running older versions of Kubernetes - check your driver's documentation to be sure.If seamless upgrades are available for your situation, consider using it to minimize scheduling delays when your driver updates.If you cannot use seamless upgrades, during driver downtime for upgrades you may observe that:Pods cannot start unless the claims they depend on were already prepared for use.Cleanup after the last pod which used a claim gets delayed until the driver is available again. The pod is not marked as terminated. This prevents reusing the resources used by the pod for other pods.Running pods will continue to run.Confirm your DRA driver exposes a liveness probe and utilize itYour DRA driver likely implements a gRPC socket for healthchecks as part of DRA driver good practices. The easiest way to utilize this grpc socket is to configure it as a liveness probe for the DaemonSet deploying your DRA driver. Your driver's documentation or deployment tooling may already include this, but if you are building your configuration separately or not running your DRA driver as a Kubernetes pod, be sure that your orchestration tooling restarts the DRA driver on failed healthchecks to this grpc socket. Doing so will minimize any accidental downtime of the DRA driver and give it more opportunities to self heal, reducing scheduling delays or troubleshooting time.When draining a node, drain the DRA driver as late as possibleThe DRA driver is responsible for unprepar


Question: What is Good practices for Dynamic Resource Allocation as a Cluster Admin?

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


Question: What is Separate permissions to DRA related APIs?

Answer: D R A   i s   o r c h e s t r a t e d   t h r o u g h   a   n u m b e r   o f   d i f f e r e n t   A P I s .   U s e   a u t h o r i z a t i o n   t o o l s   ( l i k e   R B A C ,   o r   a n o t h e r   s o l u t i o n )   t o   c o n t r o l   a c c e s s   t o   t h e   r i g h t   A P I s   d e p e n d i n g   o n   t h e   p e r s o n a   o f   y o u r   u s e r .   I n   g e n e r a l ,   D e v i c e C l a s s e s   a n d   R e s o u r c e S l i c e s   s h o u l d   b e   r e s t r i c t e d   t o   a d m i n s   a n d   t h e   D R A   d r i v e r s .   C l u s t e r   o p e r a t o r s   t h a t   w i l l   b e   d e p l o y i n g   P o d s   w i t h   c l a i m s   w i l l   n e e d   a c c e s s   t o   R e s o u r c e C l a i m   a n d   R e s o u r c e C l a i m T e m p l a t e   A P I s ;   b o t h   o f   t h e s e   A P I s   a r e   n a m e s p a c e   s c o p e d .


Question: What is DRA driver deployment and maintenance?

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


Question: What is Use drivers with seamless upgrade if available?

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


Question: What is Confirm your DRA driver exposes a liveness probe and utilize it?

Answer: Y o u r   D R A   d r i v e r   l i k e l y   i m p l e m e n t s   a   g R P C   s o c k e t   f o r   h e a l t h c h e c k s   a s   p a r t   o f   D R A   d r i v e r   g o o d   p r a c t i c e s .   T h e   e a s i e s t   w a y   t o   u t i l i z e   t h i s   g r p c   s o c k e t   i s   t o   c o n f i g u r e   i t   a s   a   l i v e n e s s   p r o b e   f o r   t h e   D a e m o n S e t   d e p l o y i n g   y o u r   D R A   d r i v e r .   Y o u r   d r i v e r ' s   d o c u m e n t a t i o n   o r   d e p l o y m e n t   t o o l i n g   m a y   a l r e a d y   i n c l u d e   t h i s ,   b u t   i f   y o u   a r e   b u i l d i n g   y o u r   c o n f i g u r a t i o n   s e p a r a t e l y   o r   n o t   r u n n i n g   y o u r   D R A   d r i v e r   a s   a   K u b e r n e t e s   p o d ,   b e   s u r e   t h a t   y o u r   o r c h e s t r a t i o n   t o o l i n g   r e s t a r t s   t h e   D R A   d r i v e r   o n   f a i l e d   h e a l t h c h e c k s   t o   t h i s   g r p c   s o c k e t .   D o i n g   s o   w i l l   m i n i m i z e   a n y   a c c i d e n t a l   d o w n t i m e   o f   t h e   D R A   d r i v e r   a n d   g i v e   i t   m o r e   o p p o r t u n i t i e s   t o   s e l f   h e a l ,   r e d u c i n g   s c h e d u l i n g   d e l a y s   o r   t r o u b l e s h o o t i n g   t i m e .


Question: What is When draining a node, drain the DRA driver as late as possible?

Answer: T h e   D R A   d r i v e r   i s   r e s p o n s i b l e   f o r   u n p r e p a r i n g   a n y   d e v i c e s   t h a t   w e r e   a l l o c a t e d   t o   P o d s ,   a n d   i f   t h e   D R A   d r i v e r   i s   d r a i n e d   b e f o r e   P o d s   w i t h   c l a i m s   h a v e   b e e n   d e l e t e d ,   i t   w i l l   n o t   b e   a b l e   t o   f i n a l i z e   i t s   c l e a n u p .   I f   y o u   i m p l e m e n t   c u s t o m   d r a i n   l o g i c   f o r   n o d e s ,   c o n s i d e r   c h e c k i n g   t h a t   t h e r e   a r e   n o   a l l o c a t e d / r e s e r v e d   R e s o u r c e C l a i m   o r   R e s o u r c e C l a i m T e m p l a t e s   b e f o r e   t e r m i n a t i n g   t h e   D R A   d r i v e r   i t s e l f .


Question: What is Monitor and tune components for higher load, especially in high scale environments?

Answer: C o n t r o l   p l a n e   c o m p o n e n t   k u b e - s c h e d u l e r   a n d   t h e   i n t e r n a l   R e s o u r c e C l a i m   c o n t r o l l e r   o r c h e s t r a t e d   b y   t h e   c o m p o n e n t   k u b e - c o n t r o l l e r - m a n a g e r   d o   t h e   h e a v y   l i f t i n g   d u r i n g   s c h e d u l i n g   o f   P o d s   w i t h   c l a i m s   b a s e d   o n   m e t a d a t a   s t o r e d   i n   t h e   D R A   A P I s .   C o m p a r e d   t o   n o n - D R A   s c h e d u l e d   P o d s ,   t h e   n u m b e r   o f   A P I   s e r v e r   c a l l s ,   m e m o r y ,   a n d   C P U   u t i l i z a t i o n   n e e d e d   b y   t h e s e   c o m p o n e n t s   i s   i n c r e a s e d   f o r   P o d s   u s i n g   D R A   c l a i m s .   I n   a d d i t i o n ,   n o d e   l o c a l   c o m p o n e n t s   l i k e   t h e   D R A   d r i v e r   a n d   k u b e l e t   u t i l i z e   D R A   A P I s   t o   a l l o c a t e d   t h e   h a r d w a r e   r e q u e s t   a t   P o d   s a n d b o x   c r e a t i o n   t i m e .   E s p e c i a l l y   i n   h i g h   s c a l e   e n v i r o n m e n t s   w h e r e   c l u s t e r s   h a v e   m a n y   n o d e s ,   a n d / o r   d e p l o y   m a n y   w o r k l o a d s   t h a t   h e a v i l y   u t i l i z e   D R A   d e f i n e d   r e s o u r c e   c l a i m s ,   t h e   c l u s t e r   a d m i n i s t r a t o r   s h o u l d   c o n f i g u r e   t h e   r e l e v a n t   c o m p o n e n t s   t o   a n t i c i p a t e   t h e   i n c r e a s e d   l o a d .   T h e   e f f e c t s   o f   m i s t u n e d   c o m p o n e n t s   c a n   h a v e   d i r e c t   o r   s n o w b a l l i n g   a f f e c t s   c a u s i n g   d i f f e r e n t   s y m p t o m s   d u r i n g   t h e   P o d   l i f e c y c l e .   I f   t h e   k u b e - s c h e d u l e r   c o m p o n e n t ' s   Q P S   a n d   b u r s t   c o n f i g u r a t i o n s   a r e   t o o   l o w ,


Question: What is kube-controller-manager metrics?

Answer: T h e   f o l l o w i n g   m e t r i c s   l o o k   c l o s e l y   a t   t h e   i n t e r n a l   R e s o u r c e C l a i m   c o n t r o l l e r   m a n a g e d   b y   t h e   k u b e - c o n t r o l l e r - m a n a g e r   c o m p o n e n t .   W o r k q u e u e   A d d   R a t e :   M o n i t o r   s u m ( r a t e ( w o r k q u e u e _ a d d s _ t o t a l { n a m e = " r e s o u r c e _ c l a i m " } [ 5 m ] ) )   t o   g a u g e   h o w   q u i c k l y   i t e m s   a r e   a d d e d   t o   t h e   R e s o u r c e C l a i m   c o n t r o l l e r . W o r k q u e u e   D e p t h :   T r a c k   s u m ( w o r k q u e u e _ d e p t h { e n d p o i n t = " k u b e - c o n t r o l l e r - m a n a g e r " ,   n a m e = " r e s o u r c e _ c l a i m " } )   t o   i d e n t i f y   a n y   b a c k l o g s   i n   t h e   R e s o u r c e C l a i m   c o n t r o l l e r . W o r k q u e u e   W o r k   D u r a t i o n :   O b s e r v e   h i s t o g r a m _ q u a n t i l e ( 0 . 9 9 ,   s u m ( r a t e ( w o r k q u e u e _ w o r k _ d u r a t i o n _ s e c o n d s _ b u c k e t { n a m e = " r e s o u r c e _ c l a i m " } [ 5 m ] ) )   b y   ( l e ) )   t o   u n d e r s t a n d   t h e   s p e e d   a t   w h i c h   t h e   R e s o u r c e C l a i m   c o n t r o l l e r   p r o c e s s e s   w o r k .   I f   y o u   a r e   e x p e r i e n c i n g   l o w   W o r k q u e u e   A d d   R a t e ,   h i g h   W o r k q u e u e   D e p t h ,   a n d / o r   h i g h   W o r k q u e u e   W o r k   D u r a t i o n ,   t h i s   s u g g e s t s   t h e   c o n t r o l l e r   i s n ' t   p e r f o r m i n g   o p t i m a l l y .   C o n s i d e r   t u n i n g   p a r a m e t e r s   l i k e   Q P S ,   b u r s t ,   a n d   C P U / m e m o r y   c o n f i g u r a t i o n s .   I f   y o u   a r e   e x p e r i e n c i n g   h i g h   W o r k e q u e u e   A d d   R a t e ,   h i g h   W o r k q u e u e   D e p t h ,   b u t   r e a s o n a b l e   W o r k q u e u e


Question: What is kube-scheduler metrics?

Answer: T h e   f o l l o w i n g   s c h e d u l e r   m e t r i c s   a r e   h i g h   l e v e l   m e t r i c s   a g g r e g a t i n g   p e r f o r m a n c e   a c r o s s   a l l   P o d s   s c h e d u l e d ,   n o t   j u s t   t h o s e   u s i n g   D R A .   I t   i s   i m p o r t a n t   t o   n o t e   t h a t   t h e   e n d - t o - e n d   m e t r i c s   a r e   u l t i m a t e l y   i n f l u e n c e d   b y   t h e   k u b e - c o n t r o l l e r - m a n a g e r ' s   p e r f o r m a n c e   i n   c r e a t i n g   R e s o u r c e C l a i m s   f r o m   R e s o u r c e C l a i n T e m p l a t e s   i n   d e p l o y m e n t s   t h a t   h e a v i l y   u s e   R e s o u r c e C l a i n T e m p l a t e s .   S c h e d u l e r   E n d - t o - E n d   D u r a t i o n :   M o n i t o r   h i s t o g r a m _ q u a n t i l e ( 0 . 9 9 ,   s u m ( i n c r e a s e ( s c h e d u l e r _ p o d _ s c h e d u l i n g _ s l i _ d u r a t i o n _ s e c o n d s _ b u c k e t [ 5 m ] ) )   b y   ( l e ) ) . S c h e d u l e r   A l g o r i t h m   L a t e n c y :   T r a c k   h i s t o g r a m _ q u a n t i l e ( 0 . 9 9 ,   s u m ( i n c r e a s e ( s c h e d u l e r _ s c h e d u l i n g _ a l g o r i t h m _ d u r a t i o n _ s e c o n d s _ b u c k e t [ 5 m ] ) )   b y   ( l e ) ) .


Question: What is kubelet metrics?

Answer: W h e n   a   P o d   b o u n d   t o   a   n o d e   m u s t   h a v e   a   R e s o u r c e C l a i m   s a t i s f i e d ,   k u b e l e t   c a l l s   t h e   N o d e P r e p a r e R e s o u r c e s   a n d   N o d e U n p r e p a r e R e s o u r c e s   m e t h o d s   o f   t h e   D R A   d r i v e r .   Y o u   c a n   o b s e r v e   t h i s   b e h a v i o r   f r o m   t h e   k u b e l e t ' s   p o i n t   o f   v i e w   w i t h   t h e   f o l l o w i n g   m e t r i c s .   K u b e l e t   N o d e P r e p a r e R e s o u r c e s :   M o n i t o r   h i s t o g r a m _ q u a n t i l e ( 0 . 9 9 ,   s u m ( r a t e ( d r a _ o p e r a t i o n s _ d u r a t i o n _ s e c o n d s _ b u c k e t { o p e r a t i o n _ n a m e = " P r e p a r e R e s o u r c e s " } [ 5 m ] ) )   b y   ( l e ) ) . K u b e l e t   N o d e U n p r e p a r e R e s o u r c e s :   T r a c k   h i s t o g r a m _ q u a n t i l e ( 0 . 9 9 ,   s u m ( r a t e ( d r a _ o p e r a t i o n s _ d u r a t i o n _ s e c o n d s _ b u c k e t { o p e r a t i o n _ n a m e = " U n p r e p a r e R e s o u r c e s " } [ 5 m ] ) )   b y   ( l e ) ) .


Question: What is DRA kubeletplugin operations?

Answer: D R A   d r i v e r s   i m p l e m e n t   t h e   k u b e l e t p l u g i n   p a c k a g e   i n t e r f a c e   w h i c h   s u r f a c e s   i t s   o w n   m e t r i c   f o r   t h e   u n d e r l y i n g   g R P C   o p e r a t i o n   N o d e P r e p a r e R e s o u r c e s   a n d   N o d e U n p r e p a r e R e s o u r c e s .   Y o u   c a n   o b s e r v e   t h i s   b e h a v i o r   f r o m   t h e   p o i n t   o f   v i e w   o f   t h e   i n t e r n a l   k u b e l e t p l u g i n   w i t h   t h e   f o l l o w i n g   m e t r i c s .   D R A   k u b e l e t p l u g i n   g R P C   N o d e P r e p a r e R e s o u r c e s   o p e r a t i o n :   O b s e r v e   h i s t o g r a m _ q u a n t i l e ( 0 . 9 9 ,   s u m ( r a t e ( d r a _ g r p c _ o p e r a t i o n s _ d u r a t i o n _ s e c o n d s _ b u c k e t { m e t h o d _ n a m e = ~ " . * N o d e P r e p a r e R e s o u r c e s " } [ 5 m ] ) )   b y   ( l e ) ) . D R A   k u b e l e t p l u g i n   g R P C   N o d e U n p r e p a r e R e s o u r c e s   o p e r a t i o n :   O b s e r v e   h i s t o g r a m _ q u a n t i l e ( 0 . 9 9 ,   s u m ( r a t e ( d r a _ g r p c _ o p e r a t i o n s _ d u r a t i o n _ s e c o n d s _ b u c k e t { m e t h o d _ n a m e = ~ " . * N o d e U n p r e p a r e R e s o u r c e s " } [ 5 m ] ) )   b y   ( l e ) ) .


Question: What is What's next?

Answer: L e a r n   m o r e   a b o u t   D R A R e a d   t h e   K u b e r n e t e s   M e t r i c s   R e f e r e n c e


Question: What is kubectl rollout restart?

Answer: kubectl rollout restartSynopsisRestart a resource. Resource rollout will be restarted. kubectl rollout restart RESOURCE Examples # Restart all deployments in the test-namespace namespace kubectl rollout restart deployment -n test-namespace # Restart a deployment kubectl rollout restart deployment/nginx # Restart a daemon set kubectl rollout restart daemonset/abc # Restart deployments with the app=nginx label kubectl rollout restart deployment --selector=app=nginx Options--allow-missing-template-keys Default: trueIf true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.--field-manager string Default: "kubectl-rollout"Name of the manager used to track field ownership.-f, --filename stringsFilename, directory, or URL to files identifying the resource to get from a server.-h, --helphelp for restart-k, --kustomize stringProcess the kustomization directory. This flag can't be used together with -f or -R.-o, --output stringOutput format. One of: (json, yaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).-R, --recursiveProcess the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.-l, --selector stringSelector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.--show-managed-fieldsIf true, keep the managedFields when printing objects in JSON or YAML format.--template stringTemplate string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].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-s


Question: How does kubectl rollout restart work?

Answer: kubectl rollout restartSynopsisRestart a resource. Resource rollout will be restarted. kubectl rollout restart RESOURCE Examples # Restart all deployments in the test-namespace namespace kubectl rollout restart deployment -n test-namespace # Restart a deployment kubectl rollout restart deployment/nginx # Restart a daemon set kubectl rollout restart daemonset/abc # Restart deployments with the app=nginx label kubectl rollout restart deployment --selector=app=nginx Options--allow-missing-template-keys Default: trueIf true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.--field-manager string Default: "kubectl-rollout"Name of the manager used to track field ownership.-f, --filename stringsFilename, directory, or URL to files identifying the resource to get from a server.-h, --helphelp for restart-k, --kustomize stringProcess the kustomization directory. This flag can't be used together with -f or -R.-o, --output stringOutput format. One of: (json, yaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).-R, --recursiveProcess the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.-l, --selector stringSelector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.--show-managed-fieldsIf true, keep the managedFields when printing objects in JSON or YAML format.--template stringTemplate string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].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-s


Question: When would you use kubectl rollout restart?

Answer: kubectl rollout restartSynopsisRestart a resource. Resource rollout will be restarted. kubectl rollout restart RESOURCE Examples # Restart all deployments in the test-namespace namespace kubectl rollout restart deployment -n test-namespace # Restart a deployment kubectl rollout restart deployment/nginx # Restart a daemon set kubectl rollout restart daemonset/abc # Restart deployments with the app=nginx label kubectl rollout restart deployment --selector=app=nginx Options--allow-missing-template-keys Default: trueIf true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.--field-manager string Default: "kubectl-rollout"Name of the manager used to track field ownership.-f, --filename stringsFilename, directory, or URL to files identifying the resource to get from a server.-h, --helphelp for restart-k, --kustomize stringProcess the kustomization directory. This flag can't be used together with -f or -R.-o, --output stringOutput format. One of: (json, yaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).-R, --recursiveProcess the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.-l, --selector stringSelector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.--show-managed-fieldsIf true, keep the managedFields when printing objects in JSON or YAML format.--template stringTemplate string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].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-s


Question: What are the benefits of kubectl rollout restart?

Answer: kubectl rollout restartSynopsisRestart a resource. Resource rollout will be restarted. kubectl rollout restart RESOURCE Examples # Restart all deployments in the test-namespace namespace kubectl rollout restart deployment -n test-namespace # Restart a deployment kubectl rollout restart deployment/nginx # Restart a daemon set kubectl rollout restart daemonset/abc # Restart deployments with the app=nginx label kubectl rollout restart deployment --selector=app=nginx Options--allow-missing-template-keys Default: trueIf true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.--field-manager string Default: "kubectl-rollout"Name of the manager used to track field ownership.-f, --filename stringsFilename, directory, or URL to files identifying the resource to get from a server.-h, --helphelp for restart-k, --kustomize stringProcess the kustomization directory. This flag can't be used together with -f or -R.-o, --output stringOutput format. One of: (json, yaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).-R, --recursiveProcess the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.-l, --selector stringSelector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.--show-managed-fieldsIf true, keep the managedFields when printing objects in JSON or YAML format.--template stringTemplate string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].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-s


Question: What is Synopsis?

Answer: R e s t a r t   a   r e s o u r c e .   R e s o u r c e   r o l l o u t   w i l l   b e   r e s t a r t e d .   k u b e c t l   r o l l o u t   r e s t a r t   R E S O U R C E


Question: What is Examples?

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


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


Question: What is Parent Options Inherited?

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


Question: What is See Also?

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


Question: What is Troubleshooting Clusters?

Answer: Troubleshooting ClustersDebugging common cluster issues.This doc is about cluster troubleshooting; we assume you have already ruled out your application as the root cause of the problem you are experiencing. See the application troubleshooting guide for tips on application debugging. You may also visit the troubleshooting overview document for more information.For troubleshooting kubectl, refer to Troubleshooting kubectl.Listing your clusterThe first thing to debug in your cluster is if your nodes are all registered correctly.Run the following command:kubectl get nodes And verify that all of the nodes you expect to see are present and that they are all in the Ready state.To get detailed information about the overall health of your cluster, you can run:kubectl cluster-info dump Example: debugging a down/unreachable nodeSometimes when debugging it can be useful to look at the status of a node -- for example, because you've noticed strange behavior of a Pod that's running on the node, or to find out why a Pod won't schedule onto the node. As with Pods, you can use kubectl describe node and kubectl get node -o yaml to retrieve detailed information about nodes. For example, here's what you'll see if a node is down (disconnected from the network, or kubelet dies and won't restart, etc.). Notice the events that show the node is NotReady, and also notice that the pods are no longer running (they are evicted after five minutes of NotReady status).kubectl get nodes NAME STATUS ROLES AGE VERSION kube-worker-1 NotReady <none> 1h v1.23.3 kubernetes-node-bols Ready <none> 1h v1.23.3 kubernetes-node-st6x Ready <none> 1h v1.23.3 kubernetes-node-unaj Ready <none> 1h v1.23.3 kubectl describe node kube-worker-1 Name: kube-worker-1 Roles: <none> Labels: beta.kubernetes.io/arch=amd64 beta.kubernetes.io/os=linux kubernetes.io/arch=amd64 kubernetes.io/hostname=kube-worker-1 kubernetes.io/os=linux node.alpha.kubernetes.io/ttl: 0 volumes.kubernetes.io/controller-managed-attach-detach: true CreationTimestamp: Thu, 17 Feb 2022 16:46:30 -0500 Taints: node.kubernetes.io/unreachable:NoExecute node.kubernetes.io/unreachable:NoSchedule Unschedulable: false Lease: HolderIdentity: kube-worker-1 AcquireTime: <unset> RenewTime: Thu, 17 Feb 2022 17:13:09 -0500 Conditions: Type Status LastHeartbeatTime LastTransitionTime Reason Message ---- ------ ----------------- ------------------ ------ ------- NetworkUnavailable False Thu, 17 Feb 2022 17:09:13 -0500 Thu, 17 Feb 2022 17:09:13 -0500 WeaveIsUp Weave pod has set this MemoryPressure Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17 Feb 2022 17:13:52 -0500 NodeStatusUnknown Kubelet stopped posting node status. DiskPressure Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17 Feb 2022 17:13:52 -0500 NodeStatusUnknown Kubelet stopped posting node status. PIDPressure Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17 Feb 2022 17:13:52 -0500 NodeStatusUnknown Kubelet stopped posting node status. Ready Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17


Question: How does Troubleshooting Clusters work?

Answer: Troubleshooting ClustersDebugging common cluster issues.This doc is about cluster troubleshooting; we assume you have already ruled out your application as the root cause of the problem you are experiencing. See the application troubleshooting guide for tips on application debugging. You may also visit the troubleshooting overview document for more information.For troubleshooting kubectl, refer to Troubleshooting kubectl.Listing your clusterThe first thing to debug in your cluster is if your nodes are all registered correctly.Run the following command:kubectl get nodes And verify that all of the nodes you expect to see are present and that they are all in the Ready state.To get detailed information about the overall health of your cluster, you can run:kubectl cluster-info dump Example: debugging a down/unreachable nodeSometimes when debugging it can be useful to look at the status of a node -- for example, because you've noticed strange behavior of a Pod that's running on the node, or to find out why a Pod won't schedule onto the node. As with Pods, you can use kubectl describe node and kubectl get node -o yaml to retrieve detailed information about nodes. For example, here's what you'll see if a node is down (disconnected from the network, or kubelet dies and won't restart, etc.). Notice the events that show the node is NotReady, and also notice that the pods are no longer running (they are evicted after five minutes of NotReady status).kubectl get nodes NAME STATUS ROLES AGE VERSION kube-worker-1 NotReady <none> 1h v1.23.3 kubernetes-node-bols Ready <none> 1h v1.23.3 kubernetes-node-st6x Ready <none> 1h v1.23.3 kubernetes-node-unaj Ready <none> 1h v1.23.3 kubectl describe node kube-worker-1 Name: kube-worker-1 Roles: <none> Labels: beta.kubernetes.io/arch=amd64 beta.kubernetes.io/os=linux kubernetes.io/arch=amd64 kubernetes.io/hostname=kube-worker-1 kubernetes.io/os=linux node.alpha.kubernetes.io/ttl: 0 volumes.kubernetes.io/controller-managed-attach-detach: true CreationTimestamp: Thu, 17 Feb 2022 16:46:30 -0500 Taints: node.kubernetes.io/unreachable:NoExecute node.kubernetes.io/unreachable:NoSchedule Unschedulable: false Lease: HolderIdentity: kube-worker-1 AcquireTime: <unset> RenewTime: Thu, 17 Feb 2022 17:13:09 -0500 Conditions: Type Status LastHeartbeatTime LastTransitionTime Reason Message ---- ------ ----------------- ------------------ ------ ------- NetworkUnavailable False Thu, 17 Feb 2022 17:09:13 -0500 Thu, 17 Feb 2022 17:09:13 -0500 WeaveIsUp Weave pod has set this MemoryPressure Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17 Feb 2022 17:13:52 -0500 NodeStatusUnknown Kubelet stopped posting node status. DiskPressure Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17 Feb 2022 17:13:52 -0500 NodeStatusUnknown Kubelet stopped posting node status. PIDPressure Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17 Feb 2022 17:13:52 -0500 NodeStatusUnknown Kubelet stopped posting node status. Ready Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17


Question: When would you use Troubleshooting Clusters?

Answer: Troubleshooting ClustersDebugging common cluster issues.This doc is about cluster troubleshooting; we assume you have already ruled out your application as the root cause of the problem you are experiencing. See the application troubleshooting guide for tips on application debugging. You may also visit the troubleshooting overview document for more information.For troubleshooting kubectl, refer to Troubleshooting kubectl.Listing your clusterThe first thing to debug in your cluster is if your nodes are all registered correctly.Run the following command:kubectl get nodes And verify that all of the nodes you expect to see are present and that they are all in the Ready state.To get detailed information about the overall health of your cluster, you can run:kubectl cluster-info dump Example: debugging a down/unreachable nodeSometimes when debugging it can be useful to look at the status of a node -- for example, because you've noticed strange behavior of a Pod that's running on the node, or to find out why a Pod won't schedule onto the node. As with Pods, you can use kubectl describe node and kubectl get node -o yaml to retrieve detailed information about nodes. For example, here's what you'll see if a node is down (disconnected from the network, or kubelet dies and won't restart, etc.). Notice the events that show the node is NotReady, and also notice that the pods are no longer running (they are evicted after five minutes of NotReady status).kubectl get nodes NAME STATUS ROLES AGE VERSION kube-worker-1 NotReady <none> 1h v1.23.3 kubernetes-node-bols Ready <none> 1h v1.23.3 kubernetes-node-st6x Ready <none> 1h v1.23.3 kubernetes-node-unaj Ready <none> 1h v1.23.3 kubectl describe node kube-worker-1 Name: kube-worker-1 Roles: <none> Labels: beta.kubernetes.io/arch=amd64 beta.kubernetes.io/os=linux kubernetes.io/arch=amd64 kubernetes.io/hostname=kube-worker-1 kubernetes.io/os=linux node.alpha.kubernetes.io/ttl: 0 volumes.kubernetes.io/controller-managed-attach-detach: true CreationTimestamp: Thu, 17 Feb 2022 16:46:30 -0500 Taints: node.kubernetes.io/unreachable:NoExecute node.kubernetes.io/unreachable:NoSchedule Unschedulable: false Lease: HolderIdentity: kube-worker-1 AcquireTime: <unset> RenewTime: Thu, 17 Feb 2022 17:13:09 -0500 Conditions: Type Status LastHeartbeatTime LastTransitionTime Reason Message ---- ------ ----------------- ------------------ ------ ------- NetworkUnavailable False Thu, 17 Feb 2022 17:09:13 -0500 Thu, 17 Feb 2022 17:09:13 -0500 WeaveIsUp Weave pod has set this MemoryPressure Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17 Feb 2022 17:13:52 -0500 NodeStatusUnknown Kubelet stopped posting node status. DiskPressure Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17 Feb 2022 17:13:52 -0500 NodeStatusUnknown Kubelet stopped posting node status. PIDPressure Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17 Feb 2022 17:13:52 -0500 NodeStatusUnknown Kubelet stopped posting node status. Ready Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17


Question: What are the benefits of Troubleshooting Clusters?

Answer: Troubleshooting ClustersDebugging common cluster issues.This doc is about cluster troubleshooting; we assume you have already ruled out your application as the root cause of the problem you are experiencing. See the application troubleshooting guide for tips on application debugging. You may also visit the troubleshooting overview document for more information.For troubleshooting kubectl, refer to Troubleshooting kubectl.Listing your clusterThe first thing to debug in your cluster is if your nodes are all registered correctly.Run the following command:kubectl get nodes And verify that all of the nodes you expect to see are present and that they are all in the Ready state.To get detailed information about the overall health of your cluster, you can run:kubectl cluster-info dump Example: debugging a down/unreachable nodeSometimes when debugging it can be useful to look at the status of a node -- for example, because you've noticed strange behavior of a Pod that's running on the node, or to find out why a Pod won't schedule onto the node. As with Pods, you can use kubectl describe node and kubectl get node -o yaml to retrieve detailed information about nodes. For example, here's what you'll see if a node is down (disconnected from the network, or kubelet dies and won't restart, etc.). Notice the events that show the node is NotReady, and also notice that the pods are no longer running (they are evicted after five minutes of NotReady status).kubectl get nodes NAME STATUS ROLES AGE VERSION kube-worker-1 NotReady <none> 1h v1.23.3 kubernetes-node-bols Ready <none> 1h v1.23.3 kubernetes-node-st6x Ready <none> 1h v1.23.3 kubernetes-node-unaj Ready <none> 1h v1.23.3 kubectl describe node kube-worker-1 Name: kube-worker-1 Roles: <none> Labels: beta.kubernetes.io/arch=amd64 beta.kubernetes.io/os=linux kubernetes.io/arch=amd64 kubernetes.io/hostname=kube-worker-1 kubernetes.io/os=linux node.alpha.kubernetes.io/ttl: 0 volumes.kubernetes.io/controller-managed-attach-detach: true CreationTimestamp: Thu, 17 Feb 2022 16:46:30 -0500 Taints: node.kubernetes.io/unreachable:NoExecute node.kubernetes.io/unreachable:NoSchedule Unschedulable: false Lease: HolderIdentity: kube-worker-1 AcquireTime: <unset> RenewTime: Thu, 17 Feb 2022 17:13:09 -0500 Conditions: Type Status LastHeartbeatTime LastTransitionTime Reason Message ---- ------ ----------------- ------------------ ------ ------- NetworkUnavailable False Thu, 17 Feb 2022 17:09:13 -0500 Thu, 17 Feb 2022 17:09:13 -0500 WeaveIsUp Weave pod has set this MemoryPressure Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17 Feb 2022 17:13:52 -0500 NodeStatusUnknown Kubelet stopped posting node status. DiskPressure Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17 Feb 2022 17:13:52 -0500 NodeStatusUnknown Kubelet stopped posting node status. PIDPressure Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17 Feb 2022 17:13:52 -0500 NodeStatusUnknown Kubelet stopped posting node status. Ready Unknown Thu, 17 Feb 2022 17:12:40 -0500 Thu, 17


Question: What is Troubleshooting Clusters?

Answer: T h i s   d o c   i s   a b o u t   c l u s t e r   t r o u b l e s h o o t i n g ;   w e   a s s u m e   y o u   h a v e   a l r e a d y   r u l e d   o u t   y o u r   a p p l i c a t i o n   a s   t h e   r o o t   c a u s e   o f   t h e   p r o b l e m   y o u   a r e   e x p e r i e n c i n g .   S e e   t h e   a p p l i c a t i o n   t r o u b l e s h o o t i n g   g u i d e   f o r   t i p s   o n   a p p l i c a t i o n   d e b u g g i n g .   Y o u   m a y   a l s o   v i s i t   t h e   t r o u b l e s h o o t i n g   o v e r v i e w   d o c u m e n t   f o r   m o r e   i n f o r m a t i o n .   F o r   t r o u b l e s h o o t i n g   k u b e c t l ,   r e f e r   t o   T r o u b l e s h o o t i n g   k u b e c t l .


Question: What is Listing your cluster?

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


Question: What is Example: debugging a down/unreachable node?

Answer: S o m e t i m e s   w h e n   d e b u g g i n g   i t   c a n   b e   u s e f u l   t o   l o o k   a t   t h e   s t a t u s   o f   a   n o d e   - -   f o r   e x a m p l e ,   b e c a u s e   y o u ' v e   n o t i c e d   s t r a n g e   b e h a v i o r   o f   a   P o d   t h a t ' s   r u n n i n g   o n   t h e   n o d e ,   o r   t o   f i n d   o u t   w h y   a   P o d   w o n ' t   s c h e d u l e   o n t o   t h e   n o d e .   A s   w i t h   P o d s ,   y o u   c a n   u s e   k u b e c t l   d e s c r i b e   n o d e   a n d   k u b e c t l   g e t   n o d e   - o   y a m l   t o   r e t r i e v e   d e t a i l e d   i n f o r m a t i o n   a b o u t   n o d e s .   F o r   e x a m p l e ,   h e r e ' s   w h a t   y o u ' l l   s e e   i f   a   n o d e   i s   d o w n   ( d i s c o n n e c t e d   f r o m   t h e   n e t w o r k ,   o r   k u b e l e t   d i e s   a n d   w o n ' t   r e s t a r t ,   e t c . ) .   N o t i c e   t h e   e v e n t s   t h a t   s h o w   t h e   n o d e   i s   N o t R e a d y ,   a n d   a l s o   n o t i c e   t h a t   t h e   p o d s   a r e   n o   l o n g e r   r u n n i n g   ( t h e y   a r e   e v i c t e d   a f t e r   f i v e   m i n u t e s   o f   N o t R e a d y   s t a t u s ) .   k u b e c t l   g e t   n o d e s   N A M E   S T A T U S   R O L E S   A G E   V E R S I O N   k u b e - w o r k e r - 1   N o t R e a d y   < n o n e >   1 h   v 1 . 2 3 . 3   k u b e r n e t e s - n o d e - b o l s   R e a d y   < n o n e >   1 h   v 1 . 2 3 . 3   k u b e r n e t e s - n o d e - s t 6 x   R e a d y   < n o n e >   1 h   v 1 . 2 3 . 3   k u b e r n e t e s - n o d e - u n a j   R e a d y   < n o n e >   1 h   v 1 . 2 3 . 3   k u b e c t l   d e s c r i b e   n o d e   k u b e - w o r k e r - 1   N a m e :   k u b e - w o r k e r - 1   R o l e s :   < n o n e >   L a b e l s :   b e t a . k u b e r n e t e s . i o / a r c h = a m d 6 4   b e t a . k u b e r n e t e s . i o / o s = l i n u x   k u b e r n e


Question: What is Looking at logs?

Answer: F o r   n o w ,   d i g g i n g   d e e p e r   i n t o   t h e   c l u s t e r   r e q u i r e s   l o g g i n g   i n t o   t h e   r e l e v a n t   m a c h i n e s .   H e r e   a r e   t h e   l o c a t i o n s   o f   t h e   r e l e v a n t   l o g   f i l e s .   O n   s y s t e m d - b a s e d   s y s t e m s ,   y o u   m a y   n e e d   t o   u s e   j o u r n a l c t l   i n s t e a d   o f   e x a m i n i n g   l o g   f i l e s .


Question: What is Control Plane nodes?

Answer: / v a r / l o g / k u b e - a p i s e r v e r . l o g   -   A P I   S e r v e r ,   r e s p o n s i b l e   f o r   s e r v i n g   t h e   A P I / v a r / l o g / k u b e - s c h e d u l e r . l o g   -   S c h e d u l e r ,   r e s p o n s i b l e   f o r   m a k i n g   s c h e d u l i n g   d e c i s i o n s / v a r / l o g / k u b e - c o n t r o l l e r - m a n a g e r . l o g   -   a   c o m p o n e n t   t h a t   r u n s   m o s t   K u b e r n e t e s   b u i l t - i n   c o n t r o l l e r s ,   w i t h   t h e   n o t a b l e   e x c e p t i o n   o f   s c h e d u l i n g   ( t h e   k u b e - s c h e d u l e r   h a n d l e s   s c h e d u l i n g ) .


Question: What is Worker Nodes?

Answer: / v a r / l o g / k u b e l e t . l o g   -   l o g s   f r o m   t h e   k u b e l e t ,   r e s p o n s i b l e   f o r   r u n n i n g   c o n t a i n e r s   o n   t h e   n o d e / v a r / l o g / k u b e - p r o x y . l o g   -   l o g s   f r o m   k u b e - p r o x y ,   w h i c h   i s   r e s p o n s i b l e   f o r   d i r e c t i n g   t r a f f i c   t o   S e r v i c e   e n d p o i n t s


Question: What is Cluster failure modes?

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


Question: What is Contributing causes?

Answer: V M ( s )   s h u t d o w n N e t w o r k   p a r t i t i o n   w i t h i n   c l u s t e r ,   o r   b e t w e e n   c l u s t e r   a n d   u s e r s C r a s h e s   i n   K u b e r n e t e s   s o f t w a r e D a t a   l o s s   o r   u n a v a i l a b i l i t y   o f   p e r s i s t e n t   s t o r a g e   ( e . g .   G C E   P D   o r   A W S   E B S   v o l u m e ) O p e r a t o r   e r r o r ,   f o r   e x a m p l e ,   m i s c o n f i g u r e d   K u b e r n e t e s   s o f t w a r e   o r   a p p l i c a t i o n   s o f t w a r e


Question: What is Specific scenarios?

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


Question: What is Mitigations?

Answer: A c t i o n :   U s e   t h e   I a a S   p r o v i d e r ' s   a u t o m a t i c   V M   r e s t a r t i n g   f e a t u r e   f o r   I a a S   V M s M i t i g a t e s :   A p i s e r v e r   V M   s h u t d o w n   o r   a p i s e r v e r   c r a s h i n g M i t i g a t e s :   S u p p o r t i n g   s e r v i c e s   V M   s h u t d o w n   o r   c r a s h e s A c t i o n :   U s e   I a a S   p r o v i d e r s   r e l i a b l e   s t o r a g e   ( e . g .   G C E   P D   o r   A W S   E B S   v o l u m e )   f o r   V M s   w i t h   a p i s e r v e r + e t c d M i t i g a t e s :   A p i s e r v e r   b a c k i n g   s t o r a g e   l o s t A c t i o n :   U s e   h i g h - a v a i l a b i l i t y   c o n f i g u r a t i o n M i t i g a t e s :   C o n t r o l   p l a n e   n o d e   s h u t d o w n   o r   c o n t r o l   p l a n e   c o m p o n e n t s   ( s c h e d u l e r ,   A P I   s e r v e r ,   c o n t r o l l e r - m a n a g e r )   c r a s h i n g W i l l   t o l e r a t e   o n e   o r   m o r e   s i m u l t a n e o u s   n o d e   o r   c o m p o n e n t   f a i l u r e s M i t i g a t e s :   A P I   s e r v e r   b a c k i n g   s t o r a g e   ( i . e . ,   e t c d ' s   d a t a   d i r e c t o r y )   l o s t A s s u m e s   H A   ( h i g h l y - a v a i l a b l e )   e t c d   c o n f i g u r a t i o n A c t i o n :   S n a p s h o t   a p i s e r v e r   P D s / E B S - v o l u m e s   p e r i o d i c a l l y M i t i g a t e s :   A p i s e r v e r   b a c k i n g   s t o r a g e   l o s t M i t i g a t e s :   S o m e   c a s e s   o f   o p e r a t o r   e r r o r M i t i g a t e s :   S o m e   c a s e s   o f   K u b e r n e t e s   s o f t w a r e   f a u l t A c t i o n :   u s e   r e p l i c a t i o n   c o n t r o l l e r   a n d   s e r v i c e s   i n   f r o n t   o f   p o d s M i t i g a t e s :   N o d e   s h u t d o w n M i t i g a t e s :   K u b e l e t   s o f t w a r e   f a u l t A c t i o n :   a p p l i c a t i o n s


Question: What is What's next?

Answer: L e a r n   a b o u t   t h e   m e t r i c s   a v a i l a b l e   i n   t h e   R e s o u r c e   M e t r i c s   P i p e l i n e D i s c o v e r   a d d i t i o n a l   t o o l s   f o r   m o n i t o r i n g   r e s o u r c e   u s a g e U s e   N o d e   P r o b l e m   D e t e c t o r   t o   m o n i t o r   n o d e   h e a l t h U s e   k u b e c t l   d e b u g   n o d e   t o   d e b u g   K u b e r n e t e s   n o d e s U s e   c r i c t l   t o   d e b u g   K u b e r n e t e s   n o d e s G e t   m o r e   i n f o r m a t i o n   a b o u t   K u b e r n e t e s   a u d i t i n g U s e   t e l e p r e s e n c e   t o   d e v e l o p   a n d   d e b u g   s e r v i c e s   l o c a l l y


Question: What is Kubernetes Custom Metrics (v1beta2)?

Answer: Kubernetes Custom Metrics (v1beta2)Package v1beta2 is the v1beta2 version of the custom_metrics API.Resource TypesMetricListOptionsMetricValueMetricValueListMetricListOptionsMetricListOptions is used to select metrics by their label selectorsFieldDescriptionapiVersionstringcustom.metrics.k8s.io/v1beta2kindstringMetricListOptionslabelSelectorstringA selector to restrict the list of returned objects by their labels. Defaults to everything.metricLabelSelectorstringA selector to restrict the list of returned metrics by their labelsMetricValueAppears in:MetricValueListMetricValue is the metric value for some objectFieldDescriptionapiVersionstringcustom.metrics.k8s.io/v1beta2kindstringMetricValuedescribedObject [Required]core/v1.ObjectReferencea reference to the described objectmetric [Required]MetricIdentifierNo description provided.timestamp [Required]meta/v1.Timeindicates the time at which the metrics were producedwindowSeconds [Required]int64indicates the window ([Timestamp-Window, Timestamp]) from which these metrics were calculated, when returning rate metrics calculated from cumulative metrics (or zero for non-calculated instantaneous metrics).value [Required]k8s.io/apimachinery/pkg/api/resource.Quantitythe value of the metric for thisMetricValueListMetricValueList is a list of values for a given metric for some set of objectsFieldDescriptionapiVersionstringcustom.metrics.k8s.io/v1beta2kindstringMetricValueListmetadata [Required]meta/v1.ListMetaNo description provided.items [Required][]MetricValuethe value of the metric across the described objectsMetricIdentifierAppears in:MetricValueMetricIdentifier identifies a metric by name and, optionally, selectorFieldDescriptionname [Required]stringname is the name of the given metricselectormeta/v1.LabelSelectorselector represents the label selector that could be used to select this metric, and will generally just be the selector passed in to the query used to fetch this metric. When left blank, only the metric's Name will be used to gather metrics.This page is automatically generated.If you plan to report an issue with this page, mention that the page is auto-generated in your issue description. The fix may need to happen elsewhere in the Kubernetes project.


Question: How does Kubernetes Custom Metrics (v1beta2) work?

Answer: Kubernetes Custom Metrics (v1beta2)Package v1beta2 is the v1beta2 version of the custom_metrics API.Resource TypesMetricListOptionsMetricValueMetricValueListMetricListOptionsMetricListOptions is used to select metrics by their label selectorsFieldDescriptionapiVersionstringcustom.metrics.k8s.io/v1beta2kindstringMetricListOptionslabelSelectorstringA selector to restrict the list of returned objects by their labels. Defaults to everything.metricLabelSelectorstringA selector to restrict the list of returned metrics by their labelsMetricValueAppears in:MetricValueListMetricValue is the metric value for some objectFieldDescriptionapiVersionstringcustom.metrics.k8s.io/v1beta2kindstringMetricValuedescribedObject [Required]core/v1.ObjectReferencea reference to the described objectmetric [Required]MetricIdentifierNo description provided.timestamp [Required]meta/v1.Timeindicates the time at which the metrics were producedwindowSeconds [Required]int64indicates the window ([Timestamp-Window, Timestamp]) from which these metrics were calculated, when returning rate metrics calculated from cumulative metrics (or zero for non-calculated instantaneous metrics).value [Required]k8s.io/apimachinery/pkg/api/resource.Quantitythe value of the metric for thisMetricValueListMetricValueList is a list of values for a given metric for some set of objectsFieldDescriptionapiVersionstringcustom.metrics.k8s.io/v1beta2kindstringMetricValueListmetadata [Required]meta/v1.ListMetaNo description provided.items [Required][]MetricValuethe value of the metric across the described objectsMetricIdentifierAppears in:MetricValueMetricIdentifier identifies a metric by name and, optionally, selectorFieldDescriptionname [Required]stringname is the name of the given metricselectormeta/v1.LabelSelectorselector represents the label selector that could be used to select this metric, and will generally just be the selector passed in to the query used to fetch this metric. When left blank, only the metric's Name will be used to gather metrics.This page is automatically generated.If you plan to report an issue with this page, mention that the page is auto-generated in your issue description. The fix may need to happen elsewhere in the Kubernetes project.


Question: When would you use Kubernetes Custom Metrics (v1beta2)?

Answer: Kubernetes Custom Metrics (v1beta2)Package v1beta2 is the v1beta2 version of the custom_metrics API.Resource TypesMetricListOptionsMetricValueMetricValueListMetricListOptionsMetricListOptions is used to select metrics by their label selectorsFieldDescriptionapiVersionstringcustom.metrics.k8s.io/v1beta2kindstringMetricListOptionslabelSelectorstringA selector to restrict the list of returned objects by their labels. Defaults to everything.metricLabelSelectorstringA selector to restrict the list of returned metrics by their labelsMetricValueAppears in:MetricValueListMetricValue is the metric value for some objectFieldDescriptionapiVersionstringcustom.metrics.k8s.io/v1beta2kindstringMetricValuedescribedObject [Required]core/v1.ObjectReferencea reference to the described objectmetric [Required]MetricIdentifierNo description provided.timestamp [Required]meta/v1.Timeindicates the time at which the metrics were producedwindowSeconds [Required]int64indicates the window ([Timestamp-Window, Timestamp]) from which these metrics were calculated, when returning rate metrics calculated from cumulative metrics (or zero for non-calculated instantaneous metrics).value [Required]k8s.io/apimachinery/pkg/api/resource.Quantitythe value of the metric for thisMetricValueListMetricValueList is a list of values for a given metric for some set of objectsFieldDescriptionapiVersionstringcustom.metrics.k8s.io/v1beta2kindstringMetricValueListmetadata [Required]meta/v1.ListMetaNo description provided.items [Required][]MetricValuethe value of the metric across the described objectsMetricIdentifierAppears in:MetricValueMetricIdentifier identifies a metric by name and, optionally, selectorFieldDescriptionname [Required]stringname is the name of the given metricselectormeta/v1.LabelSelectorselector represents the label selector that could be used to select this metric, and will generally just be the selector passed in to the query used to fetch this metric. When left blank, only the metric's Name will be used to gather metrics.This page is automatically generated.If you plan to report an issue with this page, mention that the page is auto-generated in your issue description. The fix may need to happen elsewhere in the Kubernetes project.


Question: What are the benefits of Kubernetes Custom Metrics (v1beta2)?

Answer: Kubernetes Custom Metrics (v1beta2)Package v1beta2 is the v1beta2 version of the custom_metrics API.Resource TypesMetricListOptionsMetricValueMetricValueListMetricListOptionsMetricListOptions is used to select metrics by their label selectorsFieldDescriptionapiVersionstringcustom.metrics.k8s.io/v1beta2kindstringMetricListOptionslabelSelectorstringA selector to restrict the list of returned objects by their labels. Defaults to everything.metricLabelSelectorstringA selector to restrict the list of returned metrics by their labelsMetricValueAppears in:MetricValueListMetricValue is the metric value for some objectFieldDescriptionapiVersionstringcustom.metrics.k8s.io/v1beta2kindstringMetricValuedescribedObject [Required]core/v1.ObjectReferencea reference to the described objectmetric [Required]MetricIdentifierNo description provided.timestamp [Required]meta/v1.Timeindicates the time at which the metrics were producedwindowSeconds [Required]int64indicates the window ([Timestamp-Window, Timestamp]) from which these metrics were calculated, when returning rate metrics calculated from cumulative metrics (or zero for non-calculated instantaneous metrics).value [Required]k8s.io/apimachinery/pkg/api/resource.Quantitythe value of the metric for thisMetricValueListMetricValueList is a list of values for a given metric for some set of objectsFieldDescriptionapiVersionstringcustom.metrics.k8s.io/v1beta2kindstringMetricValueListmetadata [Required]meta/v1.ListMetaNo description provided.items [Required][]MetricValuethe value of the metric across the described objectsMetricIdentifierAppears in:MetricValueMetricIdentifier identifies a metric by name and, optionally, selectorFieldDescriptionname [Required]stringname is the name of the given metricselectormeta/v1.LabelSelectorselector represents the label selector that could be used to select this metric, and will generally just be the selector passed in to the query used to fetch this metric. When left blank, only the metric's Name will be used to gather metrics.This page is automatically generated.If you plan to report an issue with this page, mention that the page is auto-generated in your issue description. The fix may need to happen elsewhere in the Kubernetes project.


Question: What is Kubernetes Custom Metrics (v1beta2)?

Answer: P a c k a g e   v 1 b e t a 2   i s   t h e   v 1 b e t a 2   v e r s i o n   o f   t h e   c u s t o m _ m e t r i c s   A P I .


Question: What is Resource Types?

Answer: M e t r i c L i s t O p t i o n s M e t r i c V a l u e M e t r i c V a l u e L i s t


Question: What is MetricListOptions?

Answer: M e t r i c L i s t O p t i o n s   i s   u s e d   t o   s e l e c t   m e t r i c s   b y   t h e i r   l a b e l   s e l e c t o r s   A   s e l e c t o r   t o   r e s t r i c t   t h e   l i s t   o f   r e t u r n e d   o b j e c t s   b y   t h e i r   l a b e l s .   D e f a u l t s   t o   e v e r y t h i n g .   A   s e l e c t o r   t o   r e s t r i c t   t h e   l i s t   o f   r e t u r n e d   m e t r i c s   b y   t h e i r   l a b e l s


Question: What is MetricValue?

Answer: A p p e a r s   i n :   M e t r i c V a l u e L i s t   M e t r i c V a l u e   i s   t h e   m e t r i c   v a l u e   f o r   s o m e   o b j e c t   a   r e f e r e n c e   t o   t h e   d e s c r i b e d   o b j e c t   i n d i c a t e s   t h e   t i m e   a t   w h i c h   t h e   m e t r i c s   w e r e   p r o d u c e d   i n d i c a t e s   t h e   w i n d o w   ( [ T i m e s t a m p - W i n d o w ,   T i m e s t a m p ] )   f r o m   w h i c h   t h e s e   m e t r i c s   w e r e   c a l c u l a t e d ,   w h e n   r e t u r n i n g   r a t e   m e t r i c s   c a l c u l a t e d   f r o m   c u m u l a t i v e   m e t r i c s   ( o r   z e r o   f o r   n o n - c a l c u l a t e d   i n s t a n t a n e o u s   m e t r i c s ) .   t h e   v a l u e   o f   t h e   m e t r i c   f o r   t h i s


Question: What is MetricValueList?

Answer: M e t r i c V a l u e L i s t   i s   a   l i s t   o f   v a l u e s   f o r   a   g i v e n   m e t r i c   f o r   s o m e   s e t   o f   o b j e c t s   t h e   v a l u e   o f   t h e   m e t r i c   a c r o s s   t h e   d e s c r i b e d   o b j e c t s


Question: What is MetricIdentifier?

Answer: A p p e a r s   i n :   M e t r i c V a l u e   M e t r i c I d e n t i f i e r   i d e n t i f i e s   a   m e t r i c   b y   n a m e   a n d ,   o p t i o n a l l y ,   s e l e c t o r   n a m e   i s   t h e   n a m e   o f   t h e   g i v e n   m e t r i c   s e l e c t o r   r e p r e s e n t s   t h e   l a b e l   s e l e c t o r   t h a t   c o u l d   b e   u s e d   t o   s e l e c t   t h i s   m e t r i c ,   a n d   w i l l   g e n e r a l l y   j u s t   b e   t h e   s e l e c t o r   p a s s e d   i n   t o   t h e   q u e r y   u s e d   t o   f e t c h   t h i s   m e t r i c .   W h e n   l e f t   b l a n k ,   o n l y   t h e   m e t r i c ' s   N a m e   w i l l   b e   u s e d   t o   g a t h e r   m e t r i c s .   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 kube-apiserver Configuration (v1alpha1)?

Answer: kube-apiserver Configuration (v1alpha1)Package v1alpha1 is the v1alpha1 version of the API.Resource TypesAdmissionConfigurationAuthenticationConfigurationAuthorizationConfigurationEgressSelectorConfigurationTracingConfigurationTracingConfigurationAppears in:KubeletConfigurationTracingConfigurationTracingConfiguration provides versioned configuration for OpenTelemetry tracing clients.FieldDescriptionendpointstringEndpoint of the collector this component will report traces to. The connection is insecure, and does not currently support TLS. Recommended is unset, and endpoint is the otlp grpc default, localhost:4317.samplingRatePerMillionint32SamplingRatePerMillion is the number of samples to collect per million spans. Recommended is unset. If unset, sampler respects its parent span's sampling rate, but otherwise never samples.AdmissionConfigurationAdmissionConfiguration provides versioned configuration for admission controllers.FieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringAdmissionConfigurationplugins[]AdmissionPluginConfigurationPlugins allows specifying a configuration per admission control plugin.AuthenticationConfigurationAuthenticationConfiguration provides versioned configuration for authentication.FieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringAuthenticationConfigurationjwt [Required][]JWTAuthenticatorjwt is a list of authenticator to authenticate Kubernetes users using JWT compliant tokens. The authenticator will attempt to parse a raw ID token, verify it's been signed by the configured issuer. The public key to verify the signature is discovered from the issuer's public endpoint using OIDC discovery. For an incoming token, each JWT authenticator will be attempted in the order in which it is specified in this list. Note however that other authenticators may run before or after the JWT authenticators. The specific position of JWT authenticators in relation to other authenticators is neither defined nor stable across releases. Since each JWT authenticator must have a unique issuer URL, at most one JWT authenticator will attempt to cryptographically validate the token.The minimum valid JWT payload must contain the following claims: { "iss": "https://issuer.example.com", "aud": ["audience"], "exp": 1234567890, "": "username" }anonymous [Required]AnonymousAuthConfigIf present --anonymous-auth must not be setAuthorizationConfigurationFieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringAuthorizationConfigurationauthorizers [Required][]AuthorizerConfigurationAuthorizers is an ordered list of authorizers to authorize requests against. This is similar to the --authorization-modes kube-apiserver flag Must be at least one.EgressSelectorConfigurationEgressSelectorConfiguration provides versioned configuration for egress selector clients.FieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringEgressSelectorConfigurationegressSelections [Required][]EgressSelectionconnectionServices contain


Question: How does kube-apiserver Configuration (v1alpha1) work?

Answer: kube-apiserver Configuration (v1alpha1)Package v1alpha1 is the v1alpha1 version of the API.Resource TypesAdmissionConfigurationAuthenticationConfigurationAuthorizationConfigurationEgressSelectorConfigurationTracingConfigurationTracingConfigurationAppears in:KubeletConfigurationTracingConfigurationTracingConfiguration provides versioned configuration for OpenTelemetry tracing clients.FieldDescriptionendpointstringEndpoint of the collector this component will report traces to. The connection is insecure, and does not currently support TLS. Recommended is unset, and endpoint is the otlp grpc default, localhost:4317.samplingRatePerMillionint32SamplingRatePerMillion is the number of samples to collect per million spans. Recommended is unset. If unset, sampler respects its parent span's sampling rate, but otherwise never samples.AdmissionConfigurationAdmissionConfiguration provides versioned configuration for admission controllers.FieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringAdmissionConfigurationplugins[]AdmissionPluginConfigurationPlugins allows specifying a configuration per admission control plugin.AuthenticationConfigurationAuthenticationConfiguration provides versioned configuration for authentication.FieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringAuthenticationConfigurationjwt [Required][]JWTAuthenticatorjwt is a list of authenticator to authenticate Kubernetes users using JWT compliant tokens. The authenticator will attempt to parse a raw ID token, verify it's been signed by the configured issuer. The public key to verify the signature is discovered from the issuer's public endpoint using OIDC discovery. For an incoming token, each JWT authenticator will be attempted in the order in which it is specified in this list. Note however that other authenticators may run before or after the JWT authenticators. The specific position of JWT authenticators in relation to other authenticators is neither defined nor stable across releases. Since each JWT authenticator must have a unique issuer URL, at most one JWT authenticator will attempt to cryptographically validate the token.The minimum valid JWT payload must contain the following claims: { "iss": "https://issuer.example.com", "aud": ["audience"], "exp": 1234567890, "": "username" }anonymous [Required]AnonymousAuthConfigIf present --anonymous-auth must not be setAuthorizationConfigurationFieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringAuthorizationConfigurationauthorizers [Required][]AuthorizerConfigurationAuthorizers is an ordered list of authorizers to authorize requests against. This is similar to the --authorization-modes kube-apiserver flag Must be at least one.EgressSelectorConfigurationEgressSelectorConfiguration provides versioned configuration for egress selector clients.FieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringEgressSelectorConfigurationegressSelections [Required][]EgressSelectionconnectionServices contain


Question: When would you use kube-apiserver Configuration (v1alpha1)?

Answer: kube-apiserver Configuration (v1alpha1)Package v1alpha1 is the v1alpha1 version of the API.Resource TypesAdmissionConfigurationAuthenticationConfigurationAuthorizationConfigurationEgressSelectorConfigurationTracingConfigurationTracingConfigurationAppears in:KubeletConfigurationTracingConfigurationTracingConfiguration provides versioned configuration for OpenTelemetry tracing clients.FieldDescriptionendpointstringEndpoint of the collector this component will report traces to. The connection is insecure, and does not currently support TLS. Recommended is unset, and endpoint is the otlp grpc default, localhost:4317.samplingRatePerMillionint32SamplingRatePerMillion is the number of samples to collect per million spans. Recommended is unset. If unset, sampler respects its parent span's sampling rate, but otherwise never samples.AdmissionConfigurationAdmissionConfiguration provides versioned configuration for admission controllers.FieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringAdmissionConfigurationplugins[]AdmissionPluginConfigurationPlugins allows specifying a configuration per admission control plugin.AuthenticationConfigurationAuthenticationConfiguration provides versioned configuration for authentication.FieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringAuthenticationConfigurationjwt [Required][]JWTAuthenticatorjwt is a list of authenticator to authenticate Kubernetes users using JWT compliant tokens. The authenticator will attempt to parse a raw ID token, verify it's been signed by the configured issuer. The public key to verify the signature is discovered from the issuer's public endpoint using OIDC discovery. For an incoming token, each JWT authenticator will be attempted in the order in which it is specified in this list. Note however that other authenticators may run before or after the JWT authenticators. The specific position of JWT authenticators in relation to other authenticators is neither defined nor stable across releases. Since each JWT authenticator must have a unique issuer URL, at most one JWT authenticator will attempt to cryptographically validate the token.The minimum valid JWT payload must contain the following claims: { "iss": "https://issuer.example.com", "aud": ["audience"], "exp": 1234567890, "": "username" }anonymous [Required]AnonymousAuthConfigIf present --anonymous-auth must not be setAuthorizationConfigurationFieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringAuthorizationConfigurationauthorizers [Required][]AuthorizerConfigurationAuthorizers is an ordered list of authorizers to authorize requests against. This is similar to the --authorization-modes kube-apiserver flag Must be at least one.EgressSelectorConfigurationEgressSelectorConfiguration provides versioned configuration for egress selector clients.FieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringEgressSelectorConfigurationegressSelections [Required][]EgressSelectionconnectionServices contain


Question: What are the benefits of kube-apiserver Configuration (v1alpha1)?

Answer: kube-apiserver Configuration (v1alpha1)Package v1alpha1 is the v1alpha1 version of the API.Resource TypesAdmissionConfigurationAuthenticationConfigurationAuthorizationConfigurationEgressSelectorConfigurationTracingConfigurationTracingConfigurationAppears in:KubeletConfigurationTracingConfigurationTracingConfiguration provides versioned configuration for OpenTelemetry tracing clients.FieldDescriptionendpointstringEndpoint of the collector this component will report traces to. The connection is insecure, and does not currently support TLS. Recommended is unset, and endpoint is the otlp grpc default, localhost:4317.samplingRatePerMillionint32SamplingRatePerMillion is the number of samples to collect per million spans. Recommended is unset. If unset, sampler respects its parent span's sampling rate, but otherwise never samples.AdmissionConfigurationAdmissionConfiguration provides versioned configuration for admission controllers.FieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringAdmissionConfigurationplugins[]AdmissionPluginConfigurationPlugins allows specifying a configuration per admission control plugin.AuthenticationConfigurationAuthenticationConfiguration provides versioned configuration for authentication.FieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringAuthenticationConfigurationjwt [Required][]JWTAuthenticatorjwt is a list of authenticator to authenticate Kubernetes users using JWT compliant tokens. The authenticator will attempt to parse a raw ID token, verify it's been signed by the configured issuer. The public key to verify the signature is discovered from the issuer's public endpoint using OIDC discovery. For an incoming token, each JWT authenticator will be attempted in the order in which it is specified in this list. Note however that other authenticators may run before or after the JWT authenticators. The specific position of JWT authenticators in relation to other authenticators is neither defined nor stable across releases. Since each JWT authenticator must have a unique issuer URL, at most one JWT authenticator will attempt to cryptographically validate the token.The minimum valid JWT payload must contain the following claims: { "iss": "https://issuer.example.com", "aud": ["audience"], "exp": 1234567890, "": "username" }anonymous [Required]AnonymousAuthConfigIf present --anonymous-auth must not be setAuthorizationConfigurationFieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringAuthorizationConfigurationauthorizers [Required][]AuthorizerConfigurationAuthorizers is an ordered list of authorizers to authorize requests against. This is similar to the --authorization-modes kube-apiserver flag Must be at least one.EgressSelectorConfigurationEgressSelectorConfiguration provides versioned configuration for egress selector clients.FieldDescriptionapiVersionstringapiserver.k8s.io/v1alpha1kindstringEgressSelectorConfigurationegressSelections [Required][]EgressSelectionconnectionServices contain


Question: What is kube-apiserver Configuration (v1alpha1)?

Answer: P a c k a g e   v 1 a l p h a 1   i s   t h e   v 1 a l p h a 1   v e r s i o n   o f   t h e   A P I .


Question: What is Resource Types?

Answer: A d m i s s i o n C o n f i g u r a t i o n A u t h e n t i c a t i o n C o n f i g u r a t i o n A u t h o r i z a t i o n C o n f i g u r a t i o n E g r e s s S e l e c t o r C o n f i g u r a t i o n T r a c i n g C o n f i g u r a t i o n


Question: What is TracingConfiguration?

Answer: A p p e a r s   i n :   K u b e l e t C o n f i g u r a t i o n T r a c i n g C o n f i g u r a t i o n   K u b e l e t C o n f i g u r a t i o n   T r a c i n g C o n f i g u r a t i o n   T r a c i n g C o n f i g u r a t i o n   p r o v i d e s   v e r s i o n e d   c o n f i g u r a t i o n   f o r   O p e n T e l e m e t r y   t r a c i n g   c l i e n t s .   E n d p o i n t   o f   t h e   c o l l e c t o r   t h i s   c o m p o n e n t   w i l l   r e p o r t   t r a c e s   t o .   T h e   c o n n e c t i o n   i s   i n s e c u r e ,   a n d   d o e s   n o t   c u r r e n t l y   s u p p o r t   T L S .   R e c o m m e n d e d   i s   u n s e t ,   a n d   e n d p o i n t   i s   t h e   o t l p   g r p c   d e f a u l t ,   l o c a l h o s t : 4 3 1 7 .   S a m p l i n g R a t e P e r M i l l i o n   i s   t h e   n u m b e r   o f   s a m p l e s   t o   c o l l e c t   p e r   m i l l i o n   s p a n s .   R e c o m m e n d e d   i s   u n s e t .   I f   u n s e t ,   s a m p l e r   r e s p e c t s   i t s   p a r e n t   s p a n ' s   s a m p l i n g   r a t e ,   b u t   o t h e r w i s e   n e v e r   s a m p l e s .


Question: What is AdmissionConfiguration?

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


Question: What is AuthenticationConfiguration?

Answer: A u t h e n t i c a t i o n C o n f i g u r a t i o n   p r o v i d e s   v e r s i o n e d   c o n f i g u r a t i o n   f o r   a u t h e n t i c a t i o n .   j w t   i s   a   l i s t   o f   a u t h e n t i c a t o r   t o   a u t h e n t i c a t e   K u b e r n e t e s   u s e r s   u s i n g   J W T   c o m p l i a n t   t o k e n s .   T h e   a u t h e n t i c a t o r   w i l l   a t t e m p t   t o   p a r s e   a   r a w   I D   t o k e n ,   v e r i f y   i t ' s   b e e n   s i g n e d   b y   t h e   c o n f i g u r e d   i s s u e r .   T h e   p u b l i c   k e y   t o   v e r i f y   t h e   s i g n a t u r e   i s   d i s c o v e r e d   f r o m   t h e   i s s u e r ' s   p u b l i c   e n d p o i n t   u s i n g   O I D C   d i s c o v e r y .   F o r   a n   i n c o m i n g   t o k e n ,   e a c h   J W T   a u t h e n t i c a t o r   w i l l   b e   a t t e m p t e d   i n   t h e   o r d e r   i n   w h i c h   i t   i s   s p e c i f i e d   i n   t h i s   l i s t .   N o t e   h o w e v e r   t h a t   o t h e r   a u t h e n t i c a t o r s   m a y   r u n   b e f o r e   o r   a f t e r   t h e   J W T   a u t h e n t i c a t o r s .   T h e   s p e c i f i c   p o s i t i o n   o f   J W T   a u t h e n t i c a t o r s   i n   r e l a t i o n   t o   o t h e r   a u t h e n t i c a t o r s   i s   n e i t h e r   d e f i n e d   n o r   s t a b l e   a c r o s s   r e l e a s e s .   S i n c e   e a c h   J W T   a u t h e n t i c a t o r   m u s t   h a v e   a   u n i q u e   i s s u e r   U R L ,   a t   m o s t   o n e   J W T   a u t h e n t i c a t o r   w i l l   a t t e m p t   t o   c r y p t o g r a p h i c a l l y   v a l i d a t e   t h e   t o k e n .   T h e   m i n i m u m   v a l i d   J W T   p a y l o a d   m u s t   c o n t a i n   t h e   f o l l o w i n g   c l a i m s :   {   " i s s " :   " h t t p s : / / i s s u e r . e x a m p l e . c o m " ,   " a u d " :   [ " a u d i e n c e " ] ,   " e x p " :   1 2 3 4 5 6


Question: What is AuthorizationConfiguration?

Answer: A u t h o r i z e r s   i s   a n   o r d e r e d   l i s t   o f   a u t h o r i z e r s   t o   a u t h o r i z e   r e q u e s t s   a g a i n s t .   T h i s   i s   s i m i l a r   t o   t h e   - - a u t h o r i z a t i o n - m o d e s   k u b e - a p i s e r v e r   f l a g   M u s t   b e   a t   l e a s t   o n e .


Question: What is EgressSelectorConfiguration?

Answer: E g r e s s S e l e c t o r C o n f i g u r a t i o n   p r o v i d e s   v e r s i o n e d   c o n f i g u r a t i o n   f o r   e g r e s s   s e l e c t o r   c l i e n t s .   c o n n e c t i o n S e r v i c e s   c o n t a i n s   a   l i s t   o f   e g r e s s   s e l e c t i o n   c l i e n t   c o n f i g u r a t i o n s


Question: What is TracingConfiguration?

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


Question: What is AdmissionPluginConfiguration?

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


Question: What is AnonymousAuthCondition?

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