Question: What is Note:?

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


Question: What is Note:?

Answer: S t a r t i n g   f r o m   v 1 . 3 3 ,   K u b e r n e t e s   ( i n c l u d i n g   v 1 . 3 4 )   o f f e r s   a   w a y   t o   d e f i n e   f i e l d   v a l i d a t i o n s   u s i n g   d e c l a r a t i v e   t a g s .   T h i s   i s   u s e f u l   f o r   p e o p l e   c o n t r i b u t i n g   t o   K u b e r n e t e s   i t s e l f ,   a n d   i t ' s   a l s o   r e l e v a n t   i f   y o u ' r e   w r i t i n g   y o u r   o w n   A P I   u s i n g   K u b e r n e t e s   l i b r a r i e s .   T o   l e a r n   m o r e ,   s e e   D e c l a r a t i v e   A P I   V a l i d a t i o n .


Question: What is Dry-run?

Answer: W h e n   y o u   u s e   H T T P   v e r b s   t h a t   c a n   m o d i f y   r e s o u r c e s   ( P O S T ,   P U T ,   P A T C H ,   a n d   D E L E T E ) ,   y o u   c a n   s u b m i t   y o u r   r e q u e s t   i n   a   d r y   r u n   m o d e .   D r y   r u n   m o d e   h e l p s   t o   e v a l u a t e   a   r e q u e s t   t h r o u g h   t h e   t y p i c a l   r e q u e s t   s t a g e s   ( a d m i s s i o n   c h a i n ,   v a l i d a t i o n ,   m e r g e   c o n f l i c t s )   u p   u n t i l   p e r s i s t i n g   o b j e c t s   t o   s t o r a g e .   T h e   r e s p o n s e   b o d y   f o r   t h e   r e q u e s t   i s   a s   c l o s e   a s   p o s s i b l e   t o   a   n o n - d r y - r u n   r e s p o n s e .   K u b e r n e t e s   g u a r a n t e e s   t h a t   d r y - r u n   r e q u e s t s   w i l l   n o t   b e   p e r s i s t e d   i n   s t o r a g e   o r   h a v e   a n y   o t h e r   s i d e   e f f e c t s .


Question: What is Make a dry-run request?

Answer: D r y - r u n   i s   t r i g g e r e d   b y   s e t t i n g   t h e   d r y R u n   q u e r y   p a r a m e t e r .   T h i s   p a r a m e t e r   i s   a   s t r i n g ,   w o r k i n g   a s   a n   e n u m ,   a n d   t h e   o n l y   a c c e p t e d   v a l u e s   a r e :   W h e n   y o u   s e t   ? d r y R u n = A l l ,   a n y   r e l e v a n t   a d m i s s i o n   c o n t r o l l e r s   a r e   r u n ,   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   c h e c k   t h e   r e q u e s t   p o s t - m u t a t i o n ,   m e r g e   i s   p e r f o r m e d   o n   P A T C H ,   f i e l d s   a r e   d e f a u l t e d ,   a n d   s c h e m a   v a l i d a t i o n   o c c u r s .   T h e   c h a n g e s   a r e   n o t   p e r s i s t e d   t o   t h e   u n d e r l y i n g   s t o r a g e ,   b u t   t h e   f i n a l   o b j e c t   w h i c h   w o u l d   h a v e   b e e n   p e r s i s t e d   i s   s t i l l   r e t u r n e d   t o   t h e   u s e r ,   a l o n g   w i t h   t h e   n o r m a l   s t a t u s   c o d e .   I f   t h e   n o n - d r y - r u n   v e r s i o n   o f   a   r e q u e s t   w o u l d   t r i g g e r   a n   a d m i s s i o n   c o n t r o l l e r   t h a t   h a s   s i d e   e f f e c t s ,   t h e   r e q u e s t   w i l l   b e   f a i l e d   r a t h e r   t h a n   r i s k   a n   u n w a n t e d   s i d e   e f f e c t .   A l l   b u i l t   i n   a d m i s s i o n   c o n t r o l   p l u g i n s   s u p p o r t   d r y - r u n .   A d d i t i o n a l l y ,   a d m i s s i o n   w e b h o o k s   c a n   d e c l a r e   i n   t h e i r   c o n f i g u r a t i o n   o b j e c t   t h a t   t h e y   d o   n o t   h a v e   s i d e   e f f e c t s ,   b y   s e t t i n g   t h e i r   s i d e E f f e c t s   f i e l d   t o   N o n e .


Question: What is Note:?

Answer: H e r e   i s   a n   e x a m p l e   d r y - r u n   r e q u e s t   t h a t   u s e s   ? d r y R u n = A l l :   P O S T   / a p i / v 1 / n a m e s p a c e s / t e s t / p o d s ? d r y R u n = A l l   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n   A c c e p t :   a p p l i c a t i o n / j s o n   T h e   r e s p o n s e   w o u l d   l o o k   t h e   s a m e   a s   f o r   n o n - d r y - r u n   r e q u e s t ,   b u t   t h e   v a l u e s   o f   s o m e   g e n e r a t e d   f i e l d s   m a y   d i f f e r .


Question: What is Generated values?

Answer: S o m e   v a l u e s   o f   a n   o b j e c t   a r e   t y p i c a l l y   g e n e r a t e d   b e f o r e   t h e   o b j e c t   i s   p e r s i s t e d .   I t   i s   i m p o r t a n t   n o t   t o   r e l y   u p o n   t h e   v a l u e s   o f   t h e s e   f i e l d s   s e t   b y   a   d r y - r u n   r e q u e s t ,   s i n c e   t h e s e   v a l u e s   w i l l   l i k e l y   b e   d i f f e r e n t   i n   d r y - r u n   m o d e   f r o m   w h e n   t h e   r e a l   r e q u e s t   i s   m a d e .   S o m e   o f   t h e s e   f i e l d s   a r e :   n a m e :   i f   g e n e r a t e N a m e   i s   s e t ,   n a m e   w i l l   h a v e   a   u n i q u e   r a n d o m   n a m e c r e a t i o n T i m e s t a m p   /   d e l e t i o n T i m e s t a m p :   r e c o r d s   t h e   t i m e   o f   c r e a t i o n / d e l e t i o n U I D :   u n i q u e l y   i d e n t i f i e s   t h e   o b j e c t   a n d   i s   r a n d o m l y   g e n e r a t e d   ( n o n - d e t e r m i n i s t i c ) r e s o u r c e V e r s i o n :   t r a c k s   t h e   p e r s i s t e d   v e r s i o n   o f   t h e   o b j e c t A n y   f i e l d   s e t   b y   a   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 F o r   t h e   S e r v i c e   r e s o u r c e :   P o r t s   o r   I P   a d d r e s s e s   t h a t   t h e   k u b e - a p i s e r v e r   a s s i g n s   t o   S e r v i c e   o b j e c t s


Question: What is Dry-run authorization?

Answer: A u t h o r i z a t i o n   f o r   d r y - r u n   a n d   n o n - d r y - r u n   r e q u e s t s   i s   i d e n t i c a l .   T h u s ,   t o   m a k e   a   d r y - r u n   r e q u e s t ,   y o u   m u s t   b e   a u t h o r i z e d   t o   m a k e   t h e   n o n - d r y - r u n   r e q u e s t .   F o r   e x a m p l e ,   t o   r u n   a   d r y - r u n   p a t c h   f o r   a   D e p l o y m e n t ,   y o u   m u s t   b e   a u t h o r i z e d   t o   p e r f o r m   t h a t   p a t c h .   H e r e   i s   a n   e x a m p l e   o f   a   r u l e   f o r   K u b e r n e t e s   R B A C   t h a t   a l l o w s   p a t c h i n g   D e p l o y m e n t s :   r u l e s :   -   a p i G r o u p s :   [ " a p p s " ]   r e s o u r c e s :   [ " d e p l o y m e n t s " ]   v e r b s :   [ " p a t c h " ]   S e e   A u t h o r i z a t i o n   O v e r v i e w .


Question: What is Updates to existing resources?

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


Question: What is Note:?

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


Question: What is HTTP PUT to replace existing resource?

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


Question: What is HTTP PATCH using JSON Patch?

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


Question: What is HTTP PATCH using Server-Side Apply?

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


Question: What is Resource versions?

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


Question: What is resourceVersion fields in metadata?

Answer: C l i e n t s   f i n d   r e s o u r c e   v e r s i o n s   i n   r e s o u r c e s ,   i n c l u d i n g   t h e   r e s o u r c e s   f r o m   t h e   r e s p o n s e   s t r e a m   f o r   a   w a t c h ,   o r   w h e n   u s i n g   l i s t   t o   e n u m e r a t e   r e s o u r c e s .   v 1 . m e t a / O b j e c t M e t a   -   T h e   m e t a d a t a . r e s o u r c e V e r s i o n   o f   a   r e s o u r c e   i n s t a n c e   i d e n t i f i e s   t h e   r e s o u r c e   v e r s i o n   t h e   i n s t a n c e   w a s


Question: What is resourceVersion parameters in query strings?

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


Question: What is Semantics for get and list?

Answer: F o r   g e t   a n d   l i s t ,   t h e   s e m a n t i c s   o f   r e s o u r c e V e r s i o n   a r e :   g e t :   l i s t :   F r o m   v e r s i o n   v 1 . 1 9 ,   K u b e r n e t e s   A P I   s e r v e r s   s u p p o r t   t h e   r e s o u r c e V e r s i o n M a t c h   p a r a m e t e r   o n   l i s t   r e q u e s t s .   I f   y o u   s e t   b o t h   r e s o u r c e V e r s i o n   a n d   r e s o u r c e V e r s i o n M a t c h ,   t h e   r e s o u r c e V e r s i o n M a t c h   p a r a m e t e r   d e t e r m i n e s   h o w   t h e   A P I   s e r v e r   i n t e r p r e t s   r e s o u r c e V e r s i o n .   Y o u   s h o u l d   a l w a y s   s e t   t h e   r e s o u r c e V e r s i o n M a t c h   p a r a m e t e r   w h e n   s e t t i n g   r e s o u r c e V e r s i o n   o n   a   l i s t   r e q u e s t .   H o w e v e r ,   b e   p r e p a r e d   t o   h a n d l e   t h e   c a s e   w h e r e   t h e   A P I   s e r v e r   t h a t   r e s p o n d s   i s   u n a w a r e   o f   r e s o u r c e V e r s i o n M a t c h   a n d   i g n o r e s   i t .   U n l e s s   y o u   h a v e   s t r o n g   c o n s i s t e n c y   r e q u i r e m e n t s ,   u s i n g   r e s o u r c e V e r s i o n M a t c h = N o t O l d e r T h a n   a n d   a   k n o w n   r e s o u r c e V e r s i o n   i s   p r e f e r a b l e   s i n c e   i t   c a n   a c h i e v e   b e t t e r   p e r f o r m a n c e   a n d   s c a l a b i l i t y   o f   y o u r   c l u s t e r   t h a n   l e a v i n g   r e s o u r c e V e r s i o n   a n d   r e s o u r c e V e r s i o n M a t c h   u n s e t ,   w h i c h   r e q u i r e s   q u o r u m   r e a d   t o   b e   s e r v e d .   S e t t i n g   t h e   r e s o u r c e V e r s i o n M a t c h   p a r a m e t e r   w i t h o u t   s e t t i n g   r e s o u r c e V e r s i o n   i s   n o t   v a l i d .   T h i s   t a b l e   e x p l a i n s   t h e   b e h a v i o r   o f   l i s t   r e q u e s t s   w i t


Question: What is Note:?

Answer: T h e   m e a n i n g   o f   t h e   g e t   a n d   l i s t   s e m a n t i c s   a r e :


Question: What is Note:?

Answer: W h e n   u s i n g   r e s o u r c e V e r s i o n M a t c h = N o t O l d e r T h a n   a n d   l i m i t   i s   s e t ,   c l i e n t s   m u s t   h a n d l e   H T T P   4 1 0   G o n e   r e s p o n s e s .   F o r   e x a m p l e ,   t h e   c l i e n t   m i g h t   r e t r y   w i t h   a   n e w e r   r e s o u r c e V e r s i o n   o r   f a l l   b a c k   t o   r e s o u r c e V e r s i o n = " " .   W h e n   u s i n g   r e s o u r c e V e r s i o n M a t c h = E x a c t   a n d   l i m i t   i s   u n s e t ,   c l i e n t s   m u s t   v e r i f y   t h a t   t h e   c o l l e c t i o n ' s   . m e t a d a t a . r e s o u r c e V e r s i o n   m a t c h e s   t h e   r e q u e s t e d   r e s o u r c e V e r s i o n ,   a n d   h a n d l e   t h e   c a s e   w h e r e   i t   d o e s   n o t .   F o r   e x a m p l e ,   t h e   c l i e n t   m i g h t   f a l l   b a c k   t o   a   r e q u e s t   w i t h   l i m i t   s e t .


Question: What is Semantics for watch?

Answer: F o r   w a t c h ,   t h e   s e m a n t i c s   o f   r e s o u r c e   v e r s i o n   a r e :   w a t c h :   T h e   m e a n i n g   o f   t h o s e   w a t c h   s e m a n t i c s   a r e :


Question: What is "410 Gone" responses?

Answer: S e r v e r s   a r e   n o t   r e q u i r e d   t o   s e r v e   a l l   o l d e r   r e s o u r c e   v e r s i o n s   a n d   m a y   r e t u r n   a   H T T P   4 1 0   ( G o n e )   s t a t u s   c o d e   i f   a   c l i e n t   r e q u e s t s   a   r e s o u r c e V e r s i o n   o l d e r   t h a n   t h e   s e r v e r   h a s   r e t a i n e d .   C l i e n t s   m u s t   b e   a b l e   t o   t o l e r a t e   4 1 0   ( G o n e )   r e s p o n s e s .   S e e   E f f i c i e n t   d e t e c t i o n   o f   c h a n g e s   f o r   d e t a i l s   o n   h o w   t o   h a n d l e   4 1 0   ( G o n e )   r e s p o n s e s   w h e n   w a t c h i n g   r e s o u r c e s .   I f   y o u   r e q u e s t   a   r e s o u r c e V e r s i o n   o u t s i d e   t h e   a p p l i c a b l e   l i m i t   t h e n ,   d e p e n d i n g   o n   w h e t h e r   a   r e q u e s t   i s   s e r v e d   f r o m   c a c h e   o r   n o t ,   t h e   A P I   s e r v e r   m a y   r e p l y   w i t h   a   4 1 0   G o n e   H T T P   r e s p o n s e .


Question: What is Unavailable resource versions?

Answer: S e r v e r s   a r e   n o t   r e q u i r e d   t o   s e r v e   u n r e c o g n i z e d   r e s o u r c e   v e r s i o n s .   I f   y o u   r e q u e s t   l i s t   o r   g e t   f o r   a   r e s o u r c e   v e r s i o n   t h a t   t h e   A P I   s e r v e r   d o e s   n o t   r e c o g n i z e ,   t h e n   t h e   A P I   s e r v e r   m a y   e i t h e r :   w a i t   b r i e f l y   f o r   t h e   r e s o u r c e   v e r s i o n   t o   b e c o m e   a v a i l a b l e ,   t h e n   t i m e o u t   w i t h   a   5 0 4   ( G a t e w a y   T i m e o u t )   i f   t h e   p r o v i d e d   r e s o u r c e   v e r s i o n s   d o e s   n o t   b e c o m e   a v a i l a b l e   i n   a   r e a s o n a b l e   a m o u n t   o f   t i m e ; r e s p o n d   w i t h   a   R e t r y - A f t e r   r e s p o n s e   h e a d e r   i n d i c a t i n g   h o w   m a n y   s e c o n d s   a   c l i e n t   s h o u l d   w a i t   b e f o r e   r e t r y i n g   t h e   r e q u e s t .   I f   y o u   r e q u e s t   a   r e s o u r c e   v e r s i o n   t h a t   a n   A P I   s e r v e r   d o e s   n o t   r e c o g n i z e ,   t h e   k u b e - a p i s e r v e r   a d d i t i o n a l l y   i d e n t i f i e s   i t s   e r r o r   r e s p o n s e s   w i t h   a   m e s s a g e   T o o   l a r g e   r e s o u r c e   v e r s i o n .   I f   y o u   m a k e   a   w a t c h   r e q u e s t   f o r   a n   u n r e c o g n i z e d   r e s o u r c e   v e r s i o n ,   t h e   A P I   s e r v e r   m a y   w a i t   i n d e f i n i t e l y   ( u n t i l   t h e   r e q u e s t   t i m e o u t )   f o r   t h e   r e s o u r c e   v e r s i o n   t o   b e c o m e   a v a i l a b l e .


Question: What is 2.3 - Server-Side Apply?

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


Question: What is Field management?

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


Question: What is Example?

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


Question: What is Note:?

Answer: - - -   a p i V e r s i o n :   v 1   k i n d :   C o n f i g M a p   m e t a d a t a :   n a m e :   t e s t - c m   n a m e s p a c e :   d e f a u l t   l a b e l s :   t e s t - l a b e l :   t e s t   m a n a g e d F i e l d s :   -   m a n a g e r :   k u b e c t l   o p e r a t i o n :   A p p l y   #   n o t e   c a p i t a l i z a t i o n :   " A p p l y "   ( o r   " U p d a t e " )   a p i V e r s i o n :   v 1   t i m e :   " 2 0 1 0 - 1 0 - 1 0 T 0 : 0 0 : 0 0 Z "   f i e l d s T y p e :   F i e l d s V 1   f i e l d s V 1 :   f : m e t a d a t a :   f : l a b e l s :   f : t e s t - l a b e l :   { }   f : d a t a :   f : k e y :   { }   d a t a :   k e y :   s o m e   v a l u e   T h a t   e x a m p l e   C o n f i g M a p   o b j e c t   c o n t a i n s   a   s i n g l e   f i e l d   m a n a g e m e n t   r e c o r d   i n   . m e t a d a t a . m a n a g e d F i e l d s .   T h e   f i e l d   m a n a g e m e n t   r e c o r d   c o n s i s t s   o f   b a s i c   i n f o r m a t i o n   a b o u t   t h e   m a n a g i n g   e n t i t y   i t s e l f ,   p l u s   d e t a i l s   a b o u t   t h e   f i e l d s   b e i n g   m a n a g e d   a n d   t h e   r e l e v a n t   o p e r a t i o n   ( A p p l y   o r   U p d a t e ) .   I f   t h e   r e q u e s t   t h a t   l a s t   c h a n g e d   t h a t   f i e l d   w a s   a   S e r v e r - S i d e   A p p l y   p a t c h   t h e n   t h e   v a l u e   o f   o p e r a t i o n   i s   A p p l y ;   o t h e r w i s e ,   i t   i s   U p d a t e .   T h e r e   i s   a n o t h e r   p o s s i b l e   o u t c o m e .   A   c l i e n t   c o u l d   s u b m i t   a n   i n v a l i d   r e q u e s t   b o d y .   I f   t h e   f u l l y   s p e c i f i e d   i n t e n t   d o e s   n o t   p r o d u c e   a   v a l i d   o b j e c t ,   t h e   r e q u e s t   f a i l s .   I t   i s   h o w e v e r   p o s s i b l e   t o   c h a n g e   . m e t a d a t a . m a n a g e d F i e l d s   t h r o u g h


Question: What is Conflicts?

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


Question: What is Field managers?

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


Question: What is Serialization?

Answer: A t   t h e   p r o t o c o l   l e v e l ,   K u b e r n e t e s   r e p r e s e n t s   S e r v e r - S i d e   A p p l y   m e s s a g e   b o d i e s   a s   Y A M L ,   w i t h   t h e   m e d i a   t y p e   a p p l i c a t i o n / a p p l y - p a t c h + y a m l .


Question: What is Note:?

Answer: W h e t h e r   y o u   a r e   s u b m i t t i n g   J S O N   d a t a   o r   Y A M L   d a t a ,   u s e   a p p l i c a t i o n / a p p l y - p a t c h + y a m l   a s   t h e   C o n t e n t - T y p e   h e a d e r   v a l u e .   A l l   J S O N   d o c u m e n t s   a r e   v a l i d   Y A M L .   H o w e v e r ,   K u b e r n e t e s   h a s   a   b u g   w h e r e   i t   u s e s   a   Y A M L   p a r s e r   t h a t   d o e s   n o t   f u l l y   i m p l e m e n t   t h e   Y A M L   s p e c i f i c a t i o n .   S o m e   J S O N   e s c a p e s   m a y   n o t   b e   r e c o g n i z e d .   T h e   s e r i a l i z a t i o n   i s   t h e   s a m e   a s   f o r   K u b e r n e t e s   o b j e c t s ,   w i t h   t h e   e x c e p t i o n   t h a t   c l i e n t s   a r e   n o t   r e q u i r e d   t o   s e n d   a   c o m p l e t e   o b j e c t .   H e r e ' s   a n   e x a m p l e   o f   a   S e r v e r - S i d e   A p p l y   m e s s a g e   b o d y   ( f u l l y   s p e c i f i e d   i n t e n t ) :   {   " a p i V e r s i o n " :   " v 1 " ,   " k i n d " :   " C o n f i g M a p "   }   ( t h i s   w o u l d   m a k e   a   n o - c h a n g e   u p d a t e ,   p r o v i d e d   t h a t   i t   w a s   s e n t   a s   t h e   b o d y   o f   a   p a t c h   r e q u e s t   t o   a   v a l i d   v 1 / c o n f i g m a p s   r e s o u r c e ,   a n d   w i t h   t h e   a p p r o p r i a t e   r e q u e s t   C o n t e n t - T y p e ) .


Question: What is Operations in scope for field management?

Answer: T h e   K u b e r n e t e s   A P I   o p e r a t i o n s   w h e r e   f i e l d   m a n a g e m e n t   i s   c o n s i d e r e d   a r e :   S e r v e r - S i d e   A p p l y   ( H T T P   P A T C H ,   w i t h   c o n t e n t   t y p e   a p p l i c a t i o n / a p p l y - p a t c h + y a m l ) R e p l a c i n g   a n   e x i s t i n g   o b j e c t   ( u p d a t e   t o   K u b e r n e t e s ;   P U T   a t   t h e   H T T P   l e v e l )   B o t h   o p e r a t i o n s   u p d a t e   . m e t a d a t a . m a n a g e d F i e l d s ,   b u t   b e h a v e   a   l i t t l e   d i f f e r e n t l y .   U n l e s s   y o u   s p e c i f y   a   f o r c e d   o v e r r i d e ,   a n   a p p l y   o p e r a t i o n   t h a t   e n c o u n t e r s   f i e l d - l e v e l   c o n f l i c t s   a l w a y s   f a i l s ;   b y   c o n t r a s t ,   i f   y o u   m a k e   a   c h a n g e   u s i n g   u p d a t e   t h a t   w o u l d   a f f e c t   a   m a n a g e d   f i e l d ,   a   c o n f l i c t   n e v e r   p r o v o k e s   f a i l u r e   o f   t h e   o p e r a t i o n .   A l l   S e r v e r - S i d e   A p p l y   p a t c h   r e q u e s t s   a r e   r e q u i r e d   t o   i d e n t i f y   t h e m s e l v e s   b y   p r o v i d i n g   a   f i e l d M a n a g e r   q u e r y   p a r a m e t e r ,   w h i l e   t h e   q u e r y   p a r a m e t e r   i s   o p t i o n a l   f o r   u p d a t e   o p e r a t i o n s .   F i n a l l y ,   w h e n   u s i n g   t h e   A p p l y   o p e r a t i o n   y o u   c a n n o t   d e f i n e   m a n a g e d F i e l d s   i n   t h e   b o d y   o f   t h e   r e q u e s t   t h a t   y o u   s u b m i t .   A n   e x a m p l e   o b j e c t   w i t h   m u l t i p l e   m a n a g e r s   c o u l d   l o o k   l i k e   t h i s :   - - -   a p i V e r s i o n :   v 1   k i n d :   C o n f i g M a p   m e t a d a t a :   n a m e :   t e s t - c m   n a m e s p a c e :   d e f a u l t   l a b e l s :   t e s t - l a


Question: What is Merge strategy?

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


Question: What is Custom resources and Server-Side Apply?

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


Question: What is Compatibility across topology changes?

Answer: O n   r a r e   o c c u r r e n c e s ,   t h e   a u t h o r   f o r   a   C u s t o m R e s o u r c e D e f i n i t i o n   ( C R D )   o r   b u i l t - i n   m a y   w a n t   t o   c h a n g e   t h e   s p e c i f i c   t o p o l o g y   o f   a   f i e l d   i n   t h e i r   r e s o u r c e ,   w i t h o u t   i n c r e m e n t i n g   i t s   A P I   v e r s i o n .   C h a n g i n g   t h e   t o p o l o g y   o f   t y p e s ,   b y   u p g r a d i n g   t h e   c l u s t e r   o r   u p d a t i n g   t h e   C R D ,   h a s   d i f f e r e n t   c o n s e q u e n c e s   w h e n   u p d a t i n g   e x i s t i n g   o b j e c t s .   T h e r e   a r e   t w o   c a t e g o r i e s   o f   c h a n g e s :   w h e n   a   f i e l d   g o e s   f r o m   m a p / s e t / g r a n u l a r   t o   a t o m i c ,   a n d   t h e   o t h e r   w a y   a r o u n d .   W h e n   t h e   l i s t T y p e ,   m a p T y p e ,   o r   s t r u c t T y p e   c h a n g e s   f r o m   m a p / s e t / g r a n u l a r   t o   a t o m i c ,   t h e   w h o l e   l i s t ,   m a p ,   o r   s t r u c t   o f   e x i s t i n g   o b j e c t s   w i l l   e n d - u p   b e i n g   o w n e d   b y   a c t o r s   w h o   o w n e d   a n   e l e m e n t   o f   t h e s e   t y p e s .   T h i s   m e a n s   t h a t   a n y   f u r t h e r   c h a n g e   t o   t h e s e   o b j e c t s   w o u l d   c a u s e   a   c o n f l i c t .   W h e n   a   l i s t T y p e ,   m a p T y p e ,   o r   s t r u c t T y p e   c h a n g e s   f r o m   a t o m i c   t o   m a p / s e t / g r a n u l a r ,   t h e   A P I   s e r v e r   i s   u n a b l e   t o   i n f e r   t h e   n e w   o w n e r s h i p   o f   t h e s e   f i e l d s .   B e c a u s e   o f   t h a t ,   n o   c o n f l i c t   w i l l   b e   p r o d u c e d   w h e n   o b j e c t s   h a v e   t h e s e   f i e l d s   u p d a t e d .   F o r   t h a t   r e a s o n ,   i t   i s   n o t   r e c o m m e n d e d   t o


Question: What is Using Server-Side Apply in a controller?

Answer: A s   a   d e v e l o p e r   o f   a   c o n t r o l l e r ,   y o u   c a n   u s e   S e r v e r - S i d e   A p p l y   a s   a   w a y   t o   s i m p l i f y   t h e   u p d a t e   l o g i c   o f   y o u r   c o n t r o l l e r .   T h e   m a i n   d i f f e r e n c e s   w i t h   a   r e a d - m o d i f y - w r i t e   a n d / o r   p a t c h   a r e   t h e   f o l l o w i n g :   t h e   a p p l i e d   o b j e c t   m u s t   c o n t a i n   a l l   t h e   f i e l d s   t h a t   t h e   c o n t r o l l e r   c a r e s   a b o u t . t h e r e   i s   n o   w a y   t o   r e m o v e   f i e l d s   t h a t   h a v e n ' t   b e e n   a p p l i e d   b y   t h e   c o n t r o l l e r   b e f o r e   ( c o n t r o l l e r   c a n   s t i l l   s e n d   a   p a t c h   o r   u p d a t e   f o r   t h e s e   u s e - c a s e s ) . t h e   o b j e c t   d o e s n ' t   h a v e   t o   b e   r e a d   b e f o r e h a n d ;   r e s o u r c e V e r s i o n   d o e s n ' t   h a v e   t o   b e   s p e c i f i e d .   I t   i s   s t r o n g l y   r e c o m m e n d e d   f o r   c o n t r o l l e r s   t o   a l w a y s   f o r c e   c o n f l i c t s   o n   o b j e c t s   t h a t   t h e y   o w n   a n d   m a n a g e ,   s i n c e   t h e y   m i g h t   n o t   b e   a b l e   t o   r e s o l v e   o r   a c t   o n   t h e s e   c o n f l i c t s .


Question: What is Transferring ownership?

Answer: I n   a d d i t i o n   t o   t h e   c o n c u r r e n c y   c o n t r o l s   p r o v i d e d   b y   c o n f l i c t   r e s o l u t i o n ,   S e r v e r - S i d e   A p p l y   p r o v i d e s   w a y s   t o   p e r f o r m   c o o r d i n a t e d   f i e l d   o w n e r s h i p   t r a n s f e r s   f r o m   u s e r s   t o   c o n t r o l l e r s .   T h i s   i s   b e s t   e x p l a i n e d   b y   e x a m p l e .   L e t ' s   l o o k   a t   h o w   t o   s a f e l y   t r a n s f e r   o w n e r s h i p   o f   t h e   r e p l i c a s   f i e l d   f r o m   a   u s e r   t o   a   c o n t r o l l e r   w h i l e   e n a b l i n g   a u t o m a t i c   h o r i z o n t a l   s c a l i n g   f o r   a   D e p l o y m e n t ,   u s i n g   t h e   H o r i z o n t a l P o d A u t o s c a l e r   r e s o u r c e   a n d   i t s   a c c o m p a n y i n g   c o n t r o l l e r .   S a y   a   u s e r   h a s   d e f i n e d   D e p l o y m e n t   w i t h   r e p l i c a s   s e t   t o   t h e   d e s i r e d   v a l u e :   a p i V e r s i o n :   a p p s / v 1   k i n d :   D e p l o y m e n t   m e t a d a t a :   n a m e :   n g i n x - d e p l o y m e n t   l a b e l s :   a p p :   n g i n x   s p e c :   r e p l i c a s :   3   s e l e c t o r :   m a t c h L a b e l s :   a p p :   n g i n x   t e m p l a t e :   m e t a d a t a :   l a b e l s :   a p p :   n g i n x   s p e c :   c o n t a i n e r s :   -   n a m e :   n g i n x   i m a g e :   n g i n x : 1 . 1 4 . 2   A n d   t h e   u s e r   h a s   c r e a t e d   t h e   D e p l o y m e n t   u s i n g   S e r v e r - S i d e   A p p l y ,   l i k e   s o :   k u b e c t l   a p p l y   - f   h t t p s : / / k 8 s . i o / e x a m p l e s / a p p l i c a t i o n / s s a / n g i n x - d e p l o y m e n t . y a m l   - - s e r v e r - s i d e   T h e n   l a t e r ,   a u t o m a t i c   s c a l i n g   i s   e n a b l e d   f o r   t h e   D e p l o y m e n t ;   f o r   e x a m p l e :   k u


Question: What is Note:?

Answer: T h e   u s e r   a p p l i e s   t h a t   m a n i f e s t   u s i n g   a   p r i v a t e   f i e l d   m a n a g e r   n a m e .   I n   t h i s   e x a m p l e ,   t h e   u s e r   p i c k e d   h a n d o v e r - t o - h p a :   k u b e c t l   a p p l y   - f   n g i n x - d e p l o y m e n t - r e p l i c a s - o n l y . y a m l   \   - - s e r v e r - s i d e   - - f i e l d - m a n a g e r = h a n d o v e r - t o - h p a   \   - - v a l i d a t e = f a l s e   I f   t h e   a p p l y   r e s u l t s   i n   a   c o n f l i c t   w i t h   t h e   H P A   c o n t r o l l e r ,   t h e n   d o   n o t h i n g .   T h e   c o n f l i c t   i n d i c a t e s   t h e   c o n t r o l l e r   h a s   c l a i m e d   t h e   f i e l d   e a r l i e r   i n   t h e   p r o c e s s   t h a n   i t   s o m e t i m e s   d o e s .   A t   t h i s   p o i n t   t h e   u s e r   m a y   r e m o v e   t h e   r e p l i c a s   f i e l d   f r o m   t h e i r   m a n i f e s t :   a p i V e r s i o n :   a p p s / v 1   k i n d :   D e p l o y m e n t   m e t a d a t a :   n a m e :   n g i n x - d e p l o y m e n t   l a b e l s :   a p p :   n g i n x   s p e c :   s e l e c t o r :   m a t c h L a b e l s :   a p p :   n g i n x   t e m p l a t e :   m e t a d a t a :   l a b e l s :   a p p :   n g i n x   s p e c :   c o n t a i n e r s :   -   n a m e :   n g i n x   i m a g e :   n g i n x : 1 . 1 4 . 2   N o t e   t h a t   w h e n e v e r   t h e   H P A   c o n t r o l l e r   s e t s   t h e   r e p l i c a s   f i e l d   t o   a   n e w   v a l u e ,   t h e   t e m p o r a r y   f i e l d   m a n a g e r   w i l l   n o   l o n g e r   o w n   a n y   f i e l d s   a n d   w i l l   b e   a u t o m a t i c a l l y   d e l e t e d .   N o   f u r t h e r   c l e a n   u p   i s   r e q u i r e d .


Question: What is Transferring ownership between managers?

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


Question: What is Comparison with Client-Side Apply?

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


Question: What is Upgrading from client-side apply to server-side apply?

Answer: C l i e n t - s i d e   a p p l y   u s e r s   w h o   m a n a g e   a   r e s o u r c e   w i t h   k u b e c t l   a p p l y   c a n   s t a r t   u s i n g   s e r v e r - s i d e   a p p l y   w i t h   t h e   f o l l o w i n g   f l a g .   k u b e c t l   a p p l y   - - s e r v e r - s i d e   [ - - d r y - r u n = s e r v e r ]   B y   d e f a u l t ,   f i e l d   m a n a g e m e n t   o f   t h e   o b j e c t   t r a n s f e r s   f r o m   c l i e n t - s i d e   a p p l y   t o   k u b e c t l   s e r v e r - s i d e   a p p l y ,   w i t h o u t   e n c o u n t e r i n g   c o n f l i c t s .


Question: What is Caution:?

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


Question: What is Downgrading from server-side apply to client-side apply?

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


Question: What is API implementation?

Answer: T h e   P A T C H   v e r b   ( f o r   a n   o b j e c t   t h a t   s u p p o r t s   S e r v e r - S i d e   A p p l y )   a c c e p t s   t h e   u n o f f i c i a l   a p p l i c a t i o n / a p p l y - p a t c h + y a m l   c o n t e n t   t y p e .   U s e r s   o f   S e r v e r - S i d e   A p p l y   c a n   s e n d   p a r t i a l l y   s p e c i f i e d   o b j e c t s   a s   Y A M L   a s   t h e   b o d y   o f   a   P A T C H   r e q u e s t   t o   t h e   U R I   o f   a   r e s o u r c e .   W h e n   a p p l y i n g   a   c o n f i g u r a t i o n ,   y o u   s h o u l d   a l w a y s   i n c l u d e   a l l   t h e   f i e l d s   t h a t   a r e   i m p o r t a n t   t o   t h e   o u t c o m e   ( s u c h   a s   a   d e s i r e d   s t a t e )   t h a t   y o u   w a n t   t o   d e f i n e .   A l l   J S O N   m e s s a g e s   a r e   v a l i d   Y A M L .   T h e r e f o r e ,   i n   a d d i t i o n   t o   u s i n g   Y A M L   r e q u e s t   b o d i e s   f o r   S e r v e r - S i d e   A p p l y   r e q u e s t s ,   y o u   c a n   a l s o   u s e   J S O N   r e q u e s t   b o d i e s ,   a s   t h e y   a r e   a l s o   v a l i d   Y A M L .   I n   e i t h e r   c a s e ,   u s e   t h e   m e d i a   t y p e   a p p l i c a t i o n / a p p l y - p a t c h + y a m l   f o r   t h e   H T T P   r e q u e s t .


Question: What is Access control and permissions?

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


Question: What is Clearing managedFields?

Answer: I t   i s   p o s s i b l e   t o   s t r i p   a l l   m a n a g e d F i e l d s   f r o m   a n   o b j e c t   b y   o v e r w r i t i n g   t h e m   u s i n g   a   p a t c h   ( J S O N   M e r g e   P a t c h ,   S t r a t e g i c   M e r g e   P a t c h ,   J S O N   P a t c h ) ,   o r   t h r o u g h   a n   u p d a t e   ( H T T P   P U T ) ;   i n   o t h e r   w o r d s ,   t h r o u g h   e v e r y   w r i t e   o p e r a t i o n   o t h e r   t h a n   a p p l y .   T h i s   c a n   b e   d o n e   b y   o v e r w r i t i n g   t h e   m a n a g e d F i e l d s   f i e l d   w i t h   a n   e m p t y   e n t r y .   T w o   e x a m p l e s   a r e :   P A T C H   / a p i / v 1 / n a m e s p a c e s / d e f a u l t / c o n f i g m a p s / e x a m p l e - c m   A c c e p t :   a p p l i c a t i o n / j s o n   C o n t e n t - T y p e :   a p p l i c a t i o n / m e r g e - p a t c h + j s o n   {   " m e t a d a t a " :   {   " m a n a g e d F i e l d s " :   [   { }   ]   }   }   P A T C H   / a p i / v 1 / n a m e s p a c e s / d e f a u l t / c o n f i g m a p s / e x a m p l e - c m   A c c e p t :   a p p l i c a t i o n / j s o n   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n - p a t c h + j s o n   I f - M a t c h :   1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9   [ { " o p " :   " r e p l a c e " ,   " p a t h " :   " / m e t a d a t a / m a n a g e d F i e l d s " ,   " v a l u e " :   [ { } ] } ]   T h i s   w i l l   o v e r w r i t e   t h e   m a n a g e d F i e l d s   w i t h   a   l i s t   c o n t a i n i n g   a   s i n g l e   e m p t y   e n t r y   t h a t   t h e n   r e s u l t s   i n   t h e   m a n a g e d F i e l d s   b e i n g   s t r i p p e d   e n t i r e l y   f r o m   t h e   o b j e c t .   N o t e   t h a t   s e t t i n g   t h e   m a n a g e d F i e l d s   t o   a n   e m p t y   l i s t   w i l l   n o t   r e s e t   t h e   f i e l d .   T h i s   i s   o n   p u r p o s e ,   s o   m a n a g e d F i


Question: What is What's next?

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


Question: What is 2.4 - Client Libraries?

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


Question: What is Officially-supported Kubernetes client libraries?

Answer: T h e   f o l l o w i n g   c l i e n t   l i b r a r i e s   a r e   o f f i c i a l l y   m a i n t a i n e d   b y   K u b e r n e t e s   S I G   A P I   M a c h i n e r y .


Question: What is Community-maintained client libraries?

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


Question: What is 2.5 - Common Expression Language in Kubernetes?

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


Question: What is Language overview?

Answer: T h e   C E L   l a n g u a g e   h a s   a   s t r a i g h t f o r w a r d   s y n t a x   t h a t   i s   s i m i l a r   t o   t h e   e x p r e s s i o n s   i n   C ,   C + + ,   J a v a ,   J a v a S c r i p t   a n d   G o .   C E L   w a s   d e s i g n e d   t o   b e   e m b e d d e d   i n t o   a p p l i c a t i o n s .   E a c h   C E L   " p r o g r a m "   i s   a   s i n g l e   e x p r e s s i o n   t h a t   e v a l u a t e s   t o   a   s i n g l e   v a l u e .   C E L   e x p r e s s i o n s   a r e   t y p i c a l l y   s h o r t   " o n e - l i n e r s "   t h a t   i n l i n e   w e l l   i n t o   t h e   s t r i n g   f i e l d s   o f   K u b e r n e t e s   A P I   r e s o u r c e s .   I n p u t s   t o   a   C E L   p r o g r a m   a r e   " v a r i a b l e s " .   E a c h   K u b e r n e t e s   A P I   f i e l d   t h a t   c o n t a i n s   C E L   d e c l a r e s   i n   t h e   A P I   d o c u m e n t a t i o n   w h i c h   v a r i a b l e s   a r e   a v a i l a b l e   t o   u s e   f o r   t h a t   f i e l d .   F o r   e x a m p l e ,   i n   t h e   x - k u b e r n e t e s - v a l i d a t i o n s [ i ] . r u l e s   f i e l d   o f   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 h e   s e l f   a n d   o l d S e l f   v a r i a b l e s   a r e   a v a i l a b l e   a n d   r e f e r   t o   t h e   p r e v i o u s   a n d   c u r r e n t   s t a t e   o f   t h e   c u s t o m   r e s o u r c e   d a t a   t o   b e   v a l i d a t e d   b y   t h e   C E L   e x p r e s s i o n .   O t h e r   K u b e r n e t e s   A P I   f i e l d s   m a y   d e c l a r e   d i f f e r e n t   v a r i a b l e s .   S e e   t h e   A P I   d o c u m e n t a t i o n   o f   t h e   A P I   f i e l d s   t o   l e a r n   w h i c h   v a r i a b l e s   a r e   a v a i l a b l e   f o r   t h a t   f i e l d .   E x a m p l e   C E L   e x p r e s s i o n s :


Question: What is CEL options, language features, and libraries?

Answer: C E L   i s   c o n f i g u r e d   w i t h   t h e   f o l l o w i n g   o p t i o n s ,   l i b r a r i e s   a n d   l a n g u a g e   f e a t u r e s ,   i n t r o d u c e d   a t   t h e   s p e c i f i e d   K u b e r n e t e s   v e r s i o n s :   C E L   f u n c t i o n s ,   f e a t u r e s   a n d   l a n g u a g e   s e t t i n g s   s u p p o r t   K u b e r n e t e s   c o n t r o l   p l a n e   r o l l b a c k s .   F o r   e x a m p l e ,   C E L   O p t i o n a l   V a l u e s   w a s   i n t r o d u c e d   a t   K u b e r n e t e s   1 . 2 9   a n d   s o   o n l y   A P I   s e r v e r s   a t   t h a t   v e r s i o n   o r   n e w e r   w i l l   a c c e p t   w r i t e   r e q u e s t s   t o   C E L   e x p r e s s i o n s   t h a t   u s e   C E L   O p t i o n a l   V a l u e s .   H o w e v e r ,   w h e n   a   c l u s t e r   i s   r o l l e d   b a c k   t o   K u b e r n e t e s   1 . 2 8   C E L   e x p r e s s i o n s   u s i n g   " C E L   O p t i o n a l   V a l u e s "   t h a t   a r e   a l r e a d y   s t o r e d   i n   A P I   r e s o u r c e s   w i l l   c o n t i n u e   t o   e v a l u a t e   c o r r e c t l y .


Question: What is Kubernetes CEL libraries?

Answer: I n   a d d i t i o n a l   t o   t h e   C E L   c o m m u n i t y   l i b r a r i e s ,   K u b e r n e t e s   i n c l u d e s   C E L   l i b r a r i e s   t h a t   a r e   a v a i l a b l e   e v e r y w h e r e   C E L   i s   u s e d   i n   K u b e r n e t e s .


Question: What is Kubernetes list library?

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


Question: What is Kubernetes regex library?

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


Question: What is Kubernetes URL library?

Answer: T o   m a k e   i t   e a s i e r   a n d   s a f e r   t o   p r o c e s s   U R L s ,   t h e   f o l l o w i n g   f u n c t i o n s   h a v e   b e e n   a d d e d :   i s U R L ( s t r i n g )   c h e c k s   i f   a   s t r i n g   i s   a   v a l i d   U R L   a c c o r d i n g   t o   t h e   G o ' s   n e t / u r l   p a c k a g e .   T h e   s t r i n g   m u s t   b e   a n   a b s o l u t e   U R L . u r l ( s t r i n g )   U R L   c o n v e r t s   a   s t r i n g   t o   a   U R L   o r   r e s u l t s   i n   a n   e r r o r   i f   t h e   s t r i n g   i s   n o t   a   v a l i d   U R L .   O n c e   p a r s e d   v i a   t h e   u r l   f u n c t i o n ,   t h e   r e s u l t i n g   U R L   o b j e c t   h a s   g e t S c h e m e ,   g e t H o s t ,   g e t H o s t n a m e ,   g e t P o r t ,   g e t E s c a p e d P a t h   a n d   g e t Q u e r y   a c c e s s o r s .   E x a m p l e s :   S e e   t h e   K u b e r n e t e s   U R L   l i b r a r y   g o d o c   f o r   m o r e   i n f o r m a t i o n .


Question: What is Kubernetes IP address library?

Answer: T o   m a k e   i t   e a s i e r   a n d   s a f e r   t o   p r o c e s s   I P   a d d r e s s e s ,   t h e   f o l l o w i n g   f u n c t i o n s   h a v e   b e e n   a d d e d :   i s I P ( s t r i n g )   c h e c k s   i f   a   s t r i n g   i s   a   v a l i d   I P   a d d r e s s . i p ( s t r i n g )   I P   c o n v e r t s   a   s t r i n g   t o   a n   I P   a d d r e s s   o b j e c t   o r   r e s u l t s   i n   a n   e r r o r   i f   t h e   s t r i n g   i s   n o t   a   v a l i d   I P   a d d r e s s .   F o r   b o t h   f u n c t i o n s ,   t h e   I P   a d d r e s s   m u s t   b e   a n   I P v 4   o r   I P v 6   a d d r e s s .   I P v 4 - m a p p e d   I P v 6   a d d r e s s e s   ( e . g .   : : f f f f : 1 . 2 . 3 . 4 )   a r e   n o t   a l l o w e d .   I P   a d d r e s s e s   w i t h   z o n e s   ( e . g .   f e 8 0 : : 1 % e t h 0 )   a r e   n o t   a l l o w e d .   L e a d i n g   z e r o s   i n   I P v 4   a d d r e s s   o c t e t s   a r e   n o t   a l l o w e d .   O n c e   p a r s e d   v i a   t h e   i p   f u n c t i o n ,   t h e   r e s u l t i n g   I P   o b j e c t   h a s   t h e   f o l l o w i n g   l i b r a r y   o f   m e m b e r   f u n c t i o n s :   E x a m p l e s :   S e e   t h e   K u b e r n e t e s   I P   a d d r e s s   l i b r a r y   g o d o c   f o r   m o r e   i n f o r m a t i o n .


Question: What is Kubernetes CIDR library?

Answer: C I D R   p r o v i d e s   a   C E L   f u n c t i o n   l i b r a r y   e x t e n s i o n   o f   C I D R   n o t a t i o n   p a r s i n g   f u n c t i o n s .


Question: What is cidr?

Answer: C o n v e r t s   a   s t r i n g   i n   C I D R   n o t a t i o n   t o   a   n e t w o r k   a d d r e s s   r e p r e s e n t a t i o n   o r   r e s u l t s   i n   a n   e r r o r   i f   t h e   s t r i n g   i s   n o t   a   v a l i d   C I D R   n o t a t i o n .   T h e   C I D R   m u s t   b e   a n   I P v 4   o r   I P v 6   s u b n e t   a d d r e s s   w i t h   a   m a s k .   L e a d i n g   z e r o s   i n   I P v 4   a d d r e s s   o c t e t s   a r e   n o t   a l l o w e d .   I P v 4 - m a p p e d   I P v 6   a d d r e s s e s   ( e . g .   : : f f f f : 1 . 2 . 3 . 4 / 2 4 )   a r e   n o t   a l l o w e d .   c i d r ( < s t r i n g > )   < C I D R >   E x a m p l e s :   c i d r ( ' 1 9 2 . 1 6 8 . 0 . 0 / 1 6 ' )   / /   r e t u r n s   a n   I P v 4   a d d r e s s   w i t h   a   C I D R   m a s k   c i d r ( ' : : 1 / 1 2 8 ' )   / /   r e t u r n s   a n   I P v 6   a d d r e s s   w i t h   a   C I D R   m a s k   c i d r ( ' 1 9 2 . 1 6 8 . 0 . 0 / 3 3 ' )   / /   e r r o r   c i d r ( ' : : 1 / 1 2 9 ' )   / /   e r r o r   c i d r ( ' 1 9 2 . 1 6 8 . 0 . 1 / 1 6 ' )   / /   e r r o r ,   b e c a u s e   t h e r e   a r e   n o n - 0   b i t s   a f t e r   t h e   p r e f i x


Question: What is isCIDR?

Answer: R e t u r n s   t r u e   i f   a   s t r i n g   i s   a   v a l i d   C I D R   n o t a t i o n   r e p r e s e n t a t i o n   o f   a   s u b n e t   w i t h   m a s k .   T h e   C I D R   m u s t   b e   a n   I P v 4   o r   I P v 6   s u b n e t   a d d r e s s   w i t h   a   m a s k .   L e a d i n g   z e r o s   i n   I P v 4   a d d r e s s   o c t e t s   a r e   n o t   a l l o w e d .   I P v 4 - m a p p e d   I P v 6   a d d r e s s e s   ( e . g .   : : f f f f : 1 . 2 . 3 . 4 / 2 4 )   a r e   n o t   a l l o w e d .   i s C I D R ( < s t r i n g > )   < b o o l >   E x a m p l e s :   i s C I D R ( ' 1 9 2 . 1 6 8 . 0 . 0 / 1 6 ' )   / /   r e t u r n s   t r u e   i s C I D R ( ' : : 1 / 1 2 8 ' )   / /   r e t u r n s   t r u e   i s C I D R ( ' 1 9 2 . 1 6 8 . 0 . 0 / 3 3 ' )   / /   r e t u r n s   f a l s e   i s C I D R ( ' : : 1 / 1 2 9 ' )   / /   r e t u r n s   f a l s e


Question: What is containsIP / containsCIDR / ip / masked / prefixLength?

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


Question: What is Kubernetes authorizer library?

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


Question: What is Kubernetes format library?

Answer: T h e   f o r m a t   l i b r a r y   p r o v i d e s   f u n c t i o n s   f o r   v a l i d a t i n g   c o m m o n   K u b e r n e t e s   s t r i n g   f o r m a t s .   T h i s   c a n   b e   u s e f u l   i n   t h e   m e s s a g e E x p r e s s i o n   o f   v a l i d a t i o n   r u l e s   t o   p r o v i d e   m o r e   s p e c i f i c   e r r o r   m e s s a g e s .   T h e   l i b r a r y   p r o v i d e s   f o r m a t ( )   f u n c t i o n s   f o r   e a c h   n a m e d   f o r m a t ,   a n d   a   g e n e r i c   f o r m a t . n a m e d ( )   f u n c t i o n .   f o r m a t . n a m e d ( s t r i n g )   →   ? F o r m a t :   R e t u r n s   t h e   F o r m a t   o b j e c t   f o r   t h e   g i v e n   f o r m a t   n a m e ,   i f   i t   e x i s t s .   O t h e r w i s e ,   r e t u r n s   o p t i o n a l . n o n e . f o r m a t . < f o r m a t N a m e > ( )   - >   F o r m a t :   C o n v e n i e n c e   f u n c t i o n s   f o r   a l l   t h e   n a m e d   f o r m a t s   a r e   a l s o   a v a i l a b l e .   F o r   e x a m p l e ,   f o r m a t . d n s 1 1 2 3 L a b e l ( )   r e t u r n s   t h e   F o r m a t   o b j e c t   f o r   D N S - 1 1 2 3   l a b e l s . < F o r m a t > . v a l i d a t e ( s t r i n g )   - >   l i s t < s t r i n g > ? :   V a l i d a t e s   t h e   g i v e n   s t r i n g   a g a i n s t   t h e   f o r m a t .   R e t u r n s   o p t i o n a l . n o n e   i f   t h e   s t r i n g   i s   v a l i d ,   o t h e r w i s e   a n   o p t i o n a l   c o n t a i n i n g   a   l i s t   o f   v a l i d a t i o n   e r r o r   s t r i n g s .   A v a i l a b l e   F o r m a t s :   T h e   f o l l o w i n g   f o r m a t   n a m e s   a r e   s u p p o r t e d :   E x a m p l e s :   S e e   t h e   K u b e r n e t e s   F o r m a t   l i b r a r y   g o d o c   f o r   m o r e   i n f o r m a t i o n .


Question: What is Kubernetes quantity library?

Answer: K u b e r n e t e s   1 . 2 8   a d d s   s u p p o r t   f o r   m a n i p u l a t i n g   q u a n t i t y   s t r i n g s   ( e x   1 . 5 G ,   5 1 2 k ,   2 0 M i )   i s Q u a n t i t y ( s t r i n g )   c h e c k s   i f   a   s t r i n g   i s   a   v a l i d   Q u a n t i t y   a c c o r d i n g   t o   K u b e r n e t e s '   r e s o u r c e . Q u a n t i t y . q u a n t i t y ( s t r i n g )   Q u a n t i t y   c o n v e r t s   a   s t r i n g   t o   a   Q u a n t i t y   o r   r e s u l t s   i n   a n   e r r o r   i f   t h e   s t r i n g   i s   n o t   a   v a l i d   q u a n t i t y .   O n c e   p a r s e d   v i a   t h e   q u a n t i t y   f u n c t i o n ,   t h e   r e s u l t i n g   Q u a n t i t y   o b j e c t   h a s   t h e   f o l l o w i n g   l i b r a r y   o f   m e m b e r   f u n c t i o n s :   E x a m p l e s :


Question: What is Kubernetes semver library?

Answer: K u b e r n e t e s   v 1 . 3 4   a d d s   s u p p o r t   f o r   p a r s i n g   a n d   c o m p a r i n g   s t r i n g s   t h a t   f o l l o w   t h e   S e m a n t i c   V e r s i o n i n g   2 . 0 . 0   s p e c i f i c a t i o n .   R e f e r   t o   t h e   s e m v e r . o r g   d o c u m e n t a t i o n   f o r   i n f o r m a t i o n   o n   a c c e p t e d   p a t t e r n s .   i s S e m v e r ( s t r i n g )   c h e c k s   i f   a   s t r i n g   i s   a   v a l i d   s e m a n t i c   v e r s i o n . s e m v e r ( s t r i n g )   c o n v e r t s   a   s t r i n g   t o   a   S e m v e r   o b j e c t   o r   r e s u l t s   i n   a n   e r r o r .   A n   o p t i o n a l   b o o l e a n   n o r m a l i z e   a r g u m e n t   c a n   b e   p a s s e d   t o   i s S e m v e r   a n d   s e m v e r .   I f   t r u e ,   n o r m a l i z a t i o n   r e m o v e s   a n y   " v "   p r e f i x ,   a d d s   a   0   m i n o r   a n d   p a t c h   n u m b e r s   t o   v e r s i o n s   w i t h   o n l y   m a j o r   o r   m a j o r . m i n o r   c o m p o n e n t s   s p e c i f i e d ,   a n d   r e m o v e s   a n y   l e a d i n g   0 s .   O n c e   p a r s e d   v i a   t h e   s e m v e r   f u n c t i o n ,   t h e   r e s u l t i n g   S e m v e r   o b j e c t   h a s   t h e   f o l l o w i n g   l i b r a r y   o f   m e m b e r   f u n c t i o n s :   E x a m p l e s :   S e e   t h e   K u b e r n e t e s   S e m v e r   l i b r a r y   g o d o c   f o r   m o r e   i n f o r m a t i o n .


Question: What is Type checking?

Answer: C E L   i s   a   g r a d u a l l y   t y p e d   l a n g u a g e .   S o m e   K u b e r n e t e s   A P I   f i e l d s   c o n t a i n   f u l l y   t y p e   c h e c k e d   C E L   e x p r e s s i o n s .   F o r   e x a m p l 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   V a l i d a t i o n   R u l e s   a r e   f u l l y   t y p e   c h e c k e d .   S o m e   K u b e r n e t e s   A P I   f i e l d s   c o n t a i n   p a r t i a l l y   t y p e   c h e c k e d   C E L   e x p r e s s i o n s .   A   p a r t i a l l y   t y p e   c h e c k e d   e x p r e s s i o n   i s   a n   e x p r e s s i o n s   w h e r e   s o m e   o f   t h e   v a r i a b l e s   a r e   s t a t i c a l l y   t y p e d   b u t   o t h e r s   a r e   d y n a m i c a l l y   t y p e d .   F o r   e x a m p l e ,   i n   t h e   C E L   e x p r e s s i o n s   o f   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 h e   r e q u e s t   v a r i a b l e   i s   t y p e d ,   b u t   t h e   o b j e c t   v a r i a b l e   i s   d y n a m i c a l l y   t y p e d .   A s   a   r e s u l t ,   a n   e x p r e s s i o n   c o n t a i n i n g   r e q u e s t . n a m e x   w o u l d   f a i l   t y p e   c h e c k i n g   b e c a u s e   t h e   n a m e x   f i e l d   i s   n o t   d e f i n e d .   H o w e v e r ,   o b j e c t . n a m e x   w o u l d   p a s s   t y p e   c h e c k i n g   e v e n   w h e n   t h e   n a m e x   f i e l d   i s   n o t   d e f i n e d   f o r   t h e   r e s o u r c e   k i n d s   t h a t   o b j e c t   r e f e r s   t o ,   b e c a u s e   o b j e c t   i s   d y n a m i c a l l y   t y p e d .   T h e   h a s ( )   m a c r o   i n   C E L   m a y   b e   u s e d   i n   C E L   e x p r e s s i o n s   t o   c h e c k   i f   a   f i e l d   o f   a   d y n a m i c a l l y   t y p e d   v a r i a b l e   i s   a c c e s s i b l e   b e f o r e   a t t e m p t i n g   t o   a c c e s s   t h e   f i e l d ' s   v a l u e .   F o r


Question: What is Type system integration?

Answer: A l s o   s e e :   C E L   t y p e s ,   O p e n A P I   t y p e s ,   K u b e r n e t e s   S t r u c t u r a l   S c h e m a s .   E q u a l i t y   c o m p a r i s o n   f o r   a r r a y s   w i t h   x - k u b e r n e t e s - l i s t - t y p e   o f   s e t   o r   m a p   i g n o r e s   e l e m e n t   o r d e r .   F o r   e x a m p l e   [ 1 ,   2 ]   = =   [ 2 ,   1 ]   i f   t h e   a r r a y s   r e p r e s e n t   K u b e r n e t e s   s e t   v a l u e s .   C o n c a t e n a t i o n   o n   a r r a y s   w i t h   x - k u b e r n e t e s - l i s t - t y p e   u s e   t h e   s e m a n t i c s   o f   t h e   l i s t   t y p e :


Question: What is Escaping?

Answer: O n l y   K u b e r n e t e s   r e s o u r c e   p r o p e r t y   n a m e s   o f   t h e   f o r m   [ a - z A - Z _ . - / ] [ a - z A - Z 0 - 9 _ . - / ] *   a r e   a c c e s s i b l e   f r o m   C E L .   A c c e s s i b l e   p r o p e r t y   n a m e s   a r e   e s c a p e d   a c c o r d i n g   t o   t h e   f o l l o w i n g   r u l e s   w h e n   a c c e s s e d   i n   t h e   e x p r e s s i o n :   W h e n   y o u   e s c a p e   a n y   o f   C E L ' s   R E S E R V E D   k e y w o r d s   y o u   n e e d   t o   m a t c h   t h e   e x a c t   p r o p e r t y   n a m e   u s e   t h e   u n d e r s c o r e   e s c a p i n g   ( f o r   e x a m p l e ,   i n t   i n   t h e   w o r d   s p r i n t   w o u l d   n o t   b e   e s c a p e d   a n d   n o r   w o u l d   i t   n e e d   t o   b e ) .   E x a m p l e s   o n   e s c a p i n g :


Question: What is Resource constraints?

Answer: C E L   i s   n o n - T u r i n g   c o m p l e t e   a n d   o f f e r s   a   v a r i e t y   o f   p r o d u c t i o n   s a f e t y   c o n t r o l s   t o   l i m i t   e x e c u t i o n   t i m e .   C E L ' s   r e s o u r c e   c o n s t r a i n t   f e a t u r e s   p r o v i d e


Question: What is Runtime cost budget?

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


Question: What is Estimated cost limits?

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


Question: What is 2.6 - Kubernetes Deprecation Policy?

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


Question: What is Deprecating parts of the API?

Answer: S i n c e   K u b e r n e t e s   i s   a n   A P I - d r i v e n   s y s t e m ,   t h e   A P I   h a s   e v o l v e d   o v e r   t i m e   t o   r e f l e c t   t h e   e v o l v i n g   u n d e r s t a n d i n g   o f   t h e   p r o b l e m   s p a c e .   T h e   K u b e r n e t e s   A P I   i s   a c t u a l l y   a   s e t   o f   A P I s ,   c a l l e d   " A P I   g r o u p s " ,   a n d   e a c h   A P I   g r o u p   i s   i n d e p e n d e n t l y   v e r s i o n e d .   A P I   v e r s i o n s   f a l l   i n t o   3   m a i n   t r a c k s ,   e a c h   o f   w h i c h   h a s   d i f f e r e n t   p o l i c i e s   f o r   d e p r e c a t i o n :   A   g i v e n   r e l e a s e   o f   K u b e r n e t e s   c a n   s u p p o r t   a n y   n u m b e r   o f   A P I   g r o u p s   a n d   a n y   n u m b e r   o f   v e r s i o n s   o f   e a c h .   T h e   f o l l o w i n g   r u l e s   g o v e r n   t h e   d e p r e c a t i o n   o f   e l e m e n t s   o f   t h e   A P I .   T h i s   i n c l u d e s :   R E S T   r e s o u r c e s   ( a k a   A P I   o b j e c t s ) F i e l d s   o f   R E S T   r e s o u r c e s A n n o t a t i o n s   o n   R E S T   r e s o u r c e s ,   i n c l u d i n g   " b e t a "   a n n o t a t i o n s   b u t   n o t   i n c l u d i n g   " a l p h a "   a n n o t a t i o n s . E n u m e r a t e d   o r   c o n s t a n t   v a l u e s C o m p o n e n t   c o n f i g   s t r u c t u r e s   T h e s e   r u l e s   a r e   e n f o r c e d   b e t w e e n   o f f i c i a l   r e l e a s e s ,   n o t   b e t w e e n   a r b i t r a r y   c o m m i t s   t o   m a s t e r   o r   r e l e a s e   b r a n c h e s .   R u l e   # 1 :   A P I   e l e m e n t s   m a y   o n l y   b e   r e m o v e d   b y   i n c r e m e n t i n g   t h e   v e r s i o n   o f   t h e   A P I   g r o u p .   O n c e   a n   A P I   e l e m e n t   h a s   b e e n   a d d e d   t o   a n   A P I   g r o u p   a t   a   p a r t i c u l a


Question: What is Note:?

Answer: R u l e   # 2 :   A P I   o b j e c t s   m u s t   b e   a b l e   t o   r o u n d - t r i p   b e t w e e n   A P I   v e r s i o n s   i n   a   g i v e n   r e l e a s e   w i t h o u t   i n f o r m a t i o n   l o s s ,   w i t h   t h e   e x c e p t i o n   o f   w h o l e   R E S T   r e s o u r c e s   t h a t   d o   n o t   e x i s t   i n   s o m e   v e r s i o n s .   F o r   e x a m p l e ,   a n   o b j e c t   c a n   b e   w r i t t e n   a s   v 1   a n d   t h e n   r e a d   b a c k   a s   v 2   a n d   c o n v e r t e d   t o   v 1 ,   a n d   t h e   r e s u l t i n g   v 1   r e s o u r c e   w i l l   b e   i d e n t i c a l   t o   t h e   o r i g i n a l .   T h e   r e p r e s e n t a t i o n   i n   v 2   m i g h t   b e   d i f f e r e n t   f r o m   v 1 ,   b u t   t h e   s y s t e m   k n o w s   h o w   t o   c o n v e r t   b e t w e e n   t h e m   i n   b o t h   d i r e c t i o n s .   A d d i t i o n a l l y ,   a n y   n e w   f i e l d   a d d e d   i n   v 2   m u s t   b e   a b l e   t o   r o u n d - t r i p   t o   v 1   a n d   b a c k ,   w h i c h   m e a n s   v 1   m i g h t   h a v e   t o   a d d   a n   e q u i v a l e n t   f i e l d   o r   r e p r e s e n t   i t   a s   a n   a n n o t a t i o n .   R u l e   # 3 :   A n   A P I   v e r s i o n   i n   a   g i v e n   t r a c k   m a y   n o t   b e   d e p r e c a t e d   i n   f a v o r   o f   a   l e s s   s t a b l e   A P I   v e r s i o n .   G A   A P I   v e r s i o n s   c a n   r e p l a c e   b e t a   a n d   a l p h a   A P I   v e r s i o n s . B e t a   A P I   v e r s i o n s   c a n   r e p l a c e   e a r l i e r   b e t a   a n d   a l p h a   A P I   v e r s i o n s ,   b u t   m a y   n o t   r e p l a c e   G A   A P I   v e r s i o n s . A l p h a   A P I   v e r s i o n s   c a n   r e p l a c e   e a r l i e r   a l p h a   A P I   v e r s i o n s ,   b u t   m a y   n o t   r e p l a c e   G A   o r   b e t a   A P I   v e r s i


Question: What is Note:?

Answer: R u l e   # 4 b :   T h e   " p r e f e r r e d "   A P I   v e r s i o n   a n d   t h e   " s t o r a g e   v e r s i o n "   f o r   a   g i v e n   g r o u p   m a y   n o t   a d v a n c e   u n t i l   a f t e r   a   r e l e a s e   h a s   b e e n   m a d e   t h a t   s u p p o r t s   b o t h   t h e   n e w   v e r s i o n   a n d   t h e   p r e v i o u s   v e r s i o n   U s e r s   m u s t   b e   a b l e   t o   u p g r a d e   t o   a   n e w   r e l e a s e   o f   K u b e r n e t e s   a n d   t h e n   r o l l   b a c k   t o   a   p r e v i o u s   r e l e a s e ,   w i t h o u t   c o n v e r t i n g   a n y t h i n g   t o   t h e   n e w   A P I   v e r s i o n   o r   s u f f e r i n g   b r e a k a g e s   ( u n l e s s   t h e y   e x p l i c i t l y   u s e d   f e a t u r e s   o n l y   a v a i l a b l e   i n   t h e   n e w e r   v e r s i o n ) .   T h i s   i s   p a r t i c u l a r l y   e v i d e n t   i n   t h e   s t o r e d   r e p r e s e n t a t i o n   o f   o b j e c t s .   A l l   o f   t h i s   i s   b e s t   i l l u s t r a t e d   b y   e x a m p l e s .   I m a g i n e   a   K u b e r n e t e s   r e l e a s e ,   v e r s i o n   X ,   w h i c h   i n t r o d u c e s   a   n e w   A P I   g r o u p .   A   n e w   K u b e r n e t e s   r e l e a s e   i s   m a d e   e v e r y   a p p r o x i m a t e l y   4   m o n t h s   ( 3   p e r   y e a r ) .   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   w h i c h   A P I   v e r s i o n s   a r e   s u p p o r t e d   i n   a   s e r i e s   o f   s u b s e q u e n t   r e l e a s e s .   v 1 a l p h a 1   i s   r e m o v e d .   S e e   r e l e a s e   n o t e s   f o r   r e q u i r e d   a c t i o n s .   v 1 a l p h a 2   i s   r e m o v e d .   S e e   r e l e a s e   n o t e s   f o r   r e q u i r e d   a c t i o n s .   v 1 b e t a 1   i s   d e p r e c a t e d .   S e e   r e l e a s e   n o t e s   f o r   r e q u i r e d   a c t i o n s .   v 1 b


Question: What is REST resources (aka API objects)?

Answer: C o n s i d e r   a   h y p o t h e t i c a l   R E S T   r e s o u r c e   n a m e d   W i d g e t ,   w h i c h   w a s   p r e s e n t   i n   A P I   v 1   i n   t h e   a b o v e   t i m e l i n e ,   a n d   w h i c h   n e e d s   t o   b e   d e p r e c a t e d .   W e   d o c u m e n t   a n d   a n n o u n c e   t h e   d e p r e c a t i o n   i n   s y n c   w i t h   r e l e a s e   X + 1 .   T h e   W i d g e t   r e s o u r c e   s t i l l   e x i s t s   i n   A P I   v e r s i o n   v 1   ( d e p r e c a t e d )   b u t   n o t   i n   v 2 a l p h a 1 .   T h e   W i d g e t   r e s o u r c e   c o n t i n u e s   t o   e x i s t   a n d   f u n c t i o n   i n   r e l e a s e s   u p   t o   a n d   i n c l u d i n g   X + 8 .   O n l y   i n   r e l e a s e   X + 9 ,   w h e n   A P I   v 1   h a s   a g e d   o u t ,   d o e s   t h e   W i d g e t   r e s o u r c e   c e a s e   t o   e x i s t ,   a n d   t h e   b e h a v i o r   g e t   r e m o v e d .   S t a r t i n g   i n   K u b e r n e t e s   v 1 . 1 9 ,   m a k i n g   a n   A P I   r e q u e s t   t o   a   d e p r e c a t e d   R E S T   A P I   e n d p o i n t :   R e t u r n s   a   W a r n i n g   h e a d e r   ( a s   d e f i n e d   i n   R F C 7 2 3 4 ,   S e c t i o n   5 . 5 )   i n   t h e   A P I   r e s p o n s e . A d d s   a   " k 8 s . i o / d e p r e c a t e d " : " t r u e "   a n n o t a t i o n   t o   t h e   a u d i t   e v e n t   r e c o r d e d   f o r   t h e   r e q u e s t . S e t s   a n   a p i s e r v e r _ r e q u e s t e d _ d e p r e c a t e d _ a p i s   g a u g e   m e t r i c   t o   1   i n   t h e   k u b e - a p i s e r v e r   p r o c e s s .   T h e   m e t r i c   h a s   l a b e l s   f o r   g r o u p ,   v e r s i o n ,   r e s o u r c e ,   s u b r e s o u r c e   t h a t   c a n   b e   j o i n e d   t o   t h e   a p i s e r v e r _ r e q u e s t _ t o t a l   m e t r i c ,   a n d   a   r e m o v e d _ r e l e a s e   l a b e l   t h a


Question: What is Fields of REST resources?

Answer: A s   w i t h   w h o l e   R E S T   r e s o u r c e s ,   a n   i n d i v i d u a l   f i e l d   w h i c h   w a s   p r e s e n t   i n   A P I   v 1   m u s t   e x i s t   a n d   f u n c t i o n   u n t i l   A P I   v 1   i s   r e m o v e d .   U n l i k e   w h o l e   r e s o u r c e s ,   t h e   v 2   A P I s   m a y   c h o o s e   a   d i f f e r e n t   r e p r e s e n t a t i o n   f o r   t h e   f i e l d ,   a s   l o n g   a s   i t   c a n   b e   r o u n d - t r i p p e d .   F o r   e x a m p l e   a   v 1   f i e l d   n a m e d   " m a g n i t u d e "   w h i c h   w a s   d e p r e c a t e d   m i g h t   b e   n a m e d   " d e p r e c a t e d M a g n i t u d e "   i n   A P I   v 2 .   W h e n   v 1   i s   e v e n t u a l l y   r e m o v e d ,   t h e   d e p r e c a t e d   f i e l d   c a n   b e   r e m o v e d   f r o m   v 2 .


Question: What is Enumerated or constant values?

Answer: A s   w i t h   w h o l e   R E S T   r e s o u r c e s   a n d   f i e l d s   t h e r e o f ,   a   c o n s t a n t   v a l u e   w h i c h   w a s   s u p p o r t e d   i n   A P I   v 1   m u s t   e x i s t   a n d   f u n c t i o n   u n t i l   A P I   v 1   i s   r e m o v e d .


Question: What is Component config structures?

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


Question: What is Future work?

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