Question: What is Multiple matches?

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


Question: What is Hostname wildcards?

Answer: H o s t s   c a n   b e   p r e c i s e   m a t c h e s   ( f o r   e x a m p l e   “ f o o . b a r . c o m ” )   o r   a   w i l d c a r d   ( f o r   e x a m p l e   “ * . f o o . c o m ” ) .   P r e c i s e   m a t c h e s   r e q u i r e   t h a t   t h e   H T T P   h o s t   h e a d e r   m a t c h e s   t h e   h o s t   f i e l d .   W i l d c a r d   m a t c h e s   r e q u i r e   t h e   H T T P   h o s t   h e a d e r   i s   e q u a l   t o   t h e   s u f f i x   o f   t h e   w i l d c a r d   r u l e .   a p i V e r s i o n :   n e t w o r k i n g . k 8 s . i o / v 1   k i n d :   I n g r e s s   m e t a d a t a :   n a m e :   i n g r e s s - w i l d c a r d - h o s t   s p e c :   r u l e s :   -   h o s t :   " f o o . b a r . c o m "   h t t p :   p a t h s :   -   p a t h T y p e :   P r e f i x   p a t h :   " / b a r "   b a c k e n d :   s e r v i c e :   n a m e :   s e r v i c e 1   p o r t :   n u m b e r :   8 0   -   h o s t :   " * . f o o . c o m "   h t t p :   p a t h s :   -   p a t h T y p e :   P r e f i x   p a t h :   " / f o o "   b a c k e n d :   s e r v i c e :   n a m e :   s e r v i c e 2   p o r t :   n u m b e r :   8 0


Question: What is Ingress class?

Answer: I n g r e s s e s   c a n   b e   i m p l e m e n t e d   b y   d i f f e r e n t   c o n t r o l l e r s ,   o f t e n   w i t h   d i f f e r e n t   c o n f i g u r a t i o n .   E a c h   I n g r e s s   s h o u l d   s p e c i f y   a   c l a s s ,   a   r e f e r e n c e   t o   a n   I n g r e s s C l a s s   r e s o u r c e   t h a t   c o n t a i n s   a d d i t i o n a l   c o n f i g u r a t i o n   i n c l u d i n g   t h e   n a m e   o f   t h e   c o n t r o l l e r   t h a t   s h o u l d   i m p l e m e n t   t h e   c l a s s .   a p i V e r s i o n :   n e t w o r k i n g . k 8 s . i o / v 1   k i n d :   I n g r e s s C l a s s   m e t a d a t a :   n a m e :   e x t e r n a l - l b   s p e c :   c o n t r o l l e r :   e x a m p l e . c o m / i n g r e s s - c o n t r o l l e r   p a r a m e t e r s :   a p i G r o u p :   k 8 s . e x a m p l e . c o m   k i n d :   I n g r e s s P a r a m e t e r s   n a m e :   e x t e r n a l - l b   T h e   . s p e c . p a r a m e t e r s   f i e l d   o f   a n   I n g r e s s C l a s s   l e t s   y o u   r e f e r e n c e   a n o t h e r   r e s o u r c e   t h a t   p r o v i d e s   c o n f i g u r a t i o n   r e l a t e d   t o   t h a t   I n g r e s s C l a s s .   T h e   s p e c i f i c   t y p e   o f   p a r a m e t e r s   t o   u s e   d e p e n d s   o n   t h e   i n g r e s s   c o n t r o l l e r   t h a t   y o u   s p e c i f y   i n   t h e   . s p e c . c o n t r o l l e r   f i e l d   o f   t h e   I n g r e s s C l a s s .


Question: What is IngressClass scope?

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


Question: What is Deprecated annotation?

Answer: B e f o r e   t h e   I n g r e s s C l a s s   r e s o u r c e   a n d   i n g r e s s C l a s s N a m e   f i e l d   w e r e   a d d e d   i n   K u b e r n e t e s   1 . 1 8 ,   I n g r e s s   c l a s s e s   w e r e   s p e c i f i e d   w i t h   a   k u b e r n e t e s . i o / i n g r e s s . c l a s s   a n n o t a t i o n   o n   t h e   I n g r e s s .   T h i s   a n n o t a t i o n   w a s   n e v e r   f o r m a l l y   d e f i n e d ,   b u t   w a s   w i d e l y   s u p p o r t e d   b y   I n g r e s s   c o n t r o l l e r s .   T h e   n e w e r   i n g r e s s C l a s s N a m e   f i e l d   o n   I n g r e s s e s   i s   a   r e p l a c e m e n t   f o r   t h a t   a n n o t a t i o n ,   b u t   i s   n o t   a   d i r e c t   e q u i v a l e n t .   W h i l e   t h e   a n n o t a t i o n   w a s   g e n e r a l l y   u s e d   t o   r e f e r e n c e   t h e   n a m e   o f   t h e   I n g r e s s   c o n t r o l l e r   t h a t   s h o u l d   i m p l e m e n t   t h e   I n g r e s s ,   t h e   f i e l d   i s   a   r e f e r e n c e   t o   a n   I n g r e s s C l a s s   r e s o u r c e   t h a t   c o n t a i n s   a d d i t i o n a l   I n g r e s s   c o n f i g u r a t i o n ,   i n c l u d i n g   t h e   n a m e   o f   t h e   I n g r e s s   c o n t r o l l e r .


Question: What is Default IngressClass?

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


Question: What is Caution:?

Answer: T h e r e   a r e   s o m e   i n g r e s s   c o n t r o l l e r s ,   t h a t   w o r k   w i t h o u t   t h e   d e f i n i t i o n   o f   a   d e f a u l t   I n g r e s s C l a s s .   F o r   e x a m p l e ,   t h e   I n g r e s s - N G I N X   c o n t r o l l e r   c a n   b e   c o n f i g u r e d   w i t h   a   f l a g   - - w a t c h - i n g r e s s - w i t h o u t - c l a s s .   I t   i s   r e c o m m e n d e d   t h o u g h ,   t o   s p e c i f y   t h e   d e f a u l t   I n g r e s s C l a s s :   a p i V e r s i o n :   n e t w o r k i n g . k 8 s . i o / v 1   k i n d :   I n g r e s s C l a s s   m e t a d a t a :   l a b e l s :   a p p . k u b e r n e t e s . i o / c o m p o n e n t :   c o n t r o l l e r   n a m e :   n g i n x - e x a m p l e   a n n o t a t i o n s :   i n g r e s s c l a s s . k u b e r n e t e s . i o / i s - d e f a u l t - c l a s s :   " t r u e "   s p e c :   c o n t r o l l e r :   k 8 s . i o / i n g r e s s - n g i n x


Question: What is Ingress backed by a single Service?

Answer: T h e r e   a r e   e x i s t i n g   K u b e r n e t e s   c o n c e p t s   t h a t   a l l o w   y o u   t o   e x p o s e   a   s i n g l e   S e r v i c e   ( s e e   a l t e r n a t i v e s ) .   Y o u   c a n   a l s o   d o   t h i s   w i t h   a n   I n g r e s s   b y   s p e c i f y i n g   a   d e f a u l t   b a c k e n d   w i t h   n o   r u l e s .   a p i V e r s i o n :   n e t w o r k i n g . k 8 s . i o / v 1   k i n d :   I n g r e s s   m e t a d a t a :   n a m e :   t e s t - i n g r e s s   s p e c :   d e f a u l t B a c k e n d :   s e r v i c e :   n a m e :   t e s t   p o r t :   n u m b e r :   8 0   I f   y o u   c r e a t e   i t   u s i n g   k u b e c t l   a p p l y   - f   y o u   s h o u l d   b e   a b l e   t o   v i e w   t h e   s t a t e   o f   t h e   I n g r e s s   y o u   a d d e d :   k u b e c t l   g e t   i n g r e s s   t e s t - i n g r e s s   N A M E   C L A S S   H O S T S   A D D R E S S   P O R T S   A G E   t e s t - i n g r e s s   e x t e r n a l - l b   *   2 0 3 . 0 . 1 1 3 . 1 2 3   8 0   5 9 s   W h e r e   2 0 3 . 0 . 1 1 3 . 1 2 3   i s   t h e   I P   a l l o c a t e d   b y   t h e   I n g r e s s   c o n t r o l l e r   t o   s a t i s f y   t h i s   I n g r e s s .


Question: What is Simple fanout?

Answer: A   f a n o u t   c o n f i g u r a t i o n   r o u t e s   t r a f f i c   f r o m   a   s i n g l e   I P   a d d r e s s   t o   m o r e   t h a n   o n e   S e r v i c e ,   b a s e d   o n   t h e   H T T P   U R I   b e i n g   r e q u e s t e d .   A n   I n g r e s s   a l l o w s   y o u   t o   k e e p   t h e   n u m b e r   o f   l o a d   b a l a n c e r s   d o w n   t o   a   m i n i m u m .   F o r   e x a m p l e ,   a   s e t u p   l i k e :   F i g u r e .   I n g r e s s   F a n   O u t   I t   w o u l d   r e q u i r e   a n   I n g r e s s   s u c h   a s :   a p i V e r s i o n :   n e t w o r k i n g . k 8 s . i o / v 1   k i n d :   I n g r e s s   m e t a d a t a :   n a m e :   s i m p l e - f a n o u t - e x a m p l e   s p e c :   r u l e s :   -   h o s t :   f o o . b a r . c o m   h t t p :   p a t h s :   -   p a t h :   / f o o   p a t h T y p e :   P r e f i x   b a c k e n d :   s e r v i c e :   n a m e :   s e r v i c e 1   p o r t :   n u m b e r :   4 2 0 0   -   p a t h :   / b a r   p a t h T y p e :   P r e f i x   b a c k e n d :   s e r v i c e :   n a m e :   s e r v i c e 2   p o r t :   n u m b e r :   8 0 8 0   W h e n   y o u   c r e a t e   t h e   I n g r e s s   w i t h   k u b e c t l   a p p l y   - f :   k u b e c t l   d e s c r i b e   i n g r e s s   s i m p l e - f a n o u t - e x a m p l e   N a m e :   s i m p l e - f a n o u t - e x a m p l e   N a m e s p a c e :   d e f a u l t   A d d r e s s :   1 7 8 . 9 1 . 1 2 3 . 1 3 2   D e f a u l t   b a c k e n d :   d e f a u l t - h t t p - b a c k e n d : 8 0   ( 1 0 . 8 . 2 . 3 : 8 0 8 0 )   R u l e s :   H o s t   P a t h   B a c k e n d s   - - - -   - - - -   - - - - - - - -   f o o . b a r . c o m   / f o o   s e r v i c e 1 : 4 2 0 0   ( 1 0 . 8 . 0 . 9 0 : 4 2 0 0 )   / b a r   s e r v i c e 2 : 8 0 8 0   ( 1 0 . 8 . 0 . 9 1 : 8 0 8 0 )   E v e n t s :   T y p e   R e a s o n   A g e   F r o m   M e s s a g e   - - - -   - - - - - -   - - - -   - -


Question: What is Name based virtual hosting?

Answer: N a m e - b a s e d   v i r t u a l   h o s t s   s u p p o r t   r o u t i n g   H T T P   t r a f f i c   t o   m u l t i p l e   h o s t   n a m e s   a t   t h e   s a m e   I P   a d d r e s s .   F i g u r e .   I n g r e s s   N a m e   B a s e d   V i r t u a l   h o s t i n g   T h e   f o l l o w i n g   I n g r e s s   t e l l s   t h e   b a c k i n g   l o a d   b a l a n c e r   t o   r o u t e   r e q u e s t s   b a s e d   o n   t h e   H o s t   h e a d e r .   a p i V e r s i o n :   n e t w o r k i n g . k 8 s . i o / v 1   k i n d :   I n g r e s s   m e t a d a t a :   n a m e :   n a m e - v i r t u a l - h o s t - i n g r e s s   s p e c :   r u l e s :   -   h o s t :   f o o . b a r . c o m   h t t p :   p a t h s :   -   p a t h T y p e :   P r e f i x   p a t h :   " / "   b a c k e n d :   s e r v i c e :   n a m e :   s e r v i c e 1   p o r t :   n u m b e r :   8 0   -   h o s t :   b a r . f o o . c o m   h t t p :   p a t h s :   -   p a t h T y p e :   P r e f i x   p a t h :   " / "   b a c k e n d :   s e r v i c e :   n a m e :   s e r v i c e 2   p o r t :   n u m b e r :   8 0   I f   y o u   c r e a t e   a n   I n g r e s s   r e s o u r c e   w i t h o u t   a n y   h o s t s   d e f i n e d   i n   t h e   r u l e s ,   t h e n   a n y   w e b   t r a f f i c   t o   t h e   I P   a d d r e s s   o f   y o u r   I n g r e s s   c o n t r o l l e r   c a n   b e   m a t c h e d   w i t h o u t   a   n a m e   b a s e d   v i r t u a l   h o s t   b e i n g   r e q u i r e d .   F o r   e x a m p l e ,   t h e   f o l l o w i n g   I n g r e s s   r o u t e s   t r a f f i c   r e q u e s t e d   f o r   f i r s t . b a r . c o m   t o   s e r v i c e 1 ,   s e c o n d . b a r . c o m   t o   s e r v i c e 2 ,   a n d   a n y   t r a f f i c   w h o s e   r e q u e s t   h o s t   h e a d e r   d o e s n ' t   m a t c h   f i r s t . b a r . c o m   a n d   s e c o n d . b a r . c o m   t o   s e r v i c e 3 .   a p i V e r


Question: What is TLS?

Answer: Y o u   c a n   s e c u r e   a n   I n g r e s s   b y   s p e c i f y i n g   a   S e c r e t   t h a t   c o n t a i n s   a   T L S   p r i v a t e   k e y   a n d   c e r t i f i c a t e .   T h e   I n g r e s s   r e s o u r c e   o n l y   s u p p o r t s   a   s i n g l e   T L S   p o r t ,   4 4 3 ,   a n d   a s s u m e s   T L S   t e r m i n a t i o n   a t   t h e   i n g r e s s   p o i n t   ( t r a f f i c   t o   t h e   S e r v i c e   a n d   i t s   P o d s   i s   i n   p l a i n t e x t ) .   I f   t h e   T L S   c o n f i g u r a t i o n   s e c t i o n   i n   a n   I n g r e s s   s p e c i f i e s   d i f f e r e n t   h o s t s ,   t h e y   a r e   m u l t i p l e x e d   o n   t h e   s a m e   p o r t   a c c o r d i n g   t o   t h e   h o s t n a m e   s p e c i f i e d   t h r o u g h   t h e   S N I   T L S   e x t e n s i o n   ( p r o v i d e d   t h e   I n g r e s s   c o n t r o l l e r   s u p p o r t s   S N I ) .   T h e   T L S   s e c r e t   m u s t   c o n t a i n   k e y s   n a m e d   t l s . c r t   a n d   t l s . k e y   t h a t   c o n t a i n   t h e   c e r t i f i c a t e   a n d   p r i v a t e   k e y   t o   u s e   f o r   T L S .   F o r   e x a m p l e :   a p i V e r s i o n :   v 1   k i n d :   S e c r e t   m e t a d a t a :   n a m e :   t e s t s e c r e t - t l s   n a m e s p a c e :   d e f a u l t   d a t a :   t l s . c r t :   b a s e 6 4   e n c o d e d   c e r t   t l s . k e y :   b a s e 6 4   e n c o d e d   k e y   t y p e :   k u b e r n e t e s . i o / t l s   R e f e r e n c i n g   t h i s   s e c r e t   i n   a n   I n g r e s s   t e l l s   t h e   I n g r e s s   c o n t r o l l e r   t o   s e c u r e   t h e   c h a n n e l   f r o m   t h e   c l i e n t   t o   t h e   l o a d   b a l a n c e r   u s i n g   T L S .   Y o u   n e e d   t o   m a k e   s u r e   t h e   T L S   s e c r e t   y o u   c r e a t e d   c a m e   f r o m   a   c e r t i f i c a t e   t h a t


Question: What is Note:?

Answer: a p i V e r s i o n :   n e t w o r k i n g . k 8 s . i o / v 1   k i n d :   I n g r e s s   m e t a d a t a :   n a m e :   t l s - e x a m p l e - i n g r e s s   s p e c :   t l s :   -   h o s t s :   -   h t t p s - e x a m p l e . f o o . c o m   s e c r e t N a m e :   t e s t s e c r e t - t l s   r u l e s :   -   h o s t :   h t t p s - e x a m p l e . f o o . c o m   h t t p :   p a t h s :   -   p a t h :   /   p a t h T y p e :   P r e f i x   b a c k e n d :   s e r v i c e :   n a m e :   s e r v i c e 1   p o r t :   n u m b e r :   8 0


Question: What is Load balancing?

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


Question: What is Updating an Ingress?

Answer: T o   u p d a t e   a n   e x i s t i n g   I n g r e s s   t o   a d d   a   n e w   H o s t ,   y o u   c a n   u p d a t e   i t   b y   e d i t i n g   t h e   r e s o u r c e :   k u b e c t l   d e s c r i b e   i n g r e s s   t e s t   N a m e :   t e s t   N a m e s p a c e :   d e f a u l t   A d d r e s s :   1 7 8 . 9 1 . 1 2 3 . 1 3 2   D e f a u l t   b a c k e n d :   d e f a u l t - h t t p - b a c k e n d : 8 0   ( 1 0 . 8 . 2 . 3 : 8 0 8 0 )   R u l e s :   H o s t   P a t h   B a c k e n d s   - - - -   - - - -   - - - - - - - -   f o o . b a r . c o m   / f o o   s e r v i c e 1 : 8 0   ( 1 0 . 8 . 0 . 9 0 : 8 0 )   A n n o t a t i o n s :   n g i n x . i n g r e s s . k u b e r n e t e s . i o / r e w r i t e - t a r g e t :   /   E v e n t s :   T y p e   R e a s o n   A g e   F r o m   M e s s a g e   - - - -   - - - - - -   - - - -   - - - -   - - - - - - -   N o r m a l   A D D   3 5 s   l o a d b a l a n c e r - c o n t r o l l e r   d e f a u l t / t e s t   k u b e c t l   e d i t   i n g r e s s   t e s t   T h i s   p o p s   u p   a n   e d i t o r   w i t h   t h e   e x i s t i n g   c o n f i g u r a t i o n   i n   Y A M L   f o r m a t .   M o d i f y   i t   t o   i n c l u d e   t h e   n e w   H o s t :   s p e c :   r u l e s :   -   h o s t :   f o o . b a r . c o m   h t t p :   p a t h s :   -   b a c k e n d :   s e r v i c e :   n a m e :   s e r v i c e 1   p o r t :   n u m b e r :   8 0   p a t h :   / f o o   p a t h T y p e :   P r e f i x   -   h o s t :   b a r . b a z . c o m   h t t p :   p a t h s :   -   b a c k e n d :   s e r v i c e :   n a m e :   s e r v i c e 2   p o r t :   n u m b e r :   8 0   p a t h :   / f o o   p a t h T y p e :   P r e f i x   . .   A f t e r   y o u   s a v e   y o u r   c h a n g e s ,   k u b e c t l   u p d a t e s   t h e   r e s o u r c e   i n   t h e   A P I   s e r v e r ,   w h i c h   t e l l s   t h e   I n g r e s s   c o n t r o l l e r   t o   r e c o n f i g u r e


Question: What is Failing across availability zones?

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


Question: What is Alternatives?

Answer: Y o u   c a n   e x p o s e   a   S e r v i c e   i n   m u l t i p l e   w a y s   t h a t   d o n ' t   d i r e c t l y   i n v o l v e   t h e   I n g r e s s   r e s o u r c e :   U s e   S e r v i c e . T y p e = L o a d B a l a n c e r U s e   S e r v i c e . T y p e = N o d e P o r t


Question: What is What's next?

Answer: L e a r n   a b o u t   t h e   I n g r e s s   A P I L e a r n   a b o u t   I n g r e s s   c o n t r o l l e r s S e t   u p   I n g r e s s   o n   M i n i k u b e   w i t h   t h e   N G I N X   C o n t r o l l e r


Question: What is Job?

Answer: JobJob represents the configuration of a single job.apiVersion: batch/v1import "k8s.io/api/batch/v1"JobJob represents the configuration of a single job.apiVersion: batch/v1kind: Jobmetadata (ObjectMeta)Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadataspec (JobSpec)Specification of the desired behavior of a job. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-statusstatus (JobStatus)Current status of a job. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-statusJobSpecJobSpec describes how the job execution will look like.Replicastemplate (PodTemplateSpec), requiredDescribes the pod that will be created when executing a job. The only allowed template.spec.restartPolicy values are "Never" or "OnFailure". More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/parallelism (int32)Specifies the maximum desired number of pods the job should run at any given time. The actual number of pods running in steady state will be less than this number when ((.spec.completions - .status.successful) < .spec.parallelism), i.e. when the work left to do is less than max parallelism. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/Lifecyclecompletions (int32)Specifies the desired number of successfully finished pods the job should be run with. Setting to null means that the success of any pod signals the success of all pods, and allows parallelism to have any positive value. Setting to 1 means that parallelism is limited to 1 and the success of that pod signals the success of the job. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/completionMode (string)completionMode specifies how Pod completions are tracked. It can be NonIndexed (default) or Indexed.NonIndexed means that the Job is considered complete when there have been .spec.completions successfully completed Pods. Each Pod completion is homologous to each other.Indexed means that the Pods of a Job get an associated completion index from 0 to (.spec.completions - 1), available in the annotation batch.kubernetes.io/job-completion-index. The Job is considered complete when there is one successfully completed Pod for each index. When value is Indexed, .spec.completions must be specified and .spec.parallelism must be less than or equal to 10^5. In addition, The Pod name takes the form $(job-name)-$(index)-$(random-string), the Pod hostname takes the form $(job-name)-$(index).More completion modes can be added in the future. If the Job controller observes a mode that it doesn't recognize, which is possible during upgrades due to version skew, the controller skips updates for the Job.backoffLimit (int32)Specifies the number of retries before marking this job failed. Defaults to 6, unless backoffLimitPerInde


Question: How does Job work?

Answer: JobJob represents the configuration of a single job.apiVersion: batch/v1import "k8s.io/api/batch/v1"JobJob represents the configuration of a single job.apiVersion: batch/v1kind: Jobmetadata (ObjectMeta)Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadataspec (JobSpec)Specification of the desired behavior of a job. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-statusstatus (JobStatus)Current status of a job. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-statusJobSpecJobSpec describes how the job execution will look like.Replicastemplate (PodTemplateSpec), requiredDescribes the pod that will be created when executing a job. The only allowed template.spec.restartPolicy values are "Never" or "OnFailure". More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/parallelism (int32)Specifies the maximum desired number of pods the job should run at any given time. The actual number of pods running in steady state will be less than this number when ((.spec.completions - .status.successful) < .spec.parallelism), i.e. when the work left to do is less than max parallelism. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/Lifecyclecompletions (int32)Specifies the desired number of successfully finished pods the job should be run with. Setting to null means that the success of any pod signals the success of all pods, and allows parallelism to have any positive value. Setting to 1 means that parallelism is limited to 1 and the success of that pod signals the success of the job. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/completionMode (string)completionMode specifies how Pod completions are tracked. It can be NonIndexed (default) or Indexed.NonIndexed means that the Job is considered complete when there have been .spec.completions successfully completed Pods. Each Pod completion is homologous to each other.Indexed means that the Pods of a Job get an associated completion index from 0 to (.spec.completions - 1), available in the annotation batch.kubernetes.io/job-completion-index. The Job is considered complete when there is one successfully completed Pod for each index. When value is Indexed, .spec.completions must be specified and .spec.parallelism must be less than or equal to 10^5. In addition, The Pod name takes the form $(job-name)-$(index)-$(random-string), the Pod hostname takes the form $(job-name)-$(index).More completion modes can be added in the future. If the Job controller observes a mode that it doesn't recognize, which is possible during upgrades due to version skew, the controller skips updates for the Job.backoffLimit (int32)Specifies the number of retries before marking this job failed. Defaults to 6, unless backoffLimitPerInde


Question: When would you use Job?

Answer: JobJob represents the configuration of a single job.apiVersion: batch/v1import "k8s.io/api/batch/v1"JobJob represents the configuration of a single job.apiVersion: batch/v1kind: Jobmetadata (ObjectMeta)Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadataspec (JobSpec)Specification of the desired behavior of a job. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-statusstatus (JobStatus)Current status of a job. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-statusJobSpecJobSpec describes how the job execution will look like.Replicastemplate (PodTemplateSpec), requiredDescribes the pod that will be created when executing a job. The only allowed template.spec.restartPolicy values are "Never" or "OnFailure". More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/parallelism (int32)Specifies the maximum desired number of pods the job should run at any given time. The actual number of pods running in steady state will be less than this number when ((.spec.completions - .status.successful) < .spec.parallelism), i.e. when the work left to do is less than max parallelism. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/Lifecyclecompletions (int32)Specifies the desired number of successfully finished pods the job should be run with. Setting to null means that the success of any pod signals the success of all pods, and allows parallelism to have any positive value. Setting to 1 means that parallelism is limited to 1 and the success of that pod signals the success of the job. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/completionMode (string)completionMode specifies how Pod completions are tracked. It can be NonIndexed (default) or Indexed.NonIndexed means that the Job is considered complete when there have been .spec.completions successfully completed Pods. Each Pod completion is homologous to each other.Indexed means that the Pods of a Job get an associated completion index from 0 to (.spec.completions - 1), available in the annotation batch.kubernetes.io/job-completion-index. The Job is considered complete when there is one successfully completed Pod for each index. When value is Indexed, .spec.completions must be specified and .spec.parallelism must be less than or equal to 10^5. In addition, The Pod name takes the form $(job-name)-$(index)-$(random-string), the Pod hostname takes the form $(job-name)-$(index).More completion modes can be added in the future. If the Job controller observes a mode that it doesn't recognize, which is possible during upgrades due to version skew, the controller skips updates for the Job.backoffLimit (int32)Specifies the number of retries before marking this job failed. Defaults to 6, unless backoffLimitPerInde


Question: What are the benefits of Job?

Answer: JobJob represents the configuration of a single job.apiVersion: batch/v1import "k8s.io/api/batch/v1"JobJob represents the configuration of a single job.apiVersion: batch/v1kind: Jobmetadata (ObjectMeta)Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadataspec (JobSpec)Specification of the desired behavior of a job. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-statusstatus (JobStatus)Current status of a job. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-statusJobSpecJobSpec describes how the job execution will look like.Replicastemplate (PodTemplateSpec), requiredDescribes the pod that will be created when executing a job. The only allowed template.spec.restartPolicy values are "Never" or "OnFailure". More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/parallelism (int32)Specifies the maximum desired number of pods the job should run at any given time. The actual number of pods running in steady state will be less than this number when ((.spec.completions - .status.successful) < .spec.parallelism), i.e. when the work left to do is less than max parallelism. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/Lifecyclecompletions (int32)Specifies the desired number of successfully finished pods the job should be run with. Setting to null means that the success of any pod signals the success of all pods, and allows parallelism to have any positive value. Setting to 1 means that parallelism is limited to 1 and the success of that pod signals the success of the job. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/completionMode (string)completionMode specifies how Pod completions are tracked. It can be NonIndexed (default) or Indexed.NonIndexed means that the Job is considered complete when there have been .spec.completions successfully completed Pods. Each Pod completion is homologous to each other.Indexed means that the Pods of a Job get an associated completion index from 0 to (.spec.completions - 1), available in the annotation batch.kubernetes.io/job-completion-index. The Job is considered complete when there is one successfully completed Pod for each index. When value is Indexed, .spec.completions must be specified and .spec.parallelism must be less than or equal to 10^5. In addition, The Pod name takes the form $(job-name)-$(index)-$(random-string), the Pod hostname takes the form $(job-name)-$(index).More completion modes can be added in the future. If the Job controller observes a mode that it doesn't recognize, which is possible during upgrades due to version skew, the controller skips updates for the Job.backoffLimit (int32)Specifies the number of retries before marking this job failed. Defaults to 6, unless backoffLimitPerInde


Question: What is Job?

Answer: a p i V e r s i o n :   b a t c h / v 1   i m p o r t   " k 8 s . i o / a p i / b a t c h / v 1 "


Question: What is Job?

Answer: J o b   r e p r e s e n t s   t h e   c o n f i g u r a t i o n   o f   a   s i n g l e   j o b .   a p i V e r s i o n :   b a t c h / v 1 k i n d :   J o b m e t a d a t a   ( O b j e c t M e t a ) S t a n d a r d   o b j e c t ' s   m e t a d a t a .   M o r e   i n f o :   h t t p s : / / g i t . k 8 s . i o / c o m m u n i t y / c o n t r i b u t o r s / d e v e l / s i g - a r c h i t e c t u r e / a p i - c o n v e n t i o n s . m d # m e t a d a t a s p e c   ( J o b S p e c ) S p e c i f i c a t i o n   o f   t h e   d e s i r e d   b e h a v i o r   o f   a   j o b .   M o r e   i n f o :   h t t p s : / / g i t . k 8 s . i o / c o m m u n i t y / c o n t r i b u t o r s / d e v e l / s i g - a r c h i t e c t u r e / a p i - c o n v e n t i o n s . m d # s p e c - a n d - s t a t u s s t a t u s   ( J o b S t a t u s ) C u r r e n t   s t a t u s   o f   a   j o b .   M o r e   i n f o :   h t t p s : / / g i t . k 8 s . i o / c o m m u n i t y / c o n t r i b u t o r s / d e v e l / s i g - a r c h i t e c t u r e / a p i - c o n v e n t i o n s . m d # s p e c - a n d - s t a t u s   a p i V e r s i o n :   b a t c h / v 1   k i n d :   J o b   m e t a d a t a   ( O b j e c t M e t a )   S t a n d a r d   o b j e c t ' s   m e t a d a t a .   M o r e   i n f o :   h t t p s : / / g i t . k 8 s . i o / c o m m u n i t y / c o n t r i b u t o r s / d e v e l / s i g - a r c h i t e c t u r e / a p i - c o n v e n t i o n s . m d # m e t a d a t a   s p e c   ( J o b S p e c )   S p e c i f i c a t i o n   o f   t h e   d e s i r e d   b e h a v i o r   o f   a   j o b .   M o r e   i n f o :   h t t p s : / / g i t . k 8 s . i o / c o m m u n i t y / c o n t r i b u t o r s / d e v e l / s i g - a r c h i t e c t u r e / a p i - c o n v e n t i o n s . m d # s p e c - a n d - s t a t u s   s t a t u s   ( J o b S t a t u s )   C u r r e n t   s t a t u s   o f   a   j o b .   M o r e   i n f o :   h t t p s : / / g i t . k 8 s . i o / c o m m u n i t y /


Question: What is JobSpec?

Answer: J o b S p e c   d e s c r i b e s   h o w   t h e   j o b   e x e c u t i o n   w i l l   l o o k   l i k e .


Question: What is Replicas?

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


Question: What is Lifecycle?

Answer: c o m p l e t i o n s   ( i n t 3 2 ) S p e c i f i e s   t h e   d e s i r e d   n u m b e r   o f   s u c c e s s f u l l y   f i n i s h e d   p o d s   t h e   j o b   s h o u l d   b e   r u n   w i t h .   S e t t i n g   t o   n u l l   m e a n s   t h a t   t h e   s u c c e s s   o f   a n y   p o d   s i g n a l s   t h e   s u c c e s s   o f   a l l   p o d s ,   a n d   a l l o w s   p a r a l l e l i s m   t o   h a v e   a n y   p o s i t i v e   v a l u e .   S e t t i n g   t o   1   m e a n s   t h a t   p a r a l l e l i s m   i s   l i m i t e d   t o   1   a n d   t h e   s u c c e s s   o f   t h a t   p o d   s i g n a l s   t h e   s u c c e s s   o f   t h e   j o b .   M o r e   i n f o :   h t t p s : / / k u b e r n e t e s . i o / d o c s / c o n c e p t s / w o r k l o a d s / c o n t r o l l e r s / j o b s - r u n - t o - c o m p l e t i o n / c o m p l e t i o n M o d e   ( s t r i n g ) c o m p l e t i o n M o d e   s p e c i f i e s   h o w   P o d   c o m p l e t i o n s   a r e   t r a c k e d .   I t   c a n   b e   N o n I n d e x e d   ( d e f a u l t )   o r   I n d e x e d . N o n I n d e x e d   m e a n s   t h a t   t h e   J o b   i s   c o n s i d e r e d   c o m p l e t e   w h e n   t h e r e   h a v e   b e e n   . s p e c . c o m p l e t i o n s   s u c c e s s f u l l y   c o m p l e t e d   P o d s .   E a c h   P o d   c o m p l e t i o n   i s   h o m o l o g o u s   t o   e a c h   o t h e r . I n d e x e d   m e a n s   t h a t   t h e   P o d s   o f   a   J o b   g e t   a n   a s s o c i a t e d   c o m p l e t i o n   i n d e x   f r o m   0   t o   ( . s p e c . c o m p l e t i o n s   -   1 ) ,   a v a i l a b l e   i n   t h e   a n n o t a t i o n   b a t c h . k u b e r n e t e s . i o / j o b - c o m p l e t i o n - i n d e x .   T h e   J o b   i s   c o n s i d e r e d   c o m p l e t e   w h e n   t h e r e   i s   o n e   s u c c e s s f u l l y   c o m p l e t e d   P o d   f o r   e a c h   i n


Question: What is Selector?

Answer: s e l e c t o r   ( L a b e l S e l e c t o r ) A   l a b e l   q u e r y   o v e r   p o d s   t h a t   s h o u l d   m a t c h   t h e   p o d   c o u n t .   N o r m a l l y ,   t h e   s y s t e m   s e t s   t h i s   f i e l d   f o r   y o u .   M o r e   i n f o :   h t t p s : / / k u b e r n e t e s . i o / d o c s / c o n c e p t s / o v e r v i e w / w o r k i n g - w i t h - o b j e c t s / l a b e l s / # l a b e l - s e l e c t o r s m a n u a l S e l e c t o r   ( b o o l e a n ) m a n u a l S e l e c t o r   c o n t r o l s   g e n e r a t i o n   o f   p o d   l a b e l s   a n d   p o d   s e l e c t o r s .   L e a v e   m a n u a l S e l e c t o r   u n s e t   u n l e s s   y o u   a r e   c e r t a i n   w h a t   y o u   a r e   d o i n g .   W h e n   f a l s e   o r   u n s e t ,   t h e   s y s t e m   p i c k   l a b e l s   u n i q u e   t o   t h i s   j o b   a n d   a p p e n d s   t h o s e   l a b e l s   t o   t h e   p o d   t e m p l a t e .   W h e n   t r u e ,   t h e   u s e r   i s   r e s p o n s i b l e   f o r   p i c k i n g   u n i q u e   l a b e l s   a n d   s p e c i f y i n g   t h e   s e l e c t o r .   F a i l u r e   t o   p i c k   a   u n i q u e   l a b e l   m a y   c a u s e   t h i s   a n d   o t h e r   j o b s   t o   n o t   f u n c t i o n   c o r r e c t l y .   H o w e v e r ,   Y o u   m a y   s e e   m a n u a l S e l e c t o r = t r u e   i n   j o b s   t h a t   w e r e   c r e a t e d   w i t h   t h e   o l d   e x t e n s i o n s / v 1 b e t a 1   A P I .   M o r e   i n f o :   h t t p s : / / k u b e r n e t e s . i o / d o c s / c o n c e p t s / w o r k l o a d s / c o n t r o l l e r s / j o b s - r u n - t o - c o m p l e t i o n / # s p e c i f y i n g - y o u r - o w n - p o d - s e l e c t o r   s e l e c t o r   ( L a b e l S e l e c t o r )   A   l a b e l   q u e r y   o v e r   p o d s   t h a t   s h o u l d   m a t c h   t h e   p o d   c o u n t .   N o r m a l l y ,   t h


Question: What is Beta level?

Answer: p o d F a i l u r e P o l i c y   ( P o d F a i l u r e P o l i c y ) S p e c i f i e s   t h e   p o l i c y   o f   h a n d l i n g   f a i l e d   p o d s .   I n   p a r t i c u l a r ,   i t   a l l o w s   t o   s p e c i f y   t h e   s e t   o f   a c t i o n s   a n d   c o n d i t i o n s   w h i c h   n e e d   t o   b e   s a t i s f i e d   t o   t a k e   t h e   a s s o c i a t e d   a c t i o n .   I f   e m p t y ,   t h e   d e f a u l t   b e h a v i o u r   a p p l i e s   -   t h e   c o u n t e r   o f   f a i l e d   p o d s ,   r e p r e s e n t e d   b y   t h e   j o b s ' s   . s t a t u s . f a i l e d   f i e l d ,   i s   i n c r e m e n t e d   a n d   i t   i s   c h e c k e d   a g a i n s t   t h e   b a c k o f f L i m i t .   T h i s   f i e l d   c a n n o t   b e   u s e d   i n   c o m b i n a t i o n   w i t h   r e s t a r t P o l i c y = O n F a i l u r e . P o d F a i l u r e P o l i c y   d e s c r i b e s   h o w   f a i l e d   p o d s   i n f l u e n c e   t h e   b a c k o f f L i m i t . p o d F a i l u r e P o l i c y . r u l e s   ( [ ] P o d F a i l u r e P o l i c y R u l e ) ,   r e q u i r e d A t o m i c :   w i l l   b e   r e p l a c e d   d u r i n g   a   m e r g e A   l i s t   o f   p o d   f a i l u r e   p o l i c y   r u l e s .   T h e   r u l e s   a r e   e v a l u a t e d   i n   o r d e r .   O n c e   a   r u l e   m a t c h e s   a   P o d   f a i l u r e ,   t h e   r e m a i n i n g   o f   t h e   r u l e s   a r e   i g n o r e d .   W h e n   n o   r u l e   m a t c h e s   t h e   P o d   f a i l u r e ,   t h e   d e f a u l t   h a n d l i n g   a p p l i e s   -   t h e   c o u n t e r   o f   p o d   f a i l u r e s   i s   i n c r e m e n t e d   a n d   i t   i s   c h e c k e d   a g a i n s t   t h e   b a c k o f f L i m i t .   A t   m o s t   2 0   e l e m e n t s   a r e   a l l o w e d . P o d F a i l u r e P o l i c y R u l e   d e s c r i b e s   h o w   a   p o d   f a i l


Question: What is Alpha level?

Answer: b a c k o f f L i m i t P e r I n d e x   ( i n t 3 2 ) S p e c i f i e s   t h e   l i m i t   f o r   t h e   n u m b e r   o f   r e t r i e s   w i t h i n   a n   i n d e x   b e f o r e   m a r k i n g   t h i s   i n d e x   a s   f a i l e d .   W h e n   e n a b l e d   t h e   n u m b e r   o f   f a i l u r e s   p e r   i n d e x   i s   k e p t   i n   t h e   p o d ' s   b a t c h . k u b e r n e t e s . i o / j o b - i n d e x - f a i l u r e - c o u n t   a n n o t a t i o n .   I t   c a n   o n l y   b e   s e t   w h e n   J o b ' s   c o m p l e t i o n M o d e = I n d e x e d ,   a n d   t h e   P o d ' s   r e s t a r t   p o l i c y   i s   N e v e r .   T h e   f i e l d   i s   i m m u t a b l e . m a n a g e d B y   ( s t r i n g ) M a n a g e d B y   f i e l d   i n d i c a t e s   t h e   c o n t r o l l e r   t h a t   m a n a g e s   a   J o b .   T h e   k 8 s   J o b   c o n t r o l l e r   r e c o n c i l e s   j o b s   w h i c h   d o n ' t   h a v e   t h i s   f i e l d   a t   a l l   o r   t h e   f i e l d   v a l u e   i s   t h e   r e s e r v e d   s t r i n g   k u b e r n e t e s . i o / j o b - c o n t r o l l e r ,   b u t   s k i p s   r e c o n c i l i n g   J o b s   w i t h   a   c u s t o m   v a l u e   f o r   t h i s   f i e l d .   T h e   v a l u e   m u s t   b e   a   v a l i d   d o m a i n - p r e f i x e d   p a t h   ( e . g .   a c m e . i o / f o o )   -   a l l   c h a r a c t e r s   b e f o r e   t h e   f i r s t   " / "   m u s t   b e   a   v a l i d   s u b d o m a i n   a s   d e f i n e d   b y   R F C   1 1 2 3 .   A l l   c h a r a c t e r s   t r a i l i n g   t h e   f i r s t   " / "   m u s t   b e   v a l i d   H T T P   P a t h   c h a r a c t e r s   a s   d e f i n e d   b y   R F C   3 9 8 6 .   T h e   v a l u e   c a n n o t   e x c e e d   6 3   c h a r a c t e r s .   T h i s   f i e l d   i s   i m m u t a b l e . T h i s   f i e l d   i s   b e t a - l e v e l .   T h e   j o


Question: What is JobStatus?

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


Question: What is Beta level?

Answer: r e a d y   ( i n t 3 2 ) T h e   n u m b e r   o f   a c t i v e   p o d s   w h i c h   h a v e   a   R e a d y   c o n d i t i o n   a n d   a r e   n o t   t e r m i n a t i n g   ( w i t h o u t   a   d e l e t i o n T i m e s t a m p ) .   r e a d y   ( i n t 3 2 )   T h e   n u m b e r   o f   a c t i v e   p o d s   w h i c h   h a v e   a   R e a d y   c o n d i t i o n   a n d   a r e   n o t   t e r m i n a t i n g   ( w i t h o u t   a   d e l e t i o n T i m e s t a m p ) .


Question: What is Alpha level?

Answer: f a i l e d I n d e x e s   ( s t r i n g ) F a i l e d I n d e x e s   h o l d s   t h e   f a i l e d   i n d e x e s   w h e n   s p e c . b a c k o f f L i m i t P e r I n d e x   i s   s e t .   T h e   i n d e x e s   a r e   r e p r e s e n t e d   i n   t h e   t e x t   f o r m a t   a n a l o g o u s   a s   f o r   t h e   c o m p l e t e d I n d e x e s   f i e l d ,   i e .   t h e y   a r e   k e p t   a s   d e c i m a l   i n t e g e r s   s e p a r a t e d   b y   c o m m a s .   T h e   n u m b e r s   a r e   l i s t e d   i n   i n c r e a s i n g   o r d e r .   T h r e e   o r   m o r e   c o n s e c u t i v e   n u m b e r s   a r e   c o m p r e s s e d   a n d   r e p r e s e n t e d   b y   t h e   f i r s t   a n d   l a s t   e l e m e n t   o f   t h e   s e r i e s ,   s e p a r a t e d   b y   a   h y p h e n .   F o r   e x a m p l e ,   i f   t h e   f a i l e d   i n d e x e s   a r e   1 ,   3 ,   4 ,   5   a n d   7 ,   t h e y   a r e   r e p r e s e n t e d   a s   " 1 , 3 - 5 , 7 " .   T h e   s e t   o f   f a i l e d   i n d e x e s   c a n n o t   o v e r l a p   w i t h   t h e   s e t   o f   c o m p l e t e d   i n d e x e s . t e r m i n a t i n g   ( i n t 3 2 ) T h e   n u m b e r   o f   p o d s   w h i c h   a r e   t e r m i n a t i n g   ( i n   p h a s e   P e n d i n g   o r   R u n n i n g   a n d   h a v e   a   d e l e t i o n T i m e s t a m p ) . T h i s   f i e l d   i s   b e t a - l e v e l .   T h e   j o b   c o n t r o l l e r   p o p u l a t e s   t h e   f i e l d   w h e n   t h e   f e a t u r e   g a t e   J o b P o d R e p l a c e m e n t P o l i c y   i s   e n a b l e d   ( e n a b l e d   b y   d e f a u l t ) .   f a i l e d I n d e x e s   ( s t r i n g )   F a i l e d I n d e x e s   h o l d s   t h e   f a i l e d   i n d e x e s   w h e n   s p e c . b a c k o f f L i m i t P e r I n d e x   i s   s e t .   T h e   i n d e x e s   a r e   r e p r e s e n t e d   i n   t h e   t e x t   f


Question: What is JobList?

Answer: J o b L i s t   i s   a   c o l l e c t i o n   o f   j o b s .   a p i V e r s i o n :   b a t c h / v 1 k i n d :   J o b L i s t m e t a d a t a   ( L i s t M e t a ) S t a n d a r d   l i s t   m e t a d a t a .   M o r e   i n f o :   h t t p s : / / g i t . k 8 s . i o / c o m m u n i t y / c o n t r i b u t o r s / d e v e l / s i g - a r c h i t e c t u r e / a p i - c o n v e n t i o n s . m d # m e t a d a t a i t e m s   ( [ ] J o b ) ,   r e q u i r e d i t e m s   i s   t h e   l i s t   o f   J o b s .   a p i V e r s i o n :   b a t c h / v 1   k i n d :   J o b L i s t   m e t a d a t a   ( L i s t M e t a )   S t a n d a r d   l i s t   m e t a d a t a .   M o r e   i n f o :   h t t p s : / / g i t . k 8 s . i o / c o m m u n i t y / c o n t r i b u t o r s / d e v e l / s i g - a r c h i t e c t u r e / a p i - c o n v e n t i o n s . m d # m e t a d a t a   i t e m s   ( [ ] J o b ) ,   r e q u i r e d   i t e m s   i s   t h e   l i s t   o f   J o b s .


Question: What is HTTP Request?

Answer: G E T   / a p i s / b a t c h / v 1 / n a m e s p a c e s / { n a m e s p a c e } / j o b s / { n a m e }


Question: What is Parameters?

Answer: n a m e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e   o f   t h e   J o b n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e s p a c e p r e t t y   ( i n   q u e r y ) :   s t r i n g p r e t t y   n a m e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e   o f   t h e   J o b   n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e s p a c e   p r e t t y   ( i n   q u e r y ) :   s t r i n g   p r e t t y


Question: What is Response?

Answer: 2 0 0   ( J o b ) :   O K   4 0 1 :   U n a u t h o r i z e d


Question: What is HTTP Request?

Answer: G E T   / a p i s / b a t c h / v 1 / n a m e s p a c e s / { n a m e s p a c e } / j o b s / { n a m e } / s t a t u s


Question: What is Parameters?

Answer: n a m e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e   o f   t h e   J o b n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e s p a c e p r e t t y   ( i n   q u e r y ) :   s t r i n g p r e t t y   n a m e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e   o f   t h e   J o b   n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e s p a c e   p r e t t y   ( i n   q u e r y ) :   s t r i n g   p r e t t y


Question: What is Response?

Answer: 2 0 0   ( J o b ) :   O K   4 0 1 :   U n a u t h o r i z e d


Question: What is HTTP Request?

Answer: G E T   / a p i s / b a t c h / v 1 / n a m e s p a c e s / { n a m e s p a c e } / j o b s


Question: What is Parameters?

Answer: n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e s p a c e a l l o w W a t c h B o o k m a r k s   ( i n   q u e r y ) :   b o o l e a n a l l o w W a t c h B o o k m a r k s c o n t i n u e   ( i n   q u e r y ) :   s t r i n g c o n t i n u e f i e l d S e l e c t o r   ( i n   q u e r y ) :   s t r i n g f i e l d S e l e c t o r l a b e l S e l e c t o r   ( i n   q u e r y ) :   s t r i n g l a b e l S e l e c t o r l i m i t   ( i n   q u e r y ) :   i n t e g e r l i m i t p r e t t y   ( i n   q u e r y ) :   s t r i n g p r e t t y r e s o u r c e V e r s i o n   ( i n   q u e r y ) :   s t r i n g r e s o u r c e V e r s i o n r e s o u r c e V e r s i o n M a t c h   ( i n   q u e r y ) :   s t r i n g r e s o u r c e V e r s i o n M a t c h s e n d I n i t i a l E v e n t s   ( i n   q u e r y ) :   b o o l e a n s e n d I n i t i a l E v e n t s t i m e o u t S e c o n d s   ( i n   q u e r y ) :   i n t e g e r t i m e o u t S e c o n d s w a t c h   ( i n   q u e r y ) :   b o o l e a n w a t c h   n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e s p a c e   a l l o w W a t c h B o o k m a r k s   ( i n   q u e r y ) :   b o o l e a n   a l l o w W a t c h B o o k m a r k s   c o n t i n u e   ( i n   q u e r y ) :   s t r i n g   c o n t i n u e   f i e l d S e l e c t o r   ( i n   q u e r y ) :   s t r i n g   f i e l d S e l e c t o r   l a b e l S e l e c t o r   ( i n   q u e r y ) :   s t r i n g   l a b e l S e l e c t o r   l i m i t   ( i n   q u e r y ) :   i n t e g e r   l i m i t   p r e t t y   ( i n   q u e r y ) :   s t r i n g   p r e t t y   r e s o u r c e V e r s i o n   ( i n   q u e r y ) :   s t r i n g   r e s o u r c e V e r s i o n   r e s o u r c e V e r s i o n M a t c h   ( i n   q u e r y ) :   s t r i n g   r e s o u r c e V e r s i o n M a t c h   s e n d I n i t i a l E v e n t s   ( i n   q u e r y ) :   b o o l e a n   s e n d I n i t i a l E v e n


Question: What is Response?

Answer: 2 0 0   ( J o b L i s t ) :   O K   4 0 1 :   U n a u t h o r i z e d


Question: What is HTTP Request?

Answer: G E T   / a p i s / b a t c h / v 1 / j o b s


Question: What is Parameters?

Answer: a l l o w W a t c h B o o k m a r k s   ( i n   q u e r y ) :   b o o l e a n a l l o w W a t c h B o o k m a r k s c o n t i n u e   ( i n   q u e r y ) :   s t r i n g c o n t i n u e f i e l d S e l e c t o r   ( i n   q u e r y ) :   s t r i n g f i e l d S e l e c t o r l a b e l S e l e c t o r   ( i n   q u e r y ) :   s t r i n g l a b e l S e l e c t o r l i m i t   ( i n   q u e r y ) :   i n t e g e r l i m i t p r e t t y   ( i n   q u e r y ) :   s t r i n g p r e t t y r e s o u r c e V e r s i o n   ( i n   q u e r y ) :   s t r i n g r e s o u r c e V e r s i o n r e s o u r c e V e r s i o n M a t c h   ( i n   q u e r y ) :   s t r i n g r e s o u r c e V e r s i o n M a t c h s e n d I n i t i a l E v e n t s   ( i n   q u e r y ) :   b o o l e a n s e n d I n i t i a l E v e n t s t i m e o u t S e c o n d s   ( i n   q u e r y ) :   i n t e g e r t i m e o u t S e c o n d s w a t c h   ( i n   q u e r y ) :   b o o l e a n w a t c h   a l l o w W a t c h B o o k m a r k s   ( i n   q u e r y ) :   b o o l e a n   a l l o w W a t c h B o o k m a r k s   c o n t i n u e   ( i n   q u e r y ) :   s t r i n g   c o n t i n u e   f i e l d S e l e c t o r   ( i n   q u e r y ) :   s t r i n g   f i e l d S e l e c t o r   l a b e l S e l e c t o r   ( i n   q u e r y ) :   s t r i n g   l a b e l S e l e c t o r   l i m i t   ( i n   q u e r y ) :   i n t e g e r   l i m i t   p r e t t y   ( i n   q u e r y ) :   s t r i n g   p r e t t y   r e s o u r c e V e r s i o n   ( i n   q u e r y ) :   s t r i n g   r e s o u r c e V e r s i o n   r e s o u r c e V e r s i o n M a t c h   ( i n   q u e r y ) :   s t r i n g   r e s o u r c e V e r s i o n M a t c h   s e n d I n i t i a l E v e n t s   ( i n   q u e r y ) :   b o o l e a n   s e n d I n i t i a l E v e n t s   t i m e o u t S e c o n d s   ( i n   q u e r y ) :   i n t e g e r   t i m e o u t S e c o n d s   w a t c h   ( i n   q u e r y ) :   b o o l e a n   w a t c h


Question: What is Response?

Answer: 2 0 0   ( J o b L i s t ) :   O K   4 0 1 :   U n a u t h o r i z e d


Question: What is HTTP Request?

Answer: P O S T   / a p i s / b a t c h / v 1 / n a m e s p a c e s / { n a m e s p a c e } / j o b s


Question: What is Parameters?

Answer: n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e s p a c e b o d y :   J o b ,   r e q u i r e d d r y R u n   ( i n   q u e r y ) :   s t r i n g d r y R u n f i e l d M a n a g e r   ( i n   q u e r y ) :   s t r i n g f i e l d M a n a g e r f i e l d V a l i d a t i o n   ( i n   q u e r y ) :   s t r i n g f i e l d V a l i d a t i o n p r e t t y   ( i n   q u e r y ) :   s t r i n g p r e t t y   n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e s p a c e   b o d y :   J o b ,   r e q u i r e d   d r y R u n   ( i n   q u e r y ) :   s t r i n g   d r y R u n   f i e l d M a n a g e r   ( i n   q u e r y ) :   s t r i n g   f i e l d M a n a g e r   f i e l d V a l i d a t i o n   ( i n   q u e r y ) :   s t r i n g   f i e l d V a l i d a t i o n   p r e t t y   ( i n   q u e r y ) :   s t r i n g   p r e t t y


Question: What is Response?

Answer: 2 0 0   ( J o b ) :   O K   2 0 1   ( J o b ) :   C r e a t e d   2 0 2   ( J o b ) :   A c c e p t e d   4 0 1 :   U n a u t h o r i z e d


Question: What is HTTP Request?

Answer: P U T   / a p i s / b a t c h / v 1 / n a m e s p a c e s / { n a m e s p a c e } / j o b s / { n a m e }


Question: What is Parameters?

Answer: n a m e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e   o f   t h e   J o b n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e s p a c e b o d y :   J o b ,   r e q u i r e d d r y R u n   ( i n   q u e r y ) :   s t r i n g d r y R u n f i e l d M a n a g e r   ( i n   q u e r y ) :   s t r i n g f i e l d M a n a g e r f i e l d V a l i d a t i o n   ( i n   q u e r y ) :   s t r i n g f i e l d V a l i d a t i o n p r e t t y   ( i n   q u e r y ) :   s t r i n g p r e t t y   n a m e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e   o f   t h e   J o b   n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e s p a c e   b o d y :   J o b ,   r e q u i r e d   d r y R u n   ( i n   q u e r y ) :   s t r i n g   d r y R u n   f i e l d M a n a g e r   ( i n   q u e r y ) :   s t r i n g   f i e l d M a n a g e r   f i e l d V a l i d a t i o n   ( i n   q u e r y ) :   s t r i n g   f i e l d V a l i d a t i o n   p r e t t y   ( i n   q u e r y ) :   s t r i n g   p r e t t y


Question: What is Response?

Answer: 2 0 0   ( J o b ) :   O K   2 0 1   ( J o b ) :   C r e a t e d   4 0 1 :   U n a u t h o r i z e d


Question: What is HTTP Request?

Answer: P U T   / a p i s / b a t c h / v 1 / n a m e s p a c e s / { n a m e s p a c e } / j o b s / { n a m e } / s t a t u s


Question: What is Parameters?

Answer: n a m e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e   o f   t h e   J o b n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e s p a c e b o d y :   J o b ,   r e q u i r e d d r y R u n   ( i n   q u e r y ) :   s t r i n g d r y R u n f i e l d M a n a g e r   ( i n   q u e r y ) :   s t r i n g f i e l d M a n a g e r f i e l d V a l i d a t i o n   ( i n   q u e r y ) :   s t r i n g f i e l d V a l i d a t i o n p r e t t y   ( i n   q u e r y ) :   s t r i n g p r e t t y   n a m e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e   o f   t h e   J o b   n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e s p a c e   b o d y :   J o b ,   r e q u i r e d   d r y R u n   ( i n   q u e r y ) :   s t r i n g   d r y R u n   f i e l d M a n a g e r   ( i n   q u e r y ) :   s t r i n g   f i e l d M a n a g e r   f i e l d V a l i d a t i o n   ( i n   q u e r y ) :   s t r i n g   f i e l d V a l i d a t i o n   p r e t t y   ( i n   q u e r y ) :   s t r i n g   p r e t t y


Question: What is Response?

Answer: 2 0 0   ( J o b ) :   O K   2 0 1   ( J o b ) :   C r e a t e d   4 0 1 :   U n a u t h o r i z e d


Question: What is HTTP Request?

Answer: P A T C H   / a p i s / b a t c h / v 1 / n a m e s p a c e s / { n a m e s p a c e } / j o b s / { n a m e }


Question: What is Parameters?

Answer: n a m e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e   o f   t h e   J o b n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e s p a c e b o d y :   P a t c h ,   r e q u i r e d d r y R u n   ( i n   q u e r y ) :   s t r i n g d r y R u n f i e l d M a n a g e r   ( i n   q u e r y ) :   s t r i n g f i e l d M a n a g e r f i e l d V a l i d a t i o n   ( i n   q u e r y ) :   s t r i n g f i e l d V a l i d a t i o n f o r c e   ( i n   q u e r y ) :   b o o l e a n f o r c e p r e t t y   ( i n   q u e r y ) :   s t r i n g p r e t t y   n a m e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e   o f   t h e   J o b   n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e s p a c e   b o d y :   P a t c h ,   r e q u i r e d   d r y R u n   ( i n   q u e r y ) :   s t r i n g   d r y R u n   f i e l d M a n a g e r   ( i n   q u e r y ) :   s t r i n g   f i e l d M a n a g e r   f i e l d V a l i d a t i o n   ( i n   q u e r y ) :   s t r i n g   f i e l d V a l i d a t i o n   f o r c e   ( i n   q u e r y ) :   b o o l e a n   f o r c e   p r e t t y   ( i n   q u e r y ) :   s t r i n g   p r e t t y


Question: What is Response?

Answer: 2 0 0   ( J o b ) :   O K   2 0 1   ( J o b ) :   C r e a t e d   4 0 1 :   U n a u t h o r i z e d


Question: What is HTTP Request?

Answer: P A T C H   / a p i s / b a t c h / v 1 / n a m e s p a c e s / { n a m e s p a c e } / j o b s / { n a m e } / s t a t u s


Question: What is Parameters?

Answer: n a m e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e   o f   t h e   J o b n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e s p a c e b o d y :   P a t c h ,   r e q u i r e d d r y R u n   ( i n   q u e r y ) :   s t r i n g d r y R u n f i e l d M a n a g e r   ( i n   q u e r y ) :   s t r i n g f i e l d M a n a g e r f i e l d V a l i d a t i o n   ( i n   q u e r y ) :   s t r i n g f i e l d V a l i d a t i o n f o r c e   ( i n   q u e r y ) :   b o o l e a n f o r c e p r e t t y   ( i n   q u e r y ) :   s t r i n g p r e t t y   n a m e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e   o f   t h e   J o b   n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e s p a c e   b o d y :   P a t c h ,   r e q u i r e d   d r y R u n   ( i n   q u e r y ) :   s t r i n g   d r y R u n   f i e l d M a n a g e r   ( i n   q u e r y ) :   s t r i n g   f i e l d M a n a g e r   f i e l d V a l i d a t i o n   ( i n   q u e r y ) :   s t r i n g   f i e l d V a l i d a t i o n   f o r c e   ( i n   q u e r y ) :   b o o l e a n   f o r c e   p r e t t y   ( i n   q u e r y ) :   s t r i n g   p r e t t y


Question: What is Response?

Answer: 2 0 0   ( J o b ) :   O K   2 0 1   ( J o b ) :   C r e a t e d   4 0 1 :   U n a u t h o r i z e d


Question: What is HTTP Request?

Answer: D E L E T E   / a p i s / b a t c h / v 1 / n a m e s p a c e s / { n a m e s p a c e } / j o b s / { n a m e }


Question: What is Parameters?

Answer: n a m e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e   o f   t h e   J o b n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e s p a c e b o d y :   D e l e t e O p t i o n s d r y R u n   ( i n   q u e r y ) :   s t r i n g d r y R u n g r a c e P e r i o d S e c o n d s   ( i n   q u e r y ) :   i n t e g e r g r a c e P e r i o d S e c o n d s i g n o r e S t o r e R e a d E r r o r W i t h C l u s t e r B r e a k i n g P o t e n t i a l   ( i n   q u e r y ) :   b o o l e a n i g n o r e S t o r e R e a d E r r o r W i t h C l u s t e r B r e a k i n g P o t e n t i a l p r e t t y   ( i n   q u e r y ) :   s t r i n g p r e t t y p r o p a g a t i o n P o l i c y   ( i n   q u e r y ) :   s t r i n g p r o p a g a t i o n P o l i c y   n a m e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e   o f   t h e   J o b   n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e s p a c e   b o d y :   D e l e t e O p t i o n s   d r y R u n   ( i n   q u e r y ) :   s t r i n g   d r y R u n   g r a c e P e r i o d S e c o n d s   ( i n   q u e r y ) :   i n t e g e r   g r a c e P e r i o d S e c o n d s   i g n o r e S t o r e R e a d E r r o r W i t h C l u s t e r B r e a k i n g P o t e n t i a l   ( i n   q u e r y ) :   b o o l e a n   i g n o r e S t o r e R e a d E r r o r W i t h C l u s t e r B r e a k i n g P o t e n t i a l   p r e t t y   ( i n   q u e r y ) :   s t r i n g   p r e t t y   p r o p a g a t i o n P o l i c y   ( i n   q u e r y ) :   s t r i n g   p r o p a g a t i o n P o l i c y


Question: What is Response?

Answer: 2 0 0   ( S t a t u s ) :   O K   2 0 2   ( S t a t u s ) :   A c c e p t e d   4 0 1 :   U n a u t h o r i z e d


Question: What is HTTP Request?

Answer: D E L E T E   / a p i s / b a t c h / v 1 / n a m e s p a c e s / { n a m e s p a c e } / j o b s


Question: What is Parameters?

Answer: n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d n a m e s p a c e b o d y :   D e l e t e O p t i o n s c o n t i n u e   ( i n   q u e r y ) :   s t r i n g c o n t i n u e d r y R u n   ( i n   q u e r y ) :   s t r i n g d r y R u n f i e l d S e l e c t o r   ( i n   q u e r y ) :   s t r i n g f i e l d S e l e c t o r g r a c e P e r i o d S e c o n d s   ( i n   q u e r y ) :   i n t e g e r g r a c e P e r i o d S e c o n d s i g n o r e S t o r e R e a d E r r o r W i t h C l u s t e r B r e a k i n g P o t e n t i a l   ( i n   q u e r y ) :   b o o l e a n i g n o r e S t o r e R e a d E r r o r W i t h C l u s t e r B r e a k i n g P o t e n t i a l l a b e l S e l e c t o r   ( i n   q u e r y ) :   s t r i n g l a b e l S e l e c t o r l i m i t   ( i n   q u e r y ) :   i n t e g e r l i m i t p r e t t y   ( i n   q u e r y ) :   s t r i n g p r e t t y p r o p a g a t i o n P o l i c y   ( i n   q u e r y ) :   s t r i n g p r o p a g a t i o n P o l i c y r e s o u r c e V e r s i o n   ( i n   q u e r y ) :   s t r i n g r e s o u r c e V e r s i o n r e s o u r c e V e r s i o n M a t c h   ( i n   q u e r y ) :   s t r i n g r e s o u r c e V e r s i o n M a t c h s e n d I n i t i a l E v e n t s   ( i n   q u e r y ) :   b o o l e a n s e n d I n i t i a l E v e n t s t i m e o u t S e c o n d s   ( i n   q u e r y ) :   i n t e g e r t i m e o u t S e c o n d s   n a m e s p a c e   ( i n   p a t h ) :   s t r i n g ,   r e q u i r e d   n a m e s p a c e   b o d y :   D e l e t e O p t i o n s   c o n t i n u e   ( i n   q u e r y ) :   s t r i n g   c o n t i n u e   d r y R u n   ( i n   q u e r y ) :   s t r i n g   d r y R u n   f i e l d S e l e c t o r   ( i n   q u e r y ) :   s t r i n g   f i e l d S e l e c t o r   g r a c e P e r i o d S e c o n d s   ( i n   q u e r y ) :   i n t e g e r   g r a c e P e r i o d S e c o n d s   i g n o r e S t o r e R e a d E r r o r W i t h C l u s t e r B r e a k i n g


Question: What is Response?

Answer: 2 0 0   ( S t a t u s ) :   O K   4 0 1 :   U n a u t h o r i z e d   T h i s   p a g e   i s   a u t o m a t i c a l l y   g e n e r a t e d .   I f   y o u   p l a n   t o   r e p o r t   a n   i s s u e   w i t h   t h i s   p a g e ,   m e n t i o n   t h a t   t h e   p a g e   i s   a u t o - g e n e r a t e d   i n   y o u r   i s s u e   d e s c r i p t i o n .   T h e   f i x   m a y   n e e d   t o   h a p p e n   e l s e w h e r e   i n   t h e   K u b e r n e t e s   p r o j e c t .


Question: What is Finalizers?

Answer: FinalizersFinalizers are namespaced keys that tell Kubernetes to wait until specific conditions are met before it fully deletes resources that are marked for deletion. Finalizers alert controllers to clean up resources the deleted object owned.When you tell Kubernetes to delete an object that has finalizers specified for it, the Kubernetes API marks the object for deletion by populating .metadata.deletionTimestamp, and returns a 202 status code (HTTP "Accepted"). The target object remains in a terminating state while the control plane, or other components, take the actions defined by the finalizers. After these actions are complete, the controller removes the relevant finalizers from the target object. When the metadata.finalizers field is empty, Kubernetes considers the deletion complete and deletes the object.You can use finalizers to control garbage collection of resources. For example, you can define a finalizer to clean up related API resources or infrastructure before the controller deletes the object being finalized.You can use finalizers to control garbage collection of objects by alerting controllers to perform specific cleanup tasks before deleting the target resource.Finalizers don't usually specify the code to execute. Instead, they are typically lists of keys on a specific resource similar to annotations. Kubernetes specifies some finalizers automatically, but you can also specify your own.How finalizers workWhen you create a resource using a manifest file, you can specify finalizers in the metadata.finalizers field. When you attempt to delete the resource, the API server handling the delete request notices the values in the finalizers field and does the following:Modifies the object to add a metadata.deletionTimestamp field with the time you started the deletion.Prevents the object from being removed until all items are removed from its metadata.finalizers fieldReturns a 202 status code (HTTP "Accepted")The controller managing that finalizer notices the update to the object setting the metadata.deletionTimestamp, indicating deletion of the object has been requested. The controller then attempts to satisfy the requirements of the finalizers specified for that resource. Each time a finalizer condition is satisfied, the controller removes that key from the resource's finalizers field. When the finalizers field is emptied, an object with a deletionTimestamp field set is automatically deleted. You can also use finalizers to prevent deletion of unmanaged resources.A common example of a finalizer is kubernetes.io/pv-protection, which prevents accidental deletion of PersistentVolume objects. When a PersistentVolume object is in use by a Pod, Kubernetes adds the pv-protection finalizer. If you try to delete the PersistentVolume, it enters a Terminating status, but the controller can't delete it because the finalizer exists. When the Pod stops using the PersistentVolume, Kubernetes clears the pv-protection finalizer, and the controller delete


Question: How does Finalizers work?

Answer: FinalizersFinalizers are namespaced keys that tell Kubernetes to wait until specific conditions are met before it fully deletes resources that are marked for deletion. Finalizers alert controllers to clean up resources the deleted object owned.When you tell Kubernetes to delete an object that has finalizers specified for it, the Kubernetes API marks the object for deletion by populating .metadata.deletionTimestamp, and returns a 202 status code (HTTP "Accepted"). The target object remains in a terminating state while the control plane, or other components, take the actions defined by the finalizers. After these actions are complete, the controller removes the relevant finalizers from the target object. When the metadata.finalizers field is empty, Kubernetes considers the deletion complete and deletes the object.You can use finalizers to control garbage collection of resources. For example, you can define a finalizer to clean up related API resources or infrastructure before the controller deletes the object being finalized.You can use finalizers to control garbage collection of objects by alerting controllers to perform specific cleanup tasks before deleting the target resource.Finalizers don't usually specify the code to execute. Instead, they are typically lists of keys on a specific resource similar to annotations. Kubernetes specifies some finalizers automatically, but you can also specify your own.How finalizers workWhen you create a resource using a manifest file, you can specify finalizers in the metadata.finalizers field. When you attempt to delete the resource, the API server handling the delete request notices the values in the finalizers field and does the following:Modifies the object to add a metadata.deletionTimestamp field with the time you started the deletion.Prevents the object from being removed until all items are removed from its metadata.finalizers fieldReturns a 202 status code (HTTP "Accepted")The controller managing that finalizer notices the update to the object setting the metadata.deletionTimestamp, indicating deletion of the object has been requested. The controller then attempts to satisfy the requirements of the finalizers specified for that resource. Each time a finalizer condition is satisfied, the controller removes that key from the resource's finalizers field. When the finalizers field is emptied, an object with a deletionTimestamp field set is automatically deleted. You can also use finalizers to prevent deletion of unmanaged resources.A common example of a finalizer is kubernetes.io/pv-protection, which prevents accidental deletion of PersistentVolume objects. When a PersistentVolume object is in use by a Pod, Kubernetes adds the pv-protection finalizer. If you try to delete the PersistentVolume, it enters a Terminating status, but the controller can't delete it because the finalizer exists. When the Pod stops using the PersistentVolume, Kubernetes clears the pv-protection finalizer, and the controller delete


Question: When would you use Finalizers?

Answer: FinalizersFinalizers are namespaced keys that tell Kubernetes to wait until specific conditions are met before it fully deletes resources that are marked for deletion. Finalizers alert controllers to clean up resources the deleted object owned.When you tell Kubernetes to delete an object that has finalizers specified for it, the Kubernetes API marks the object for deletion by populating .metadata.deletionTimestamp, and returns a 202 status code (HTTP "Accepted"). The target object remains in a terminating state while the control plane, or other components, take the actions defined by the finalizers. After these actions are complete, the controller removes the relevant finalizers from the target object. When the metadata.finalizers field is empty, Kubernetes considers the deletion complete and deletes the object.You can use finalizers to control garbage collection of resources. For example, you can define a finalizer to clean up related API resources or infrastructure before the controller deletes the object being finalized.You can use finalizers to control garbage collection of objects by alerting controllers to perform specific cleanup tasks before deleting the target resource.Finalizers don't usually specify the code to execute. Instead, they are typically lists of keys on a specific resource similar to annotations. Kubernetes specifies some finalizers automatically, but you can also specify your own.How finalizers workWhen you create a resource using a manifest file, you can specify finalizers in the metadata.finalizers field. When you attempt to delete the resource, the API server handling the delete request notices the values in the finalizers field and does the following:Modifies the object to add a metadata.deletionTimestamp field with the time you started the deletion.Prevents the object from being removed until all items are removed from its metadata.finalizers fieldReturns a 202 status code (HTTP "Accepted")The controller managing that finalizer notices the update to the object setting the metadata.deletionTimestamp, indicating deletion of the object has been requested. The controller then attempts to satisfy the requirements of the finalizers specified for that resource. Each time a finalizer condition is satisfied, the controller removes that key from the resource's finalizers field. When the finalizers field is emptied, an object with a deletionTimestamp field set is automatically deleted. You can also use finalizers to prevent deletion of unmanaged resources.A common example of a finalizer is kubernetes.io/pv-protection, which prevents accidental deletion of PersistentVolume objects. When a PersistentVolume object is in use by a Pod, Kubernetes adds the pv-protection finalizer. If you try to delete the PersistentVolume, it enters a Terminating status, but the controller can't delete it because the finalizer exists. When the Pod stops using the PersistentVolume, Kubernetes clears the pv-protection finalizer, and the controller delete


Question: What are the benefits of Finalizers?

Answer: FinalizersFinalizers are namespaced keys that tell Kubernetes to wait until specific conditions are met before it fully deletes resources that are marked for deletion. Finalizers alert controllers to clean up resources the deleted object owned.When you tell Kubernetes to delete an object that has finalizers specified for it, the Kubernetes API marks the object for deletion by populating .metadata.deletionTimestamp, and returns a 202 status code (HTTP "Accepted"). The target object remains in a terminating state while the control plane, or other components, take the actions defined by the finalizers. After these actions are complete, the controller removes the relevant finalizers from the target object. When the metadata.finalizers field is empty, Kubernetes considers the deletion complete and deletes the object.You can use finalizers to control garbage collection of resources. For example, you can define a finalizer to clean up related API resources or infrastructure before the controller deletes the object being finalized.You can use finalizers to control garbage collection of objects by alerting controllers to perform specific cleanup tasks before deleting the target resource.Finalizers don't usually specify the code to execute. Instead, they are typically lists of keys on a specific resource similar to annotations. Kubernetes specifies some finalizers automatically, but you can also specify your own.How finalizers workWhen you create a resource using a manifest file, you can specify finalizers in the metadata.finalizers field. When you attempt to delete the resource, the API server handling the delete request notices the values in the finalizers field and does the following:Modifies the object to add a metadata.deletionTimestamp field with the time you started the deletion.Prevents the object from being removed until all items are removed from its metadata.finalizers fieldReturns a 202 status code (HTTP "Accepted")The controller managing that finalizer notices the update to the object setting the metadata.deletionTimestamp, indicating deletion of the object has been requested. The controller then attempts to satisfy the requirements of the finalizers specified for that resource. Each time a finalizer condition is satisfied, the controller removes that key from the resource's finalizers field. When the finalizers field is emptied, an object with a deletionTimestamp field set is automatically deleted. You can also use finalizers to prevent deletion of unmanaged resources.A common example of a finalizer is kubernetes.io/pv-protection, which prevents accidental deletion of PersistentVolume objects. When a PersistentVolume object is in use by a Pod, Kubernetes adds the pv-protection finalizer. If you try to delete the PersistentVolume, it enters a Terminating status, but the controller can't delete it because the finalizer exists. When the Pod stops using the PersistentVolume, Kubernetes clears the pv-protection finalizer, and the controller delete


Question: What is Finalizers?

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


Question: What is How finalizers work?

Answer: W h e n   y o u   c r e a t e   a   r e s o u r c e   u s i n g   a   m a n i f e s t   f i l e ,   y o u   c a n   s p e c i f y   f i n a l i z e r s   i n   t h e   m e t a d a t a . f i n a l i z e r s   f i e l d .   W h e n   y o u   a t t e m p t   t o   d e l e t e   t h e   r e s o u r c e ,   t h e   A P I   s e r v e r   h a n d l i n g   t h e   d e l e t e   r e q u e s t   n o t i c e s   t h e   v a l u e s   i n   t h e   f i n a l i z e r s   f i e l d   a n d   d o e s   t h e   f o l l o w i n g :   M o d i f i e s   t h e   o b j e c t   t o   a d d   a   m e t a d a t a . d e l e t i o n T i m e s t a m p   f i e l d   w i t h   t h e   t i m e   y o u   s t a r t e d   t h e   d e l e t i o n . P r e v e n t s   t h e   o b j e c t   f r o m   b e i n g   r e m o v e d   u n t i l   a l l   i t e m s   a r e   r e m o v e d   f r o m   i t s   m e t a d a t a . f i n a l i z e r s   f i e l d R e t u r n s   a   2 0 2   s t a t u s   c o d e   ( H T T P   " A c c e p t e d " )   T h e   c o n t r o l l e r   m a n a g i n g   t h a t   f i n a l i z e r   n o t i c e s   t h e   u p d a t e   t o   t h e   o b j e c t   s e t t i n g   t h e   m e t a d a t a . d e l e t i o n T i m e s t a m p ,   i n d i c a t i n g   d e l e t i o n   o f   t h e   o b j e c t   h a s   b e e n   r e q u e s t e d .   T h e   c o n t r o l l e r   t h e n   a t t e m p t s   t o   s a t i s f y   t h e   r e q u i r e m e n t s   o f   t h e   f i n a l i z e r s   s p e c i f i e d   f o r   t h a t   r e s o u r c e .   E a c h   t i m e   a   f i n a l i z e r   c o n d i t i o n   i s   s a t i s f i e d ,   t h e   c o n t r o l l e r   r e m o v e s   t h a t   k e y   f r o m   t h e   r e s o u r c e ' s   f i n a l i z e r s   f i e l d .   W h e n   t h e   f i n a l i z e r s   f i e l d   i s   e m p t i e d ,   a n   o b j e c t   w i t h   a   d e l e t i o n T i m e s t a m p   f i e l d   s e t   i s   a u t o m a t i c a l l y   d e l e t e


Question: What is Note:?

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


Question: What is Owner references, labels, and finalizers?

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


Question: What is What's next?

Answer: R e a d   U s i n g   F i n a l i z e r s   t o   C o n t r o l   D e l e t i o n   o n   t h e   K u b e r n e t e s   b l o g .


Question: What is ResourceClaim?

Answer: ResourceClaimResourceClaim describes a request for access to resources in the cluster, for use by workloads.apiVersion: resource.k8s.io/v1import "k8s.io/api/resource/v1"ResourceClaimResourceClaim describes a request for access to resources in the cluster, for use by workloads. For example, if a workload needs an accelerator device with specific properties, this is how that request is expressed. The status stanza tracks whether this claim has been satisfied and what specific resources have been allocated.This is an alpha type and requires enabling the DynamicResourceAllocation feature gate.apiVersion: resource.k8s.io/v1kind: ResourceClaimmetadata (ObjectMeta)Standard object metadataspec (ResourceClaimSpec), requiredSpec describes what is being requested and how to configure it. The spec is immutable.status (ResourceClaimStatus)Status describes whether the claim is ready to use and what has been allocated.ResourceClaimSpecResourceClaimSpec defines what is being requested in a ResourceClaim and how to configure it.devices (DeviceClaim)Devices defines how to request devices.DeviceClaim defines how to request devices with a ResourceClaim.devices.config ([]DeviceClaimConfiguration)Atomic: will be replaced during a mergeThis field holds configuration for multiple potential drivers which could satisfy requests in this claim. It is ignored while allocating the claim.DeviceClaimConfiguration is used for configuration parameters in DeviceClaim.devices.config.opaque (OpaqueDeviceConfiguration)Opaque provides driver-specific configuration parameters.OpaqueDeviceConfiguration contains configuration parameters for a driver in a format defined by the driver vendor.devices.config.opaque.driver (string), requiredDriver is used to determine which kubelet plugin needs to be passed these configuration parameters.An admission policy provided by the driver developer could use this to decide whether it needs to validate them.Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver.devices.config.opaque.parameters (RawExtension), requiredParameters can contain arbitrary data. It is the responsibility of the driver developer to handle validation and versioning. Typically this includes self-identification and a version ("kind" + "apiVersion" for Kubernetes types), with conversion between different versions.The length of the raw data must be smaller or equal to 10 Ki.*RawExtension is used to hold extensions in external versions.To use this, make a field which has RawExtension as its type in your external, versioned struct, and Object in your internal struct. You also need to register your various plugin types.// Internal package:type MyAPIObject struct { runtime.TypeMeta `json:",inline"` MyPlugin runtime.Object `json:"myPlugin"` } type PluginA struct { AOption string `json:"aOption"` } // External package:type MyAPIObject struct { runtime.TypeMeta `json:",inline"` MyPlugin runtime.RawExtension `json:"myPlugin"` } type PluginA struct { AOpti


Question: How does ResourceClaim work?

Answer: ResourceClaimResourceClaim describes a request for access to resources in the cluster, for use by workloads.apiVersion: resource.k8s.io/v1import "k8s.io/api/resource/v1"ResourceClaimResourceClaim describes a request for access to resources in the cluster, for use by workloads. For example, if a workload needs an accelerator device with specific properties, this is how that request is expressed. The status stanza tracks whether this claim has been satisfied and what specific resources have been allocated.This is an alpha type and requires enabling the DynamicResourceAllocation feature gate.apiVersion: resource.k8s.io/v1kind: ResourceClaimmetadata (ObjectMeta)Standard object metadataspec (ResourceClaimSpec), requiredSpec describes what is being requested and how to configure it. The spec is immutable.status (ResourceClaimStatus)Status describes whether the claim is ready to use and what has been allocated.ResourceClaimSpecResourceClaimSpec defines what is being requested in a ResourceClaim and how to configure it.devices (DeviceClaim)Devices defines how to request devices.DeviceClaim defines how to request devices with a ResourceClaim.devices.config ([]DeviceClaimConfiguration)Atomic: will be replaced during a mergeThis field holds configuration for multiple potential drivers which could satisfy requests in this claim. It is ignored while allocating the claim.DeviceClaimConfiguration is used for configuration parameters in DeviceClaim.devices.config.opaque (OpaqueDeviceConfiguration)Opaque provides driver-specific configuration parameters.OpaqueDeviceConfiguration contains configuration parameters for a driver in a format defined by the driver vendor.devices.config.opaque.driver (string), requiredDriver is used to determine which kubelet plugin needs to be passed these configuration parameters.An admission policy provided by the driver developer could use this to decide whether it needs to validate them.Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver.devices.config.opaque.parameters (RawExtension), requiredParameters can contain arbitrary data. It is the responsibility of the driver developer to handle validation and versioning. Typically this includes self-identification and a version ("kind" + "apiVersion" for Kubernetes types), with conversion between different versions.The length of the raw data must be smaller or equal to 10 Ki.*RawExtension is used to hold extensions in external versions.To use this, make a field which has RawExtension as its type in your external, versioned struct, and Object in your internal struct. You also need to register your various plugin types.// Internal package:type MyAPIObject struct { runtime.TypeMeta `json:",inline"` MyPlugin runtime.Object `json:"myPlugin"` } type PluginA struct { AOption string `json:"aOption"` } // External package:type MyAPIObject struct { runtime.TypeMeta `json:",inline"` MyPlugin runtime.RawExtension `json:"myPlugin"` } type PluginA struct { AOpti


Question: When would you use ResourceClaim?

Answer: ResourceClaimResourceClaim describes a request for access to resources in the cluster, for use by workloads.apiVersion: resource.k8s.io/v1import "k8s.io/api/resource/v1"ResourceClaimResourceClaim describes a request for access to resources in the cluster, for use by workloads. For example, if a workload needs an accelerator device with specific properties, this is how that request is expressed. The status stanza tracks whether this claim has been satisfied and what specific resources have been allocated.This is an alpha type and requires enabling the DynamicResourceAllocation feature gate.apiVersion: resource.k8s.io/v1kind: ResourceClaimmetadata (ObjectMeta)Standard object metadataspec (ResourceClaimSpec), requiredSpec describes what is being requested and how to configure it. The spec is immutable.status (ResourceClaimStatus)Status describes whether the claim is ready to use and what has been allocated.ResourceClaimSpecResourceClaimSpec defines what is being requested in a ResourceClaim and how to configure it.devices (DeviceClaim)Devices defines how to request devices.DeviceClaim defines how to request devices with a ResourceClaim.devices.config ([]DeviceClaimConfiguration)Atomic: will be replaced during a mergeThis field holds configuration for multiple potential drivers which could satisfy requests in this claim. It is ignored while allocating the claim.DeviceClaimConfiguration is used for configuration parameters in DeviceClaim.devices.config.opaque (OpaqueDeviceConfiguration)Opaque provides driver-specific configuration parameters.OpaqueDeviceConfiguration contains configuration parameters for a driver in a format defined by the driver vendor.devices.config.opaque.driver (string), requiredDriver is used to determine which kubelet plugin needs to be passed these configuration parameters.An admission policy provided by the driver developer could use this to decide whether it needs to validate them.Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver.devices.config.opaque.parameters (RawExtension), requiredParameters can contain arbitrary data. It is the responsibility of the driver developer to handle validation and versioning. Typically this includes self-identification and a version ("kind" + "apiVersion" for Kubernetes types), with conversion between different versions.The length of the raw data must be smaller or equal to 10 Ki.*RawExtension is used to hold extensions in external versions.To use this, make a field which has RawExtension as its type in your external, versioned struct, and Object in your internal struct. You also need to register your various plugin types.// Internal package:type MyAPIObject struct { runtime.TypeMeta `json:",inline"` MyPlugin runtime.Object `json:"myPlugin"` } type PluginA struct { AOption string `json:"aOption"` } // External package:type MyAPIObject struct { runtime.TypeMeta `json:",inline"` MyPlugin runtime.RawExtension `json:"myPlugin"` } type PluginA struct { AOpti