Question: What is Memory-backed volumes?

Answer: O n   L i n u x   n o d e s ,   m e m o r y - b a c k e d   v o l u m e s   ( s u c h   a s   s e c r e t   v o l u m e   m o u n t s ,   o r   e m p t y D i r   w i t h   m e d i u m :   M e m o r y )   a r e   i m p l e m e n t e d   w i t h   a   t m p f s   f i l e s y s t e m .   T h e   c o n t e n t s   o f   s u c h   v o l u m e s   s h o u l d   r e m a i n   i n   m e m o r y   a t   a l l   t i m e s ,   h e n c e   s h o u l d   n o t   b e   s w a p p e d   t o   d i s k .   T o   e n s u r e   t h e   c o n t e n t s   o f   s u c h   v o l u m e s   r e m a i n   i n   m e m o r y ,   t h e   n o s w a p   t m p f s   o p t i o n   i s   b e i n g   u s e d .   T h e   L i n u x   k e r n e l   o f f i c i a l l y   s u p p o r t s   t h e   n o s w a p   o p t i o n   f r o m   v e r s i o n   6 . 3   ( m o r e   i n f o   c a n   b e   f o u n d   i n   L i n u x   K e r n e l   V e r s i o n   R e q u i r e m e n t s ) .   H o w e v e r ,   t h e   d i f f e r e n t   d i s t r i b u t i o n s   o f t e n   c h o o s e   t o   b a c k p o r t   t h i s   m o u n t   o p t i o n   t o   o l d e r   L i n u x   v e r s i o n s   a s   w e l l .   I n   o r d e r   t o   v e r i f y   w h e t h e r   t h e   n o d e   s u p p o r t s   t h e   n o s w a p   o p t i o n ,   t h e   k u b e l e t   w i l l   d o   t h e   f o l l o w i n g :   I f   t h e   k e r n e l ' s   v e r s i o n   i s   a b o v e   6 . 3   t h e n   t h e   n o s w a p   o p t i o n   w i l l   b e   a s s u m e d   t o   b e   s u p p o r t e d . O t h e r w i s e ,   k u b e l e t   w o u l d   t r y   t o   m o u n t   a   d u m m y   t m p f s   w i t h   t h e   n o s w a p   o p t i o n   a t   s t a r t u p .   I f   k u b e l e t   f a i l s   w i t h   a n   e r r o r   i n d i c a t i n g   o f   a n   u n k n o w n   o p t i o n ,   n o s w a p   w i l l   b e   a s s u m e d   t o   n o t   b e   s u p p o r t e d ,   h e n c e   w i l l   n o t   b e   u s e d .


Question: What is Evictions?

Answer: C o n f i g u r i n g   m e m o r y   e v i c t i o n   t h r e s h o l d s   f o r   s w a p - e n a b l e d   n o d e s   c a n   b e   t r i c k y .   W i t h   s w a p   b e i n g   d i s a b l e d ,   i t   i s   r e a s o n a b l e   t o   c o n f i g u r e   k u b e l e t ' s   e v i c t i o n   t h r e s h o l d s   t o   b e   a   b i t   l o w e r   t h a n   t h e   n o d e ' s   m e m o r y   c a p a c i t y .   T h e   r a t i o n a l e   i s   t h a t   w e   w a n t   K u b e r n e t e s   t o   s t a r t   e v i c t i n g   P o d s   b e f o r e   t h e   n o d e   r u n s   o u t   o f   m e m o r y   a n d   i n v o k e s   t h e   O u t   O f   M e m o r y   ( O O M )   k i l l e r ,   s i n c e   t h e   O O M   k i l l e r   i s   n o t   K u b e r n e t e s - a w a r e ,   t h e r e f o r e   d o e s   n o t   c o n s i d e r   t h i n g s   l i k e   Q o S ,   p o d   p r i o r i t y ,   o r   o t h e r   K u b e r n e t e s - s p e c i f i c   f a c t o r s .   W i t h   s w a p   e n a b l e d ,   t h e   s i t u a t i o n   i s   m o r e   c o m p l e x .   I n   L i n u x ,   t h e   v m . m i n _ f r e e _ k b y t e s   p a r a m e t e r   d e f i n e s   t h e   m e m o r y   t h r e s h o l d   f o r   t h e   k e r n e l   t o   s t a r t   a g g r e s s i v e l y   r e c l a i m i n g   m e m o r y ,   w h i c h   i n c l u d e s   s w a p p i n g   o u t   p a g e s .   I f   t h e   k u b e l e t ' s   e v i c t i o n   t h r e s h o l d s   a r e   s e t   i n   a   w a y   t h a t   e v i c t i o n   w o u l d   t a k e   p l a c e   b e f o r e   t h e   k e r n e l   s t a r t s   r e c l a i m i n g   m e m o r y ,   i t   c o u l d   l e a d   t o   w o r k l o a d s   n e v e r   b e i n g   a b l e   t o   s w a p   o u t   d u r i n g   n o d e   m e m o r y   p r e s s u r e .   H o w e v e r ,   s e t t i n g   t h e   e v i c t i o n   t h r e s h o l d s   t o o   h i g h   c o u l d   r e s u l t   i n   t h e   n o d


Question: What is Unutilized swap space?

Answer: U n d e r   t h e   L i m i t e d S w a p   b e h a v i o r ,   t h e   a m o u n t   o f   s w a p   a v a i l a b l e   t o   a   P o d   i s   d e t e r m i n e d   a u t o m a t i c a l l y ,   b a s e d   o n   t h e   p r o p o r t i o n   o f   t h e   m e m o r y   r e q u e s t e d   r e l a t i v e   t o   t h e   n o d e ' s   t o t a l   m e m o r y   ( F o r   m o r e   d e t a i l s ,   s e e   t h e   s e c t i o n   b e l o w ) .   T h i s   d e s i g n   m e a n s   t h a t   u s u a l l y   t h e r e   w o u l d   b e   s o m e   p o r t i o n   o f   s w a p   t h a t   w i l l   r e m a i n   r e s t r i c t e d   f o r   K u b e r n e t e s   w o r k l o a d s .   F o r   e x a m p l e ,   s i n c e   K u b e r n e t e s   1 . 3 4   d o e s   n o t   p e r m i t   s w a p   u s e   f o r   P o d s   i n   t h e   G u a r a n t e e d   Q o S   c l a s s ,   t h e   a m o u n t   o f   s w a p   t h a t ' s   p r o p o r t i o n a l   t o   t h e   m e m o r y   r e q u e s t   f o r   G u a r a n t e e d   p o d s   w o u l d   r e m a i n   u n u s e d   b y   K u b e r n e t e s   w o r k l o a d s .   T h i s   b e h a v i o r   c a r r i e s   s o m e   r i s k   i n   a   s i t u a t i o n   w h e r e   m a n y   p o d s   a r e   n o t   e l i g i b l e   f o r   s w a p p i n g .   O n   t h e   o t h e r   h a n d ,   i t   e f f e c t i v e l y   k e e p s   s o m e   s y s t e m - r e s e r v e d   a m o u n t   o f   s w a p   m e m o r y   t h a t   c a n   b e   u s e d   b y   p r o c e s s e s   o u t s i d e   o f   K u b e r n e t e s '   s c o p e ,   s u c h   a s   s y s t e m   d a e m o n s   a n d   e v e n   k u b e l e t   i t s e l f .


Question: What is Disable swap for system-critical daemons?

Answer: D u r i n g   t h e   t e s t i n g   p h a s e   a n d   b a s e d   o n   u s e r


Question: What is Protect system-critical daemons for I/O latency?

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


Question: What is Swap and control plane nodes?

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


Question: What is Use of a dedicated disk for swap?

Answer: T h e   K u b e r n e t e s   p r o j e c t   r e c o m m e n d s   u s i n g   e n c r y p t e d   s w a p ,   w h e n e v e r   y o u   r u n   n o d e s   w i t h   s w a p   e n a b l e d .   I f   s w a p   r e s i d e s   o n   a   p a r t i t i o n   o r   t h e   r o o t   f i l e s y s t e m ,   w o r k l o a d s   m a y   i n t e r f e r e   w i t h   s y s t e m   p r o c e s s e s   t h a t   n e e d   t o   w r i t e   t o   d i s k .   W h e n   t h e y   s h a r e   t h e   s a m e   d i s k ,   p r o c e s s e s   c a n   o v e r w h e l m   s w a p ,   d i s r u p t i n g   t h e   I / O   o f   k u b e l e t ,   c o n t a i n e r   r u n t i m e ,   a n d   s y s t e m d ,   w h i c h   w o u l d   i m p a c t   o t h e r   w o r k l o a d s .   S i n c e   s w a p   s p a c e   i s   l o c a t e d   o n   a   d i s k ,   i t   i s   c r u c i a l   t o   e n s u r e   t h e   d i s k   i s   f a s t   e n o u g h   f o r   t h e   i n t e n d e d   u s e   c a s e s .   A l t e r n a t i v e l y ,   o n e   c a n   c o n f i g u r e   I / O   p r i o r i t i e s   b e t w e e n   d i f f e r e n t   m a p p e d   a r e a s   o f   a   s i n g l e   b a c k i n g   d e v i c e .


Question: What is Swap-aware scheduling?

Answer: K u b e r n e t e s   1 . 3 4   d o e s   n o t   s u p p o r t   a l l o c a t i n g   P o d s   t o   n o d e s   i n   a   w a y   t h a t   a c c o u n t s   f o r   s w a p   m e m o r y   u s a g e .   T h e   s c h e d u l e r   t y p i c a l l y   u s e s   r e q u e s t s   f o r   i n f r a s t r u c t u r e   r e s o u r c e s   t o   g u i d e   P o d   p l a c e m e n t ,   a n d   P o d s   d o   n o t   r e q u e s t   s w a p   s p a c e ;   t h e y   j u s t   r e q u e s t   m e m o r y .   T h i s   m e a n s   t h a t   t h e   s c h e d u l e r   d o e s   n o t   c o n s i d e r   s w a p   m e m o r y   w h e n   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 .   W h i l e   t h i s   i s   s o m e t h i n g   w e   a r e   a c t i v e l y   w o r k i n g   o n ,   i t   i s   n o t   y e t   i m p l e m e n t e d .   I n   o r d e r   f o r   a d m i n i s t r a t o r s   t o   e n s u r e   t h a t   P o d s   a r e   n o t   s c h e d u l e d   o n   n o d e s   w i t h   s w a p   m e m o r y   u n l e s s   t h e y   a r e   s p e c i f i c a l l y   i n t e n d e d   t o   u s e   i t ,   A d m i n i s t r a t o r s   c a n   t a i n t   n o d e s   w i t h   s w a p   a v a i l a b l e   t o   p r o t e c t   a g a i n s t   t h i s   p r o b l e m .   T a i n t s   w i l l   e n s u r e   t h a t   w o r k l o a d s   w h i c h   t o l e r a t e   s w a p   w i l l   n o t   s p i l l   o n t o   n o d e s   w i t h o u t   s w a p   u n d e r   l o a d .


Question: What is Selecting storage for optimal performance?

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


Question: What is How is the swap limit being determined with LimitedSwap??

Answer: T h e   c o n f i g u r a t i o n   o f   s w a p   m e m o r y ,   i n c l u d i n g   i t s   l i m i t a t i o n s ,   p r e s e n t s   a   s i g n i f i c a n t   c h a l l e n g e .   N o t   o n l y   i s   i t   p r o n e   t o   m i s c o n f i g u r a t i o n ,   b u t   a s   a   s y s t e m - l e v e l   p r o p e r t y ,   a n y   m i s c o n f i g u r a t i o n   c o u l d   p o t e n t i a l l y   c o m p r o m i s e   t h e   e n t i r e   n o d e   r a t h e r   t h a n   j u s t   a   s p e c i f i c   w o r k l o a d .   T o   m i t i g a t e   t h i s   r i s k   a n d   e n s u r e   t h e   h e a l t h   o f   t h e   n o d e ,   w e   h a v e   i m p l e m e n t e d   S w a p   w i t h   a u t o m a t i c   c o n f i g u r a t i o n   o f   l i m i t a t i o n s .   W i t h   L i m i t e d S w a p ,   P o d s   t h a t   d o   n o t   f a l l   u n d e r   t h e   B u r s t a b l e   Q o S   c l a s s i f i c a t i o n   ( i . e .   B e s t E f f o r t / G u a r a n t e e d   Q o S   P o d s )   a r e   p r o h i b i t e d   f r o m   u t i l i z i n g   s w a p   m e m o r y .   B e s t E f f o r t   Q o S   P o d s   e x h i b i t   u n p r e d i c t a b l e   m e m o r y   c o n s u m p t i o n   p a t t e r n s   a n d   l a c k   i n f o r m a t i o n   r e g a r d i n g   t h e i r   m e m o r y   u s a g e ,   m a k i n g   i t   d i f f i c u l t   t o   d e t e r m i n e   a   s a f e   a l l o c a t i o n   o f   s w a p   m e m o r y .   C o n v e r s e l y ,   G u a r a n t e e d   Q o S   P o d s   a r e   t y p i c a l l y   e m p l o y e d   f o r   a p p l i c a t i o n s   t h a t   r e l y   o n   t h e   p r e c i s e   a l l o c a t i o n   o f   r e s o u r c e s   s p e c i f i e d   b y   t h e   w o r k l o a d ,   w i t h   m e m o r y   b e i n g   i m m e d i a t e l y   a v a i l a b l e .   T o   m a i n t a i n   t h e   a f o r e m e n t i o n e d   s e c u r i t y   a n d   n o d e   h e a l t h   g u a r a n t


Question: What is What's next?

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


Question: What is 11.3 - Node Autoscaling?

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


Question: What is Node provisioning?

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


Question: What is Pod scheduling constraints?

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


Question: What is Node constraints imposed by autoscaler configuration?

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


Question: What is Auto-provisioning?

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


Question: What is Node consolidation?

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


Question: What is Note:?

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


Question: What is Note:?

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


Question: What is Autoscalers?

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


Question: What is Autoscaler implementations?

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


Question: What is Cluster Autoscaler?

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


Question: What is Karpenter?

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


Question: What is Implementation comparison?

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


Question: What is Horizontal workload autoscaling?

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


Question: What is Vertical workload autoscaling?

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


Question: What is Related components?

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


Question: What is Descheduler?

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


Question: What is Workload autoscalers based on cluster size?

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


Question: What is What's next?

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


Question: What is 11.4 - Certificates?

Answer: T o   l e a r n   h o w   t o   g e n e r a t e   c e r t i f i c a t e s   f o r   y o u r   c l u s t e r ,   s e e   C e r t i f i c a t e s .


Question: What is 11.5 - Cluster Networking?

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


Question: What is Kubernetes IP address ranges?

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


Question: What is Cluster networking types?

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


Question: What is How to implement the Kubernetes network model?

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


Question: What is What's next?

Answer: T h e   e a r l y   d e s i g n   o f   t h e   n e t w o r k i n g   m o d e l   a n d   i t s   r a t i o n a l e   a r e   d e s c r i b e d   i n   m o r e   d e t a i l   i n   t h e   n e t w o r k i n g   d e s i g n   d o c u m e n t .   F o r   f u t u r e   p l a n s   a n d   s o m e   o n - g o i n g   e f f o r t s   t h a t   a i m   t o   i m p r o v e   K u b e r n e t e s   n e t w o r k i n g ,   p l e a s e   r e f e r   t o   t h e   S I G - N e t w o r k   K E P s .


Question: What is 11.6 - Admission Webhook Good Practices?

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


Question: What is Importance of good webhook design?

Answer: A d m i s s i o n   c o n t r o l   o c c u r s   w h e n   a n y   c r e a t e ,   u p d a t e ,   o r   d e l e t e   r e q u e s t   i s   s e n t   t o   t h e   K u b e r n e t e s   A P I .   A d m i s s i o n   c o n t r o l l e r s   i n t e r c e p t   r e q u e s t s   t h a t   m a t c h   s p e c i f i c   c r i t e r i a   t h a t   y o u   d e f i n e .   T h e s e   r e q u e s t s   a r e   t h e n   s e n t   t o   m u t a t i n g   a d m i s s i o n   w e b h o o k s   o r   v a l i d a t i n g   a d m i s s i o n   w e b h o o k s .   T h e s e   w e b h o o k s   a r e   o f t e n   w r i t t e n   t o   e n s u r e   t h a t   s p e c i f i c   f i e l d s   i n   o b j e c t   s p e c i f i c a t i o n s   e x i s t   o r   h a v e   s p e c i f i c   a l l o w e d   v a l u e s .   W e b h o o k s   a r e   a   p o w e r f u l   m e c h a n i s m   t o   e x t e n d   t h e   K u b e r n e t e s   A P I .   B a d l y - d e s i g n e d   w e b h o o k s   o f t e n   r e s u l t   i n   w o r k l o a d   d i s r u p t i o n s   b e c a u s e   o f   h o w   m u c h   c o n t r o l   t h e   w e b h o o k s   h a v e   o v e r   o b j e c t s   i n   t h e   c l u s t e r .   L i k e   o t h e r   A P I   e x t e n s i o n   m e c h a n i s m s ,   w e b h o o k s   a r e   c h a l l e n g i n g   t o   t e s t   a t   s c a l e   f o r   c o m p a t i b i l i t y   w i t h   a l l   o f   y o u r   w o r k l o a d s ,   o t h e r   w e b h o o k s ,   a d d - o n s ,   a n d   p l u g i n s .   A d d i t i o n a l l y ,   w i t h   e v e r y   r e l e a s e ,   K u b e r n e t e s   a d d s   o r   m o d i f i e s   t h e   A P I   w i t h   n e w   f e a t u r e s ,   f e a t u r e   p r o m o t i o n s   t o   b e t a   o r   s t a b l e   s t a t u s ,   a n d   d e p r e c a t i o n s .   E v e n   s t a b l e   K u b e r n e t e s   A P I s   a r e   l i k e l y   t o   c h a n g e .   F o r   e x a m p l e ,   t h e   P o d   A P I   c h


Question: What is Identify whether you use admission webhooks?

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


Question: What is Choose an admission control mechanism?

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


Question: What is Use built-in validation and defaulting for CustomResourceDefinitions?

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


Question: What is Performance and latency?

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


Question: What is Design admission webhooks for low latency?

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


Question: What is Prevent loops caused by competing controllers?

Answer: C o n s i d e r   a n y   o t h e r   c o m p o n e n t s   t h a t   r u n   i n   y o u r   c l u s t e r   t h a t   m i g h t   c o n f l i c t   w i t h   t h e   m u t a t i o n s   t h a t   y o u r   w e b h o o k   m a k e s .   F o r   e x a m p l e ,   i f   y o u r   w e b h o o k   a d d s   a   l a b e l   t h a t   a   d i f f e r e n t   c o n t r o l l e r   r e m o v e s ,   y o u r   w e b h o o k   g e t s   c a l l e d   a g a i n .   T h i s   l e a d s   t o   a   l o o p .   T o   d e t e c t   t h e s e   l o o p s ,   t r y   t h e   f o l l o w i n g :   U p d a t e   y o u r   c l u s t e r   a u d i t   p o l i c y   t o   l o g   a u d i t   e v e n t s .   U s e   t h e   f o l l o w i n g   p a r a m e t e r s : l e v e l :   R e q u e s t R e s p o n s e v e r b s :   [ " p a t c h " ] o m i t S t a g e s :   R e q u e s t R e c e i v e d S e t   t h e   a u d i t   r u l e   t o   c r e a t e   e v e n t s   f o r   t h e   s p e c i f i c   r e s o u r c e s   t h a t   y o u r   w e b h o o k   m u t a t e s . C h e c k   y o u r   a u d i t   e v e n t s   f o r   w e b h o o k s   b e i n g   r e i n v o k e d   m u l t i p l e   t i m e s   w i t h   t h e   s a m e   p a t c h   b e i n g   a p p l i e d   t o   t h e   s a m e   o b j e c t ,   o r   f o r   a n   o b j e c t   h a v i n g   a   f i e l d   u p d a t e d   a n d   r e v e r t e d   m u l t i p l e   t i m e s .   U p d a t e   y o u r   c l u s t e r   a u d i t   p o l i c y   t o   l o g   a u d i t   e v e n t s .   U s e   t h e   f o l l o w i n g   p a r a m e t e r s :   l e v e l :   R e q u e s t R e s p o n s e v e r b s :   [ " p a t c h " ] o m i t S t a g e s :   R e q u e s t R e c e i v e d   S e t   t h e   a u d i t   r u l e   t o   c r e a t e   e v e n t s   f o r   t h e   s p e c i f i c   r e s o u r c e s   t h a t   y o u r   w e b h o o k   m u t a t e s .   C h e c k   y o u r   a u d i t   e v e n t s   f o r   w e b h o o k s   b


Question: What is Set a small timeout value?

Answer: A d m i s s i o n   w e b h o o k s   s h o u l d   e v a l u a t e   a s   q u i c k l y   a s   p o s s i b l e   ( t y p i c a l l y   i n   m i l l i s e c o n d s ) ,   s i n c e   t h e y   a d d   t o   A P I   r e q u e s t   l a t e n c y .   U s e   a   s m a l l   t i m e o u t   f o r   w e b h o o k s .   F o r   d e t a i l s ,   s e e   T i m e o u t s .


Question: What is Use a load balancer to ensure webhook availability?

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


Question: What is Use a high-availability deployment model?

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


Question: What is Request filtering?

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


Question: What is Limit the scope of each webhook?

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


Question: What is Filter for specific requests by using match conditions?

Answer: A d m i s s i o n   c o n t r o l l e r s   s u p p o r t   m u l t i p l e   f i e l d s   t h a t   y o u   c a n   u s e   t o   m a t c h   r e q u e s t s   t h a t   m e e t   s p e c i f i c   c r i t e r i a .   F o r   e x a m p l e ,   y o u   c a n   u s e   a   n a m e s p a c e S e l e c t o r   t o   f i l t e r   f o r   r e q u e s t s   t h a t   t a r g e t   a   s p e c i f i c   n a m e s p a c e .   F o r   m o r e   f i n e - g r a i n e d   r e q u e s t   f i l t e r i n g ,   u s e   t h e   m a t c h C o n d i t i o n s   f i e l d   i n   y o u r   w e b h o o k   c o n f i g u r a t i o n .   T h i s   f i e l d   l e t s   y o u   w r i t e   m u l t i p l e   C E L   e x p r e s s i o n s   t h a t   m u s t   e v a l u a t e   t o   t r u e   f o r   a   r e q u e s t   t o   t r i g g e r   y o u r   a d m i s s i o n   w e b h o o k .   U s i n g   m a t c h C o n d i t i o n s   m i g h t   s i g n i f i c a n t l y   r e d u c e   t h e   n u m b e r   o f   c a l l s   t o   y o u r   w e b h o o k   s e r v e r .   F o r   d e t a i l s ,   s e e   M a t c h i n g   r e q u e s t s :   m a t c h C o n d i t i o n s .


Question: What is Match all versions of an API?

Answer: B y   d e f a u l t ,   a d m i s s i o n   w e b h o o k s   r u n   o n   a n y   A P I   v e r s i o n s   t h a t   a f f e c t   a   s p e c i f i e d   r e s o u r c e .   T h e   m a t c h P o l i c y   f i e l d   i n   t h e   w e b h o o k   c o n f i g u r a t i o n   c o n t r o l s   t h i s   b e h a v i o r .   S p e c i f y   a   v a l u e   o f   E q u i v a l e n t   i n   t h e   m a t c h P o l i c y   f i e l d   o r   o m i t   t h e   f i e l d   t o   a l l o w   t h e   w e b h o o k   t o   r u n   o n   a n y   A P I   v e r s i o n .   F o r   d e t a i l s ,   s e e   M a t c h i n g   r e q u e s t s :   m a t c h P o l i c y .


Question: What is Mutation scope and field considerations?

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


Question: What is Patch only required fields?

Answer: A d m i s s i o n   w e b h o o k   s e r v e r s   s e n d   H T T P   r e s p o n s e s   t o   i n d i c a t e   w h a t   t o   d o   w i t h   a   s p e c i f i c   K u b e r n e t e s   A P I   r e q u e s t .   T h i s   r e s p o n s e   i s   a n   A d m i s s i o n R e v i e w   o b j e c t .   A   m u t a t i n g   w e b h o o k   c a n   a d d   s p e c i f i c   f i e l d s   t o   m u t a t e   b e f o r e   a l l o w i n g   a d m i s s i o n   b y   u s i n g   t h e   p a t c h T y p e   f i e l d   a n d   t h e   p a t c h   f i e l d   i n   t h e   r e s p o n s e .   E n s u r e   t h a t   y o u   o n l y   m o d i f y   t h e   f i e l d s   t h a t   r e q u i r e   a   c h a n g e .   F o r   e x a m p l e ,   c o n s i d e r   a   m u t a t i n g   w e b h o o k   t h a t ' s   c o n f i g u r e d   t o   e n s u r e   t h a t   w e b - s e r v e r   D e p l o y m e n t s   h a v e   a t   l e a s t   t h r e e   r e p l i c a s .   W h e n   a   r e q u e s t   t o   c r e a t e   a   D e p l o y m e n t   o b j e c t   m a t c h e s   y o u r   w e b h o o k   c o n f i g u r a t i o n ,   t h e   w e b h o o k   s h o u l d   o n l y   u p d a t e   t h e   v a l u e   i n   t h e   s p e c . r e p l i c a s   f i e l d .


Question: What is Don't overwrite array values?

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


Question: What is Avoid side effects?

Answer: E n s u r e   t h a t   y o u r   w e b h o o k s   o p e r a t e   o n l y   o n   t h e   c o n t e n t   o f   t h e   A d m i s s i o n R e v i e w   t h a t ' s   s e n t   t o   t h e m ,   a n d   d o   n o t   m a k e   o u t - o f - b a n d   c h a n g e s .   T h e s e   a d d i t i o n a l   c h a n g e s ,   c a l l e d   s i d e   e f f e c t s ,   m i g h t   c a u s e   c o n f l i c t s   d u r i n g   a d m i s s i o n   i f   t h e y   a r e n ' t   r e c o n c i l e d   p r o p e r l y .   T h e   . w e b h o o k s [ ] . s i d e E f f e c t s   f i e l d   s h o u l d   b e   s e t   t o   N o n e   i f   a   w e b h o o k   d o e s n ' t   h a v e   a n y   s i d e   e f f e c t .   I f   s i d e   e f f e c t s   a r e   r e q u i r e d   d u r i n g   t h e   a d m i s s i o n   e v a l u a t i o n ,   t h e y   m u s t   b e   s u p p r e s s e d   w h e n   p r o c e s s i n g   a n   A d m i s s i o n R e v i e w   o b j e c t   w i t h   d r y R u n   s e t   t o   t r u e ,   a n d   t h e   . w e b h o o k s [ ] . s i d e E f f e c t s   f i e l d   s h o u l d   b e   s e t   t o   N o n e O n D r y R u n .   F o r   d e t a i l s ,   s e e   S i d e   e f f e c t s .


Question: What is Avoid self-mutations?

Answer: A   w e b h o o k   r u n n i n g   i n s i d e   t h e   c l u s t e r   m i g h t   c a u s e   d e a d l o c k s   f o r   i t s   o w n   d e p l o y m e n t   i f   i t   i s   c o n f i g u r e d   t o   i n t e r c e p t   r e s o u r c e s   r e q u i r e d   t o   s t a r t   i t s   o w n   P o d s .   F o r   e x a m p l e ,   a   m u t a t i n g   a d m i s s i o n   w e b h o o k   i s   c o n f i g u r e d   t o   a d m i t   c r e a t e   P o d   r e q u e s t s   o n l y   i f   a   c e r t a i n   l a b e l   i s   s e t   i n   t h e   P o d   ( s u c h   a s   e n v :   p r o d ) .   T h e   w e b h o o k   s e r v e r   r u n s   i n   a   D e p l o y m e n t   t h a t   d o e s n ' t   s e t   t h e   e n v   l a b e l .   W h e n   a   n o d e   t h a t   r u n s   t h e   w e b h o o k   s e r v e r   P o d s   b e c o m e s   u n h e a l t h y ,   t h e   w e b h o o k   D e p l o y m e n t   t r i e s   t o   r e s c h e d u l e   t h e   P o d s   t o   a n o t h e r   n o d e .   H o w e v e r ,   t h e   e x i s t i n g   w e b h o o k   s e r v e r   r e j e c t s   t h e   r e q u e s t s   s i n c e   t h e   e n v   l a b e l   i s   u n s e t .   A s   a   r e s u l t ,   t h e   m i g r a t i o n   c a n n o t   h a p p e n .   E x c l u d e   t h e   n a m e s p a c e   w h e r e   y o u r   w e b h o o k   i s   r u n n i n g   w i t h   a   n a m e s p a c e S e l e c t o r .


Question: What is Avoid dependency loops?

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


Question: What is Fail open and validate the final state?

Answer: M u t a t i n g   a d m i s s i o n   w e b h o o k s   s u p p o r t   t h e   f a i l u r e P o l i c y   c o n f i g u r a t i o n   f i e l d .   T h i s   f i e l d   i n d i c a t e s   w h e t h e r   t h e   A P I   s e r v e r   s h o u l d   a d m i t   o r   r e j e c t   t h e   r e q u e s t   i f   t h e   w e b h o o k   f a i l s .   W e b h o o k   f a i l u r e s   m i g h t   o c c u r   b e c a u s e   o f   t i m e o u t s   o r   e r r o r s   i n   t h e   s e r v e r   l o g i c .   B y   d e f a u l t ,   a d m i s s i o n   w e b h o o k s   s e t   t h e   f a i l u r e P o l i c y   f i e l d   t o   F a i l .   T h e   A P I   s e r v e r   r e j e c t s   a   r e q u e s t   i f   t h e   w e b h o o k   f a i l s .   H o w e v e r ,   r e j e c t i n g   r e q u e s t s   b y   d e f a u l t   m i g h t   r e s u l t   i n   c o m p l i a n t   r e q u e s t s   b e i n g   r e j e c t e d   d u r i n g   w e b h o o k   d o w n t i m e .   L e t   y o u r   m u t a t i n g   w e b h o o k s   " f a i l   o p e n "   b y   s e t t i n g   t h e   f a i l u r e P o l i c y   f i e l d   t o   I g n o r e .   U s e   a   v a l i d a t i n g   c o n t r o l l e r   t o   c h e c k   t h e   s t a t e   o f   r e q u e s t s   t o   e n s u r e   t h a t   t h e y   c o m p l y   w i t h   y o u r   p o l i c i e s .   T h i s   a p p r o a c h   h a s   t h e   f o l l o w i n g   b e n e f i t s :   M u t a t i n g   w e b h o o k   d o w n t i m e   d o e s n ' t   a f f e c t   c o m p l i a n t   r e s o u r c e s   f r o m   d e p l o y i n g . P o l i c y   e n f o r c e m e n t   o c c u r s   d u r i n g   v a l i d a t i n g   a d m i s s i o n   c o n t r o l . M u t a t i n g   w e b h o o k s   d o n ' t   i n t e r f e r e   w i t h   o t h e r   c o n t r o l l e r s   i n   t h e   c l u s t e r .


Question: What is Plan for future updates to fields?

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


Question: What is Prevent your webhook from triggering itself?

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


Question: What is Don't change immutable objects?

Answer: S o m e   K u b e r n e t e s   o b j e c t s   i n   t h e   A P I   s e r v e r   c a n ' t   c h a n g e .   F o r   e x a m p l e ,   w h e n   y o u   d e p l o y   a   s t a t i c   P o d ,   t h e   k u b e l e t   o n   t h e   n o d e   c r e a t e s   a   m i r r o r   P o d   i n   t h e   A P I   s e r v e r   t o   t r a c k   t h e   s t a t i c   P o d .   H o w e v e r ,   c h a n g e s   t o   t h e   m i r r o r   P o d   d o n ' t   p r o p a g a t e   t o   t h e   s t a t i c   P o d .   D o n ' t   a t t e m p t   t o   m u t a t e   t h e s e   o b j e c t s   d u r i n g   a d m i s s i o n .   A l l   m i r r o r   P o d s   h a v e   t h e   k u b e r n e t e s . i o / c o n f i g . m i r r o r   a n n o t a t i o n .   T o   e x c l u d e   m i r r o r   P o d s   w h i l e   r e d u c i n g   t h e   s e c u r i t y   r i s k   o f   i g n o r i n g   a n   a n n o t a t i o n ,   a l l o w   s t a t i c   P o d s   t o   o n l y   r u n   i n   s p e c i f i c   n a m e s p a c e s .


Question: What is Mutating webhook ordering and idempotence?

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


Question: What is Don't rely on mutating webhook invocation order?

Answer: M u t a t i n g   a d m i s s i o n   w e b h o o k s   d o n ' t   r u n   i n   a   c o n s i s t e n t   o r d e r .   V a r i o u s   f a c t o r s   m i g h t   c h a n g e   w h e n   a   s p e c i f i c   w e b h o o k   i s   c a l l e d .   D o n ' t   r e l y   o n   y o u r   w e b h o o k   r u n n i n g   a t   a   s p e c i f i c   p o i n t   i n   t h e   a d m i s s i o n   p r o c e s s .   O t h e r   w e b h o o k s   c o u l d   s t i l l   m u t a t e   y o u r   m o d i f i e d   o b j e c t .   T h e   f o l l o w i n g   r e c o m m e n d a t i o n s   m i g h t   h e l p   t o   m i n i m i z e   t h e   r i s k   o f   u n i n t e n d e d   c h a n g e s :   V a l i d a t e   m u t a t i o n s   b e f o r e   a d m i s s i o n U s e   a   r e i n v o c a t i o n   p o l i c y   t o   o b s e r v e   c h a n g e s   t o   a n   o b j e c t   b y   o t h e r   p l u g i n s   a n d   r e - r u n   t h e   w e b h o o k   a s   n e e d e d .   F o r   d e t a i l s ,   s e e   R e i n v o c a t i o n   p o l i c y .


Question: What is Ensure that the mutating webhooks in your cluster are idempotent?

Answer: E v e r y   m u t a t i n g   a d m i s s i o n   w e b h o o k   s h o u l d   b e   i d e m p o t e n t .   T h e   w e b h o o k   s h o u l d   b e   a b l e   t o   r u n   o n   a n   o b j e c t   t h a t   i t   a l r e a d y   m o d i f i e d   w i t h o u t   m a k i n g   a d d i t i o n a l   c h a n g e s   b e y o n d   t h e   o r i g i n a l   c h a n g e .   A d d i t i o n a l l y ,   a l l   o f   t h e   m u t a t i n g   w e b h o o k s   i n   y o u r   c l u s t e r   s h o u l d ,   a s   a   c o l l e c t i o n ,   b e   i d e m p o t e n t .   A f t e r   t h e   m u t a t i o n   p h a s e   o f   a d m i s s i o n   c o n t r o l   e n d s ,   e v e r y   i n d i v i d u a l   m u t a t i n g   w e b h o o k   s h o u l d   b e   a b l e   t o   r u n   o n   a n   o b j e c t   w i t h o u t   m a k i n g   a d d i t i o n a l   c h a n g e s   t o   t h e   o b j e c t .   D e p e n d i n g   o n   y o u r   e n v i r o n m e n t ,   e n s u r i n g   i d e m p o t e n c e   a t   s c a l e   m i g h t   b e   c h a l l e n g i n g .   T h e   f o l l o w i n g   r e c o m m e n d a t i o n s   m i g h t   h e l p :   U s e   v a l i d a t i n g   a d m i s s i o n   c o n t r o l l e r s   t o   v e r i f y   t h e   f i n a l   s t a t e   o f   c r i t i c a l   w o r k l o a d s . T e s t   y o u r   d e p l o y m e n t s   i n   a   s t a g i n g   c l u s t e r   t o   s e e   i f   a n y   o b j e c t s   g e t   m o d i f i e d   m u l t i p l e   t i m e s   b y   t h e   s a m e   w e b h o o k . E n s u r e   t h a t   t h e   s c o p e   o f   e a c h   m u t a t i n g   w e b h o o k   i s   s p e c i f i c   a n d   l i m i t e d .   T h e   f o l l o w i n g   e x a m p l e s   s h o w   i d e m p o t e n t   m u t a t i o n   l o g i c :   F o r   a   c r e a t e   P o d   r e q u e s t ,   s e t   t h e   f i e l d   . s p e c . s e c u r i t y C o n t e x t . r u n A s N o n R o o t   o f   t h e   P o d   t o   t r u


Question: What is Mutation testing and validation?

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


Question: What is Test webhooks in staging environments?

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


Question: What is Ensure that mutations don't violate validations?

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


Question: What is Test minor version upgrades to ensure consistent behavior?

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


Question: What is Validate mutations before admission?

Answer: M u t a t i n g   w e b h o o k s   r u n   t o   c o m p l e t i o n   b e f o r e   a n y   v a l i d a t i n g   w e b h o o k s   r u n .   T h e r e   i s   n o   s t a b l e   o r d e r   i n   w h i c h   m u t a t i o n s   a r e   a p p l i e d   t o   o b j e c t s .   A s   a   r e s u l t ,   y o u r   m u t a t i o n s   c o u l d   g e t   o v e r w r i t t e n   b y   a   m u t a t i n g   w e b h o o k   t h a t   r u n s   a t   a   l a t e r   t i m e .   A d d   a   v a l i d a t i n g   a d m i s s i o n   c o n t r o l l e r   l i k e   a   V a l i d a t i n g A d m i s s i o n W e b h o o k   o r   a   V a l i d a t i n g A d m i s s i o n P o l i c y   t o   y o u r   c l u s t e r   t o   e n s u r e   t h a t   y o u r   m u t a t i o n s   a r e   s t i l l   p r e s e n t .   F o r   e x a m p l e ,   c o n s i d e r   a   m u t a t i n g   w e b h o o k   t h a t   i n s e r t s   t h e   r e s t a r t P o l i c y :   A l w a y s   f i e l d   t o   s p e c i f i c   i n i t   c o n t a i n e r s   t o   m a k e   t h e m   r u n   a s   s i d e c a r   c o n t a i n e r s .   Y o u   c o u l d   r u n   a   v a l i d a t i n g   w e b h o o k   t o   e n s u r e   t h a t   t h o s e   i n i t   c o n t a i n e r s   r e t a i n e d   t h e   r e s t a r t P o l i c y :   A l w a y s   c o n f i g u r a t i o n   a f t e r   a l l   m u t a t i o n s   w e r e   c o m p l e t e d .   F o r   d e t a i l s ,   s e e   t h e   f o l l o w i n g   r e s o u r c e s :   V a l i d a t i n g   A d m i s s i o n   P o l i c y V a l i d a t i n g A d m i s s i o n W e b h o o k s


Question: What is Mutating webhook deployment?

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


Question: What is Install and enable a mutating webhook?

Answer: W h e n   y o u ' r e   r e a d y   t o   d e p l o y   y o u r   m u t a t i n g   w e b h o o k   t o   a   c l u s t e r ,   u s e   t h e   f o l l o w i n g   o r d e r   o f   o p e r a t i o n s :   I n s t a l l   t h e   w e b h o o k   s e r v e r   a n d   s t a r t   i t . S e t   t h e   f a i l u r e P o l i c y   f i e l d   i n   t h e   M u t a t i n g W e b h o o k C o n f i g u r a t i o n   m a n i f e s t   t o   I g n o r e .   T h i s   l e t s   y o u   a v o i d   d i s r u p t i o n s   c a u s e d   b y   m i s c o n f i g u r e d   w e b h o o k s . S e t   t h e   n a m e s p a c e S e l e c t o r   f i e l d   i n   t h e   M u t a t i n g W e b h o o k C o n f i g u r a t i o n   m a n i f e s t   t o   a   t e s t   n a m e s p a c e . D e p l o y   t h e   M u t a t i n g W e b h o o k C o n f i g u r a t i o n   t o   y o u r   c l u s t e r .   M o n i t o r   t h e   w e b h o o k   i n   t h e   t e s t   n a m e s p a c e   t o   c h e c k   f o r   a n y   i s s u e s ,   t h e n   r o l l   t h e   w e b h o o k   o u t   t o   o t h e r   n a m e s p a c e s .   I f   t h e   w e b h o o k   i n t e r c e p t s   a n   A P I   r e q u e s t   t h a t   i t   w a s n ' t   m e a n t   t o   i n t e r c e p t ,   p a u s e   t h e   r o l l o u t   a n d   a d j u s t   t h e   s c o p e   o f   t h e   w e b h o o k   c o n f i g u r a t i o n .


Question: What is Limit edit access to mutating webhooks?

Answer: M u t a t i n g   w e b h o o k s   a r e   p o w e r f u l   K u b e r n e t e s   c o n t r o l l e r s .   U s e   R B A C   o r   a n o t h e r   a u t h o r i z a t i o n   m e c h a n i s m   t o   l i m i t   a c c e s s   t o   y o u r   w e b h o o k   c o n f i g u r a t i o n s   a n d   s e r v e r s .   F o r   R B A C ,   e n s u r e   t h a t   t h e   f o l l o w i n g   a c c e s s   i s   o n l y   a v a i l a b l e   t o   t r u s t e d   e n t i t i e s :   V e r b s :   c r e a t e ,   u p d a t e ,   p a t c h ,   d e l e t e ,   d e l e t e c o l l e c t i o n A P I   g r o u p :   a d m i s s i o n r e g i s t r a t i o n . k 8 s . i o / v 1 A P I   k i n d :   M u t a t i n g W e b h o o k C o n f i g u r a t i o n s   I f   y o u r   m u t a t i n g   w e b h o o k   s e r v e r   r u n s   i n   t h e   c l u s t e r ,   l i m i t   a c c e s s   t o   c r e a t e   o r   m o d i f y   a n y   r e s o u r c e s   i n   t h a t   n a m e s p a c e .


Question: What is Examples of good implementations?

Answer: T h e   f o l l o w i n g   p r o j e c t s   a r e   e x a m p l e s   o f   " g o o d "   c u s t o m   w e b h o o k   s e r v e r   i m p l e m e n t a t i o n s .   Y o u   c a n   u s e   t h e m   a s   a   s t a r t i n g   p o i n t   w h e n   d e s i g n i n g   y o u r   o w n   w e b h o o k s .   D o n ' t   u s e   t h e s e   e x a m p l e s   a s - i s ;   u s e   t h e m   a s   a   s t a r t i n g   p o i n t   a n d   d e s i g n   y o u r   w e b h o o k s   t o   r u n   w e l l   i n   y o u r   s p e c i f i c   e n v i r o n m e n t .   c e r t - m a n a g e r G a t e k e e p e r   O p e n   P o l i c y   A g e n t   ( O P A )


Question: What is What's next?

Answer: U s e   w e b h o o k s   f o r   a u t h e n t i c a t i o n   a n d   a u t h o r i z a t i o n L e a r n   a b o u t   M u t a t i n g A d m i s s i o n P o l i c i e s L e a r n   a b o u t   V a l i d a t i n g A d m i s s i o n P o l i c i e s


Question: What is 11.7 - 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 ) ) .