Question: What are the benefits of Reference?

Answer: This is the multi-page printable view of this section. Click here to print.Return to the regular view of this page.Reference1: Glossary2: API Overview2.1: Declarative API Validation2.2: Kubernetes API Concepts2.3: Server-Side Apply2.4: Client Libraries2.5: Common Expression Language in Kubernetes2.6: Kubernetes Deprecation Policy2.7: Deprecated API Migration Guide2.8: Kubernetes API health endpoints3: API Access Control3.1: Authenticating3.2: Authenticating with Bootstrap Tokens3.3: Authorization3.4: Using RBAC Authorization3.5: Using Node Authorization3.6: Webhook Mode3.7: Using ABAC Authorization3.8: Admission Control in Kubernetes3.9: Dynamic Admission Control3.10: Managing Service Accounts3.11: Certificates and Certificate Signing Requests3.12: Mapping PodSecurityPolicies to Pod Security Standards3.13: Kubelet authentication/authorization3.14: TLS bootstrapping3.15: Mutating Admission Policy3.16: Validating Admission Policy4: Well-Known Labels, Annotations and Taints4.1: Audit Annotations5: Kubernetes API5.1: Workload Resources5.1.1: Pod5.1.2: Binding5.1.3: PodTemplate5.1.4: ReplicationController5.1.5: ReplicaSet5.1.6: Deployment5.1.7: StatefulSet5.1.8: ControllerRevision5.1.9: DaemonSet5.1.10: Job5.1.11: CronJob5.1.12: HorizontalPodAutoscaler5.1.13: HorizontalPodAutoscaler5.1.14: PriorityClass5.1.15: DeviceTaintRule v1alpha35.1.16: ResourceClaim5.1.17: ResourceClaimTemplate5.1.18: ResourceSlice5.2: Service Resources5.2.1: Service5.2.2: Endpoints5.2.3: EndpointSlice5.2.4: Ingress5.2.5: IngressClass5.3: Config and Storage Resources5.3.1: ConfigMap5.3.2: Secret5.3.3: CSIDriver5.3.4: CSINode5.3.5: CSIStorageCapacity5.3.6: PersistentVolumeClaim5.3.7: PersistentVolume5.3.8: StorageClass5.3.9: StorageVersionMigration v1alpha15.3.10: Volume5.3.11: VolumeAttachment5.3.12: VolumeAttributesClass5.4: Authentication Resources5.4.1: ServiceAccount5.4.2: TokenRequest5.4.3: TokenReview5.4.4: CertificateSigningRequest5.4.5: ClusterTrustBundle v1beta15.4.6: SelfSubjectReview5.4.7: PodCertificateRequest v1alpha15.5: Authorization Resources5.5.1: LocalSubjectAccessReview5.5.2: SelfSubjectAccessReview5.5.3: SelfSubjectRulesReview5.5.4: SubjectAccessReview5.5.5: ClusterRole5.5.6: ClusterRoleBinding5.5.7: Role5.5.8: RoleBinding5.6: Policy Resources5.6.1: FlowSchema5.6.2: LimitRange5.6.3: ResourceQuota5.6.4: NetworkPolicy5.6.5: PodDisruptionBudget5.6.6: PriorityLevelConfiguration5.6.7: ValidatingAdmissionPolicy5.6.8: ValidatingAdmissionPolicyBinding5.6.9: MutatingAdmissionPolicy v1beta15.6.10: MutatingAdmissionPolicyBinding v1alpha15.7: Extend Resources5.7.1: CustomResourceDefinition5.7.2: DeviceClass5.7.3: MutatingWebhookConfiguration5.7.4: ValidatingWebhookConfiguration5.8: Cluster Resources5.8.1: APIService5.8.2: ComponentStatus5.8.3: Event5.8.4: IPAddress5.8.5: Lease5.8.6: LeaseCandidate v1beta15.8.7: Namespace5.8.8: Node5.8.9: RuntimeClass5.8.10: ServiceCIDR5.9: Common Definitions5.9.1: DeleteOptions5.9.2: LabelSelector5.9.3: ListMeta5.9.4: LocalObjectReferenc


Question: What is Reference?

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


Question: What is API Reference?

Answer: G l o s s a r y   -   a   c o m p r e h e n s i v e ,   s t a n d a r d i z e d   l i s t   o f   K u b e r n e t e s   t e r m i n o l o g y K u b e r n e t e s   A P I   R e f e r e n c e O n e - p a g e   A P I   R e f e r e n c e   f o r   K u b e r n e t e s   v 1 . 3 4 U s i n g   T h e   K u b e r n e t e s   A P I   -   o v e r v i e w   o f   t h e   A P I   f o r   K u b e r n e t e s . A P I   a c c e s s   c o n t r o l   -   d e t a i l s   o n   h o w   K u b e r n e t e s   c o n t r o l s   A P I   a c c e s s W e l l - K n o w n   L a b e l s ,   A n n o t a t i o n s   a n d   T a i n t s   G l o s s a r y   -   a   c o m p r e h e n s i v e ,   s t a n d a r d i z e d   l i s t   o f   K u b e r n e t e s   t e r m i n o l o g y   K u b e r n e t e s   A P I   R e f e r e n c e   O n e - p a g e   A P I   R e f e r e n c e   f o r   K u b e r n e t e s   v 1 . 3 4   U s i n g   T h e   K u b e r n e t e s   A P I   -   o v e r v i e w   o f   t h e   A P I   f o r   K u b e r n e t e s .   A P I   a c c e s s   c o n t r o l   -   d e t a i l s   o n   h o w   K u b e r n e t e s   c o n t r o l s   A P I   a c c e s s   W e l l - K n o w n   L a b e l s ,   A n n o t a t i o n s   a n d   T a i n t s


Question: What is Officially supported client libraries?

Answer: T o   c a l l   t h e   K u b e r n e t e s   A P I   f r o m   a   p r o g r a m m i n g   l a n g u a g e ,   y o u   c a n   u s e   c l i e n t   l i b r a r i e s .   O f f i c i a l l y   s u p p o r t e d   c l i e n t   l i b r a r i e s :   K u b e r n e t e s   G o   c l i e n t   l i b r a r y K u b e r n e t e s   P y t h o n   c l i e n t   l i b r a r y K u b e r n e t e s   J a v a   c l i e n t   l i b r a r y K u b e r n e t e s   J a v a S c r i p t   c l i e n t   l i b r a r y K u b e r n e t e s   C #   c l i e n t   l i b r a r y K u b e r n e t e s   H a s k e l l   c l i e n t   l i b r a r y


Question: What is CLI?

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


Question: What is Components?

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


Question: What is Config APIs?

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


Question: What is Config API for kubeadm?

Answer: v 1 b e t a 3 v 1 b e t a 4


Question: What is External APIs?

Answer: T h e s e   a r e   t h e   A P I s   d e f i n e d   b y   t h e   K u b e r n e t e s   p r o j e c t ,   b u t   a r e   n o t   i m p l e m e n t e d   b y   t h e   c o r e   p r o j e c t :   M e t r i c s   A P I   ( v 1 b e t a 1 ) C u s t o m   M e t r i c s   A P I   ( v 1 b e t a 2 ) E x t e r n a l   M e t r i c s   A P I   ( v 1 b e t a 1 )


Question: What is Design Docs?

Answer: A n   a r c h i v e   o f   t h e   d e s i g n   d o c s   f o r   K u b e r n e t e s   f u n c t i o n a l i t y .   G o o d   s t a r t i n g   p o i n t s   a r e   K u b e r n e t e s   A r c h i t e c t u r e   a n d   K u b e r n e t e s   D e s i g n   O v e r v i e w .


Question: What is 2 - API Overview?

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


Question: What is API versioning?

Answer: T h e   J S O N   a n d   P r o t o b u f   s e r i a l i z a t i o n   s c h e m a s   f o l l o w   t h e   s a m e   g u i d e l i n e s   f o r   s c h e m a   c h a n g e s .   T h e   f o l l o w i n g   d e s c r i p t i o n s   c o v e r   b o t h   f o r m a t s .   T h e   A P I   v e r s i o n i n g   a n d   s o f t w a r e   v e r s i o n i n g   a r e   i n d i r e c t l y   r e l a t e d .   T h e   A P I   a n d   r e l e a s e   v e r s i o n i n g   p r o p o s a l   d e s c r i b e s   t h e   r e l a t i o n s h i p   b e t w e e n   A P I   v e r s i o n i n g   a n d   s o f t w a r e   v e r s i o n i n g .   D i f f e r e n t   A P I   v e r s i o n s   i n d i c a t e   d i f f e r e n t   l e v e l s   o f   s t a b i l i t y   a n d   s u p p o r t .   Y o u   c a n   f i n d   m o r e   i n f o r m a t i o n   a b o u t   t h e   c r i t e r i a   f o r   e a c h   l e v e l   i n   t h e   A P I   C h a n g e s   d o c u m e n t a t i o n .   H e r e ' s   a   s u m m a r y   o f   e a c h   l e v e l :   A l p h a : T h e   v e r s i o n   n a m e s   c o n t a i n   a l p h a   ( f o r   e x a m p l e ,   v 1 a l p h a 1 ) . B u i l t - i n   a l p h a   A P I   v e r s i o n s   a r e   d i s a b l e d   b y   d e f a u l t   a n d   m u s t   b e   e x p l i c i t l y   e n a b l e d   i n   t h e   k u b e - a p i s e r v e r   c o n f i g u r a t i o n   t o   b e   u s e d . T h e   s o f t w a r e   m a y   c o n t a i n   b u g s .   E n a b l i n g   a   f e a t u r e   m a y   e x p o s e   b u g s . S u p p o r t   f o r   a n   a l p h a   A P I   m a y   b e   d r o p p e d   a t   a n y   t i m e   w i t h o u t   n o t i c e . T h e   A P I   m a y   c h a n g e   i n   i n c o m p a t i b l e   w a y s   i n   a   l a t e r   s o f t w a r e   r e l e a s e   w i t h o u t   n o t i c e . T h e   s o f t w a r e   i s   r e c o m m e n d e d   f o r   u s e   o n l y   i n   s h o r t - l i v e d   t e s t i n g   c l u


Question: What is Note:?

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


Question: What is API groups?

Answer: A P I   g r o u p s   m a k e   i t   e a s i e r   t o   e x t e n d   t h e   K u b e r n e t e s   A P I .   T h e   A P I   g r o u p   i s   s p e c i f i e d   i n   a   R E S T   p a t h   a n d   i n   t h e   a p i V e r s i o n   f i e l d   o f   a   s e r i a l i z e d   o b j e c t .   T h e r e   a r e   s e v e r a l   A P I   g r o u p s   i n   K u b e r n e t e s :   T h e   c o r e   ( a l s o   c a l l e d   l e g a c y )   g r o u p   i s   f o u n d   a t   R E S T   p a t h   / a p i / v 1 .   T h e   c o r e   g r o u p   i s   n o t   s p e c i f i e d   a s   p a r t   o f   t h e   a p i V e r s i o n   f i e l d ,   f o r   e x a m p l e ,   a p i V e r s i o n :   v 1 . T h e   n a m e d   g r o u p s   a r e   a t   R E S T   p a t h   / a p i s / $ G R O U P _ N A M E / $ V E R S I O N   a n d   u s e   a p i V e r s i o n :   $ G R O U P _ N A M E / $ V E R S I O N   ( f o r   e x a m p l e ,   a p i V e r s i o n :   b a t c h / v 1 ) .   Y o u   c a n   f i n d   t h e   f u l l   l i s t   o f   s u p p o r t e d   A P I   g r o u p s   i n   K u b e r n e t e s   A P I   r e f e r e n c e .


Question: What is Enabling or disabling API groups?

Answer: C e r t a i n   r e s o u r c e s   a n d   A P I   g r o u p s   a r e   e n a b l e d   b y   d e f a u l t .   Y o u   c a n   e n a b l e   o r   d i s a b l e   t h e m   b y   s e t t i n g   - - r u n t i m e - c o n f i g   o n   t h e   A P I   s e r v e r .   T h e   - - r u n t i m e - c o n f i g   f l a g   a c c e p t s   c o m m a   s e p a r a t e d   < k e y > [ = < v a l u e > ]   p a i r s   d e s c r i b i n g   t h e   r u n t i m e   c o n f i g u r a t i o n   o f   t h e   A P I   s e r v e r .   I f   t h e   = < v a l u e >   p a r t   i s   o m i t t e d ,   i t   i s   t r e a t e d   a s   i f   = t r u e   i s   s p e c i f i e d .   F o r   e x a m p l e :   t o   d i s a b l e   b a t c h / v 1 ,   s e t   - - r u n t i m e - c o n f i g = b a t c h / v 1 = f a l s e t o   e n a b l e   b a t c h / v 2 a l p h a 1 ,   s e t   - - r u n t i m e - c o n f i g = b a t c h / v 2 a l p h a 1 t o   e n a b l e   a   s p e c i f i c   v e r s i o n   o f   a n   A P I ,   s u c h   a s   s t o r a g e . k 8 s . i o / v 1 b e t a 1 / c s i s t o r a g e c a p a c i t i e s ,   s e t   - - r u n t i m e - c o n f i g = s t o r a g e . k 8 s . i o / v 1 b e t a 1 / c s i s t o r a g e c a p a c i t i e s


Question: What is Persistence?

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


Question: What is What's next?

Answer: L e a r n   m o r e   a b o u t   A P I   c o n v e n t i o n s R e a d   t h e   d e s i g n   d o c u m e n t a t i o n   f o r   a g g r e g a t o r L e a r n   a b o u t   D e c l a r a t i v e   A P I   V a l i d a t i o n .


Question: What is 2.1 - Declarative API Validation?

Answer: K u b e r n e t e s   1 . 3 4   i n c l u d e s   o p t i o n a l   d e c l a r a t i v e   v a l i d a t i o n   f o r   A P I s .   W h e n   e n a b l e d ,   t h e   K u b e r n e t e s   A P I   s e r v e r   c a n   u s e   t h i s   m e c h a n i s m   r a t h e r   t h a n   t h e   l e g a c y   a p p r o a c h   t h a t   r e l i e s   o n   h a n d - w r i t t e n   G o   c o d e   ( v a l i d a t i o n . g o   f i l e s )   t o   e n s u r e   t h a t   r e q u e s t s   a g a i n s t   t h e   A P I   a r e   v a l i d .   K u b e r n e t e s   d e v e l o p e r s ,   a n d   p e o p l e   e x t e n d i n g   t h e   K u b e r n e t e s   A P I ,   c a n   d e f i n e   v a l i d a t i o n   r u l e s   d i r e c t l y   a l o n g s i d e   t h e   A P I   t y p e   d e f i n i t i o n s   ( t y p e s . g o   f i l e s ) .   C o d e   a u t h o r s   d e f i n e   p e c i a l   c o m m e n t   t a g s   ( e . g . ,   + k 8 s : m i n i m u m = 0 ) .   A   c o d e   g e n e r a t o r   ( v a l i d a t i o n - g e n )   t h e n   u s e s   t h e s e   t a g s   t o   p r o d u c e   o p t i m i z e d   G o   c o d e   f o r   A P I   v a l i d a t i o n .   W h i l e   p r i m a r i l y   a   f e a t u r e   i m p a c t i n g   K u b e r n e t e s   c o n t r i b u t o r s   a n d   p o t e n t i a l l y   d e v e l o p e r s   o f   e x t e n s i o n   A P I   s e r v e r s ,   c l u s t e r   a d m i n i s t r a t o r s   s h o u l d   u n d e r s t a n d   i t s   b e h a v i o r ,   e s p e c i a l l y   d u r i n g   i t s   r o l l o u t   p h a s e s .   D e c l a r a t i v e   v a l i d a t i o n   i s   b e i n g   r o l l e d   o u t   g r a d u a l l y .   I n   K u b e r n e t e s   1 . 3 4 ,   t h e   A P I s   t h a t   u s e   d e c l a r a t i v e   v a l i d a t i o n   i n c l u d e :   R e p l i c a t i o n C o n t r o l l e r


Question: What is Note:?

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


Question: What is Disabling declarative validation?

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


Question: What is Considerations for downgrade and rollback?

Answer: D i s a b l i n g   t h e   f e a t u r e   a c t s   a s   a   s a f e t y   m e c h a n i s m .   H o w e v e r ,   b e   a w a r e   o f   a   p o t e n t i a l   e d g e   c a s e   ( c o n s i d e r e d   u n l i k e l y   d u e   t o   e x t e n s i v e   t e s t i n g ) :   I f   a   b u g   i n   d e c l a r a t i v e   v a l i d a t i o n   ( w h e n   D e c l a r a t i v e V a l i d a t i o n T a k e o v e r = t r u e )   i n c o r r e c t l y   a l l o w e d   a n   i n v a l i d   o b j e c t   t o   b e   p e r s i s t e d ,   d i s a b l i n g   t h e   f e a t u r e   g a t e s   m i g h t   t h e n   c a u s e   s u b s e q u e n t   u p d a t e s   t o   t h a t   s p e c i f i c   o b j e c t   t o   b e   b l o c k e d   b y   t h e   n o w - a u t h o r i t a t i v e   ( a n d   c o r r e c t )   h a n d - w r i t t e n   v a l i d a t i o n .   R e s o l v i n g   t h i s   m i g h t   r e q u i r e   m a n u a l   c o r r e c t i o n   o f   t h e   s t o r e d   o b j e c t ,   p o t e n t i a l l y   v i a   d i r e c t   e t c d   m o d i f i c a t i o n   i n   r a r e   c a s e s .   F o r   d e t a i l s   o n   m a n a g i n g   f e a t u r e   g a t e s ,   s e e   F e a t u r e   G a t e s .


Question: What is Declarative validation tag reference?

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


Question: What is +k8s:eachKey?

Answer: D e s c r i p t i o n :   D e c l a r e s   a   v a l i d a t i o n   f o r   e a c h   k e y   i n   a   m a p .   P a y l o a d :   < v a l i d a t i o n - t a g > :   T h e   t a g   t o   e v a l u a t e   f o r   e a c h   k e y .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : e a c h K e y = + k 8 s : m i n i m u m = 1   M y M a p   m a p [ i n t ] s t r i n g   ` j s o n : " m y M a p " `   }   I n   t h i s   e x a m p l e ,   e a c h K e y   i s   u s e d   t o   s p e c i f y   t h a t   t h e   + k 8 s : m i n i m u m   t a g   s h o u l d   b e   a p p l i e d   t o   e a c h   i n t   k e y   i n   M y M a p .   T h i s   m e a n s   t h a t   a l l   k e y s   i n   t h e   m a p   m u s t   b e   > =   1 .


Question: What is +k8s:eachVal?

Answer: D e s c r i p t i o n :   D e c l a r e s   a   v a l i d a t i o n   f o r   e a c h   v a l u e   i n   a   m a p   o r   l i s t .   P a y l o a d :   < v a l i d a t i o n - t a g > :   T h e   t a g   t o   e v a l u a t e   f o r   e a c h   v a l u e .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : e a c h V a l = + k 8 s : m i n i m u m = 1   M y M a p   m a p [ s t r i n g ] i n t   ` j s o n : " m y M a p " `   }   I n   t h i s   e x a m p l e ,   e a c h V a l   i s   u s e d   t o   s p e c i f y   t h a t   t h e   + k 8 s : m i n i m u m   t a g   s h o u l d   b e   a p p l i e d   t o   e a c h   e l e m e n t   i n   M y L i s t .   T h i s   m e a n s   t h a t   a l l   f i e l d s   i n   M y S t r u c t   m u s t   b e   > =   1 .


Question: What is +k8s:enum?

Answer: D e s c r i p t i o n :   I n d i c a t e s   t h a t   a   s t r i n g   t y p e   i s   a n   e n u m .   A l l   c o n s t   v a l u e s   o f   t h i s   t y p e   a r e   c o n s i d e r e d   v a l u e s   i n   t h e   e n u m .   U s a g e   E x a m p l e :   F i r s t ,   d e f i n e   a   n e w   s t r i n g   t y p e   a n d   s o m e   c o n s t a n t s   o f   t h a t   t y p e :   / /   + k 8 s : e n u m   t y p e   M y E n u m   s t r i n g   c o n s t   (   M y E n u m A   M y E n u m   =   " A "   M y E n u m B   M y E n u m   =   " B "   )   T h e n ,   u s e   t h i s   t y p e   i n   a n o t h e r   s t r u c t :   t y p e   M y S t r u c t   s t r u c t   {   M y F i e l d   M y E n u m   ` j s o n : " m y F i e l d " `   }   T h e   v a l i d a t i o n   l o g i c   w i l l   e n s u r e   t h a t   M y F i e l d   i s   o n e   o f   t h e   d e f i n e d   e n u m   v a l u e s   ( " A "   o r   " B " ) .


Question: What is +k8s:forbidden?

Answer: D e s c r i p t i o n :   I n d i c a t e s   t h a t   a   f i e l d   m a y   n o t   b e   s p e c i f i e d .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : f o r b i d d e n   M y F i e l d   s t r i n g   ` j s o n : " m y F i e l d " `   }   I n   t h i s   e x a m p l e ,   M y F i e l d   c a n n o t   b e   p r o v i d e d   ( i t   i s   f o r b i d d e n )   w h e n   c r e a t i n g   o r   u p d a t i n g   M y S t r u c t .


Question: What is +k8s:format?

Answer: D e s c r i p t i o n :   I n d i c a t e s   t h a t   a   s t r i n g   f i e l d   h a s   a   p a r t i c u l a r   f o r m a t .   P a y l o a d s :   k 8 s - i p :   T h i s   f i e l d   h o l d s   a n   I P v 4   o r   I P v 6   a d d r e s s   v a l u e .   I P v 4   o c t e t s   m a y   h a v e   l e a d i n g   z e r o s . k 8 s - l o n g - n a m e :   T h i s   f i e l d   h o l d s   a   K u b e r n e t e s   " l o n g   n a m e " ,   a k a   a   " D N S   s u b d o m a i n "   v a l u e . k 8 s - s h o r t - n a m e :   T h i s   f i e l d   h o l d s   a   K u b e r n e t e s   " s h o r t   n a m e " ,   a k a   a   " D N S   l a b e l "   v a l u e .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : f o r m a t = k 8 s - i p   I P A d d r e s s   s t r i n g   ` j s o n : " i p A d d r e s s " `   / /   + k 8 s : f o r m a t = k 8 s - l o n g - n a m e   S u b d o m a i n   s t r i n g   ` j s o n : " s u b d o m a i n " `   / /   + k 8 s : f o r m a t = k 8 s - s h o r t - n a m e   L a b e l   s t r i n g   ` j s o n : " l a b e l " `   }   I n   t h i s   e x a m p l e :   I P A d d r e s s   m u s t   b e   a   v a l i d   I P   a d d r e s s . S u b d o m a i n   m u s t   b e   a   v a l i d   D N S   s u b d o m a i n . L a b e l   m u s t   b e   a   v a l i d   D N S   l a b e l .


Question: What is +k8s:ifDisabled?

Answer: D e s c r i p t i o n :   D e c l a r e s   a   v a l i d a t i o n   t h a t   o n l y   a p p l i e s   w h e n   a n   o p t i o n   i s   d i s a b l e d .   A r g u m e n t s :   < o p t i o n >   ( s t r i n g ,   r e q u i r e d ) :   T h e   n a m e   o f   t h e   o p t i o n .   P a y l o a d :   < v a l i d a t i o n - t a g > :   T h i s   v a l i d a t i o n   t a g   w i l l   b e   e v a l u a t e d   o n l y   i f   t h e   v a l i d a t i o n   o p t i o n   i s   d i s a b l e d .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : i f D i s a b l e d ( " m y - f e a t u r e " ) = + k 8 s : r e q u i r e d   M y F i e l d   s t r i n g   ` j s o n : " m y F i e l d " `   }   I n   t h i s   e x a m p l e ,   M y F i e l d   i s   r e q u i r e d   o n l y   i f   t h e   " m y - f e a t u r e "   o p t i o n   i s   d i s a b l e d .


Question: What is +k8s:ifEnabled?

Answer: D e s c r i p t i o n :   D e c l a r e s   a   v a l i d a t i o n   t h a t   o n l y   a p p l i e s   w h e n   a n   o p t i o n   i s   e n a b l e d .   A r g u m e n t s :   < o p t i o n >   ( s t r i n g ,   r e q u i r e d ) :   T h e   n a m e   o f   t h e   o p t i o n .   P a y l o a d :   < v a l i d a t i o n - t a g > :   T h i s   v a l i d a t i o n   t a g   w i l l   b e   e v a l u a t e d   o n l y   i f   t h e   v a l i d a t i o n   o p t i o n   i s   e n a b l e d .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : i f E n a b l e d ( " m y - f e a t u r e " ) = + k 8 s : r e q u i r e d   M y F i e l d   s t r i n g   ` j s o n : " m y F i e l d " `   }   I n   t h i s   e x a m p l e ,   M y F i e l d   i s   r e q u i r e d   o n l y   i f   t h e   " m y - f e a t u r e "   o p t i o n   i s   e n a b l e d .


Question: What is +k8s:isSubresource?

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


Question: What is +k8s:item?

Answer: D e s c r i p t i o n :   D e c l a r e s   a   v a l i d a t i o n   f o r   a n   i t e m   o f   a   s l i c e   d e c l a r e d   a s   a   + k 8 s : l i s t T y p e = m a p .   T h e   i t e m   t o   m a t c h   i s   d e c l a r e d   b y   p r o v i d i n g   f i e l d - v a l u e   p a i r   a r g u m e n t s   w h e r e   t h e   f i e l d   i s   a   l i s t M a p K e y .   A l l   l i s t M a p K e y   k e y   f i e l d s   m u s t   b e   s p e c i f i e d .   U s a g e :   + k 8 s : i t e m ( < l i s t M a p K e y - J S O N - f i e l d - n a m e > :   < v a l u e > , . . . ) = < v a l i d a t i o n - t a g >   + k 8 s : i t e m ( s t r i n g K e y :   " v a l u e " ,   i n t K e y :   4 2 ,   b o o l K e y :   t r u e ) = < v a l i d a t i o n - t a g >   A r g u m e n t s   m u s t   b e   n a m e d   w i t h   t h e   J S O N   n a m e s   o f   t h e   l i s t - m a p   k e y   f i e l d s .   V a l u e s   c a n   b e   s t r i n g s ,   i n t e g e r s ,   o r   b o o l e a n s .   P a y l o a d :   < v a l i d a t i o n - t a g > :   T h e   t a g   t o   e v a l u a t e   f o r   t h e   m a t c h i n g   l i s t   i t e m .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : l i s t T y p e = m a p   / /   + k 8 s : l i s t M a p K e y = t y p e   / /   + k 8 s : i t e m ( t y p e :   " A p p r o v e d " ) = + k 8 s : z e r o O r O n e O f M e m b e r   / /   + k 8 s : i t e m ( t y p e :   " D e n i e d " ) = + k 8 s : z e r o O r O n e O f M e m b e r   M y C o n d i t i o n s   [ ] M y C o n d i t i o n   ` j s o n : " c o n d i t i o n s " `   }   t y p e   M y C o n d i t i o n   s t r u c t   {   T y p e   s t r i n g   ` j s o n : " t y p e " `   S t a t u s   s t r i n g   ` j s o n : " s t a t u s " `   }   I n   t h i s   e x a m p l e :   T h e   c o n d i t i o n   w i t h   t y p e   " A p p r o v e d "   i s   p a r t   o f   a   z e r o - o r - o n e - o f   g r o u p . T h e   c o n d i


Question: What is +k8s:listMapKey?

Answer: D e s c r i p t i o n :   D e c l a r e s   a   n a m e d   s u b - f i e l d   o f   a   l i s t ' s   v a l u e - t y p e   t o   b e   p a r t   o f   t h e   l i s t - m a p   k e y .   T h i s   t a g   i s   r e q u i r e d   w h e n   + k 8 s : l i s t T y p e = m a p   i s   u s e d .   M u l t i p l e   + k 8 s : l i s t M a p K e y   t a g s   c a n   b e   u s e d   o n   a   l i s t - m a p   t o   s p e c i f y   t h a t   i t   i s   k e y e d   o f f   o f   m u l t i p l e   f i e l d s .   P a y l o a d :   < f i e l d - j s o n - n a m e > :   T h e   J S O N   n a m e   o f   t h e   f i e l d   t o   b e   u s e d   a s   t h e   k e y .   U s a g e   E x a m p l e :   / /   + k 8 s : l i s t T y p e = m a p   / /   + k 8 s : l i s t M a p K e y = k e y F i e l d O n e   / /   + k 8 s : l i s t M a p K e y = k e y F i e l d T w o   t y p e   M y L i s t   [ ] M y S t r u c t   t y p e   M y S t r u c t   s t r u c t   {   k e y F i e l d O n e   s t r i n g   ` j s o n : " k e y F i e l d O n e " `   k e y F i e l d T w o   s t r i n g   ` j s o n : " k e y F i e l d T w o " `   v a l u e F i e l d   s t r i n g   ` j s o n : " v a l u e F i e l d " `   }   I n   t h i s   e x a m p l e ,   l i s t M a p K e y   i s   u s e d   t o   s p e c i f y   t h a t   t h e   k e y F i e l d   o f   M y S t r u c t   s h o u l d   b e   u s e d   a s   t h e   k e y   f o r   t h e   l i s t - m a p .


Question: What is +k8s:listType?

Answer: D e s c r i p t i o n :   D e c l a r e s   a   l i s t   f i e l d ' s   s e m a n t i c   t y p e .   T h i s   t a g   i s   u s e d   t o   s p e c i f y   h o w   a   l i s t   s h o u l d   b e   t r e a t e d ,   f o r   e x a m p l e ,   a s   a   m a p   o r   a   s e t .   P a y l o a d :   a t o m i c :   T h e   l i s t   i s   t r e a t e d   a s   a   s i n g l e   a t o m i c   v a l u e . m a p :   T h e   l i s t   i s   t r e a t e d   a s   a   m a p ,   w h e r e   e a c h   e l e m e n t   h a s   a   u n i q u e   k e y .   R e q u i r e s   t h e   u s e   o f   + k 8 s : l i s t M a p K e y . s e t :   T h e   l i s t   i s   t r e a t e d   a s   a   s e t ,   w h e r e   e a c h   e l e m e n t   i s   u n i q u e .   U s a g e   E x a m p l e :   / /   + k 8 s : l i s t T y p e = m a p   / /   + k 8 s : l i s t M a p K e y = k e y F i e l d   t y p e   M y L i s t   [ ] M y S t r u c t   t y p e   M y S t r u c t   s t r u c t   {   k e y F i e l d   s t r i n g   ` j s o n : " k e y F i e l d " `   v a l u e F i e l d   s t r i n g   ` j s o n : " v a l u e F i e l d " `   }   I n   t h i s   e x a m p l e ,   M y L i s t   i s   d e c l a r e d   a s   a   l i s t   o f   t y p e   m a p ,   w i t h   k e y F i e l d   a s   t h e   k e y .   T h i s   m e a n s   t h a t   t h e   v a l i d a t i o n   l o g i c   w i l l   e n s u r e   t h a t   e a c h   e l e m e n t   i n   t h e   l i s t   h a s   a   u n i q u e   k e y F i e l d .


Question: What is +k8s:maxItems?

Answer: D e s c r i p t i o n :   I n d i c a t e s   t h a t   a   l i s t   f i e l d   h a s   a   l i m i t   o n   i t s   s i z e .   P a y l o a d :   < n o n - n e g a t i v e   i n t e g e r > :   T h i s   f i e l d   m u s t   b e   n o   m o r e   t h a n   X   i t e m s   l o n g .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : m a x I t e m s = 5   M y L i s t   [ ] s t r i n g   ` j s o n : " m y L i s t " `   }   I n   t h i s   e x a m p l e ,   M y L i s t   c a n n o t   c o n t a i n   m o r e   t h a n   5   i t e m s .


Question: What is +k8s:maxLength?

Answer: D e s c r i p t i o n :   I n d i c a t e s   t h a t   a   s t r i n g   f i e l d   h a s   a   l i m i t   o n   i t s   l e n g t h .   P a y l o a d :   < n o n - n e g a t i v e   i n t e g e r > :   T h i s   f i e l d   m u s t   b e   n o   m o r e   t h a n   X   c h a r a c t e r s   l o n g .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : m a x L e n g t h = 1 0   M y S t r i n g   s t r i n g   ` j s o n : " m y S t r i n g " `   }   I n   t h i s   e x a m p l e ,   M y S t r i n g   c a n n o t   b e   l o n g e r   t h a n   1 0   c h a r a c t e r s .


Question: What is +k8s:minimum?

Answer: D e s c r i p t i o n :   I n d i c a t e s   t h a t   a   n u m e r i c   f i e l d   h a s   a   m i n i m u m   v a l u e .   P a y l o a d :   < i n t e g e r > :   T h i s   f i e l d   m u s t   b e   g r e a t e r   t h a n   o r   e q u a l   t o   x .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : m i n i m u m = 0   M y I n t   i n t   ` j s o n : " m y I n t " `   }   I n   t h i s   e x a m p l e ,   M y I n t   m u s t   b e   g r e a t e r   t h a n   o r   e q u a l   t o   0 .


Question: What is +k8s:neq?

Answer: D e s c r i p t i o n :   V e r i f i e s   t h e   f i e l d ' s   v a l u e   i s   n o t   e q u a l   t o   a   s p e c i f i c   d i s a l l o w e d   v a l u e .   S u p p o r t s   s t r i n g ,   i n t e g e r ,   a n d   b o o l e a n   t y p e s .   P a y l o a d :   < v a l u e > :   T h e   d i s a l l o w e d   v a l u e .   T h e   p a r s e r   w i l l   i n f e r   t h e   t y p e   ( s t r i n g ,   i n t ,   b o o l ) .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : n e q = " d i s a l l o w e d "   M y S t r i n g   s t r i n g   ` j s o n : " m y S t r i n g " `   / /   + k 8 s : n e q = 0   M y I n t   i n t   ` j s o n : " m y I n t " `   / /   + k 8 s : n e q = t r u e   M y B o o l   b o o l   ` j s o n : " m y B o o l " `   }   I n   t h i s   e x a m p l e :   M y S t r i n g   c a n n o t   b e   e q u a l   t o   " d i s a l l o w e d " . M y I n t   c a n n o t   b e   e q u a l   t o   0 . M y B o o l   c a n n o t   b e   e q u a l   t o   t r u e .


Question: What is +k8s:opaqueType?

Answer: D e s c r i p t i o n :   I n d i c a t e s   t h a t   a n y   v a l i d a t i o n s   d e c l a r e d   o n   t h e   r e f e r e n c e d   t y p e   w i l l   b e   i g n o r e d .   I f   a   r e f e r e n c e d   t y p e ' s   p a c k a g e   i s   n o t   i n c l u d e d   i n   t h e   g e n e r a t o r ' s   c u r r e n t   f l a g s ,   t h i s   t a g   m u s t   b e   s e t ,   o r   c o d e   g e n e r a t i o n   w i l l   f a i l   ( p r e v e n t i n g   s i l e n t   m i s t a k e s ) .   I f   t h e   v a l i d a t i o n s   s h o u l d   n o t   b e   i g n o r e d ,   a d d   t h e   t y p e ' s   p a c k a g e   t o   t h e   g e n e r a t o r   u s i n g   t h e   - - r e a d o n l y - p k g   f l a g .   U s a g e   E x a m p l e :   i m p o r t   " s o m e / e x t e r n a l / p a c k a g e "   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : o p a q u e T y p e   E x t e r n a l F i e l d   p a c k a g e . E x t e r n a l T y p e   ` j s o n : " e x t e r n a l F i e l d " `   }   I n   t h i s   e x a m p l e ,   a n y   v a l i d a t i o n   t a g s   o n   p a c k a g e . E x t e r n a l T y p e   w i l l   b e   i g n o r e d .


Question: What is +k8s:optional?

Answer: D e s c r i p t i o n :   I n d i c a t e s   t h a t   a   f i e l d   i s   o p t i o n a l   t o   c l i e n t s .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : o p t i o n a l   M y F i e l d   s t r i n g   ` j s o n : " m y F i e l d " `   }   I n   t h i s   e x a m p l e ,   M y F i e l d   i s   n o t   r e q u i r e d   t o   b e   p r o v i d e d   w h e n   c r e a t i n g   o r   u p d a t i n g   M y S t r u c t .


Question: What is +k8s:required?

Answer: D e s c r i p t i o n :   I n d i c a t e s   t h a t   a   f i e l d   m u s t   b e   s p e c i f i e d   b y   c l i e n t s .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : r e q u i r e d   M y F i e l d   s t r i n g   ` j s o n : " m y F i e l d " `   }   I n   t h i s   e x a m p l e ,   M y F i e l d   m u s t   b e   p r o v i d e d   w h e n   c r e a t i n g   o r   u p d a t i n g   M y S t r u c t .


Question: What is +k8s:subfield?

Answer: D e s c r i p t i o n :   D e c l a r e s   a   v a l i d a t i o n   f o r   a   s u b f i e l d   o f   a   s t r u c t .   A r g u m e n t s :   < f i e l d - j s o n - n a m e >   ( s t r i n g ,   r e q u i r e d ) :   T h e   J S O N   n a m e   o f   t h e   s u b f i e l d .   P a y l o a d :   < v a l i d a t i o n - t a g > :   T h e   t a g   t o   e v a l u a t e   f o r   t h e   s u b f i e l d .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : s u b f i e l d ( " m y S u b f i e l d " ) = + k 8 s : r e q u i r e d   M y S t r u c t   M y S t r u c t   ` j s o n : " M y S t r u c t " `   }   t y p e   M y S t r u c t   s t r u c t   {   M y S u b f i e l d   s t r i n g   ` j s o n : " m y S u b f i e l d " `   }   I n   t h i s   e x a m p l e ,   M y S u b f i e l d   w i t h i n   M y S t r u c t   i s   r e q u i r e d .


Question: What is +k8s:supportsSubresource?

Answer: D e s c r i p t i o n :   T h e   + k 8 s : s u p p o r t s S u b r e s o u r c e   t a g   i s   a   p a c k a g e - l e v e l   c o m m e n t   t a g   t h a t   d e c l a r e s   w h i c h   s u b r e s o u r c e s   a r e   v a l i d   t a r g e t s   f o r   v a l i d a t i o n   f o r   t h e   t y p e s   w i t h i n   t h a t   p a c k a g e .   T h i n k   o f   t h i s   t a g   a s   r e g i s t e r i n g   a n   e n d p o i n t ;   i t   t e l l s   t h e   v a l i d a t i o n   f r a m e w o r k   t h a t   a   s p e c i f i c   s u b r e s o u r c e   p a t h   i s   r e c o g n i z e d   a n d   s h o u l d   n o t   b e   i m m e d i a t e l y   r e j e c t e d .   W h e n   t h e   v a l i d a t i o n   c o d e   i s   g e n e r a t e d ,   t h i s   t a g   a d d s   t h e   s p e c i f i e d   s u b r e s o u r c e   p a t h   t o   t h e   m a i n   d i s p a t c h   f u n c t i o n   f o r   a   t y p e .   T h i s   a l l o w s   i n c o m i n g   r e q u e s t s   f o r   t h a t   s u b r e s o u r c e   t o   b e   r o u t e d   t o   a   v a l i d a t i o n   i m p l e m e n t a t i o n .   M u l t i p l e   t a g s   c a n   b e   u s e d   t o   d e c l a r e   s u p p o r t   f o r   s e v e r a l   s u b r e s o u r c e s .   I f   n o   + k 8 s : s u p p o r t s S u b r e s o u r c e   t a g s   a r e   p r e s e n t   i n   a   p a c k a g e ,   v a l i d a t i o n   i s   o n l y   e n a b l e d   f o r   t h e   r o o t   r e s o u r c e   ( e . g . ,   . . . / m y r e s o u r c e s / m y o b j e c t ) ,   a n d   a n y   r e q u e s t s   t o   s u b r e s o u r c e s   w i l l   f a i l   w i t h   a   " n o   v a l i d a t i o n   f o u n d "   e r r o r .   S t a n d a l o n e   U s a g e :   I f   y o u   u s e   + k 8 s : s u p p o r t s S u b r e s o u r c e   w i t h o u t   a   c o r r e s p o n d i n g   + k 8 s : i s S u b r e s o u r c e   t a g   f o r   a   s p e c i f i c   v a l i d a t i o n ,   t h e   v a l i d a


Question: What is +k8s:unionDiscriminator?

Answer: D e s c r i p t i o n :   I n d i c a t e s   t h a t   t h i s   f i e l d   i s   t h e   d i s c r i m i n a t o r   f o r   a   u n i o n .   A r g u m e n t s :   u n i o n   ( s t r i n g ,   o p t i o n a l ) :   T h e   n a m e   o f   t h e   u n i o n ,   i f   m o r e   t h a n   o n e   e x i s t s .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   T y p e M e t a   i n t   / /   + k 8 s : u n i o n D i s c r i m i n a t o r   D   D   ` j s o n : " d " `   / /   + k 8 s : u n i o n M e m b e r   / /   + k 8 s : o p t i o n a l   M 1   * M 1   ` j s o n : " m 1 " `   / /   + k 8 s : u n i o n M e m b e r   / /   + k 8 s : o p t i o n a l   M 2   * M 2   ` j s o n : " m 2 " `   }   t y p e   D   s t r i n g   c o n s t   (   D M 1   D   =   " M 1 "   D M 2   D   =   " M 2 "   )   t y p e   M 1   s t r u c t { }   t y p e   M 2   s t r u c t { }   I n   t h i s   e x a m p l e ,   t h e   T y p e   f i e l d   i s   t h e   d i s c r i m i n a t o r   f o r   t h e   u n i o n .   T h e   v a l u e   o f   T y p e   w i l l   d e t e r m i n e   w h i c h   o f   t h e   u n i o n   m e m b e r s   ( M 1   o r   M 2 )   i s   e x p e c t e d   t o   b e   p r e s e n t .


Question: What is +k8s:unionMember?

Answer: D e s c r i p t i o n :   I n d i c a t e s   t h a t   t h i s   f i e l d   i s   a   m e m b e r   o f   a   u n i o n .   A r g u m e n t s :   u n i o n   ( s t r i n g ,   o p t i o n a l ) :   T h e   n a m e   o f   t h e   u n i o n ,   i f   m o r e   t h a n   o n e   e x i s t s . m e m b e r N a m e   ( s t r i n g ,   o p t i o n a l ) :   T h e   d i s c r i m i n a t o r   v a l u e   f o r   t h i s   m e m b e r .   D e f a u l t s   t o   t h e   f i e l d ' s   n a m e .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : u n i o n M e m b e r ( u n i o n :   " u n i o n 1 " )   / /   + k 8 s : o p t i o n a l   M 1   * M 1   ` j s o n : " u 1 m 1 " `   / /   + k 8 s : u n i o n M e m b e r ( u n i o n :   " u n i o n 1 " )   / /   + k 8 s : o p t i o n a l   M 2   * M 2   ` j s o n : " u 1 m 2 " `   }   t y p e   M 1   s t r u c t { }   t y p e   M 2   s t r u c t { }   I n   t h i s   e x a m p l e ,   M 1   a n d   M 2   a r e   m e m b e r s   o f   t h e   n a m e d   u n i o n   u n i o n 1 .


Question: What is +k8s:zeroOrOneOfMember?

Answer: D e s c r i p t i o n :   I n d i c a t e s   t h a t   t h i s   f i e l d   i s   a   m e m b e r   o f   a   z e r o - o r - o n e - o f   u n i o n .   A   z e r o - o r - o n e - o f   u n i o n   a l l o w s   a t   m o s t   o n e   m e m b e r   t o   b e   s e t .   U n l i k e   r e g u l a r   u n i o n s ,   h a v i n g   n o   m e m b e r s   s e t   i s   v a l i d .   A r g u m e n t s :   u n i o n   ( s t r i n g ,   o p t i o n a l ) :   T h e   n a m e   o f   t h e   u n i o n ,   i f   m o r e   t h a n   o n e   e x i s t s . m e m b e r N a m e   ( s t r i n g ,   o p t i o n a l ) :   T h e   c u s t o m   m e m b e r   n a m e   f o r   t h i s   m e m b e r .   D e f a u l t s   t o   t h e   f i e l d ' s   n a m e .   U s a g e   E x a m p l e :   t y p e   M y S t r u c t   s t r u c t   {   / /   + k 8 s : z e r o O r O n e O f M e m b e r   / /   + k 8 s : o p t i o n a l   M 1   * M 1   ` j s o n : " m 1 " `   / /   + k 8 s : z e r o O r O n e O f M e m b e r   / /   + k 8 s : o p t i o n a l   M 2   * M 2   ` j s o n : " m 2 " `   }   t y p e   M 1   s t r u c t { }   t y p e   M 2   s t r u c t { }   I n   t h i s   e x a m p l e ,   a t   m o s t   o n e   o f   A   o r   B   c a n   b e   s e t .   I t   i s   a l s o   v a l i d   f o r   n e i t h e r   t o   b e   s e t .


Question: What is 2.2 - Kubernetes API Concepts?

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


Question: What is Kubernetes API terminology?

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


Question: What is Object names?

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


Question: What is API verbs?

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


Question: What is Resource URIs?

Answer: A l l   r e s o u r c e   t y p e s   a r e   e i t h e r   s c o p e d   b y   t h e   c l u s t e r   ( / a p i s / G R O U P / V E R S I O N / * )   o r   t o   a   n a m e s p a c e   ( / a p i s / G R O U P / V E R S I O N / n a m e s p a c e s / N A M E S P A C E / * ) .   A   n a m e s p a c e - s c o p e d   r e s o u r c e   t y p e   w i l l   b e   d e l e t e d   w h e n   i t s   n a m e s p a c e   i s   d e l e t e d   a n d   a c c e s s   t o   t h a t   r e s o u r c e   t y p e   i s   c o n t r o l l e d   b y   a u t h o r i z a t i o n   c h e c k s   o n   t h e   n a m e s p a c e   s c o p e .   N o t e :   c o r e   r e s o u r c e s   u s e   / a p i   i n s t e a d   o f   / a p i s   a n d   o m i t   t h e   G R O U P   p a t h   s e g m e n t .   E x a m p l e s :   / a p i / v 1 / n a m e s p a c e s / a p i / v 1 / p o d s / a p i / v 1 / n a m e s p a c e s / m y - n a m e s p a c e / p o d s / a p i s / a p p s / v 1 / d e p l o y m e n t s / a p i s / a p p s / v 1 / n a m e s p a c e s / m y - n a m e s p a c e / d e p l o y m e n t s / a p i s / a p p s / v 1 / n a m e s p a c e s / m y - n a m e s p a c e / d e p l o y m e n t s / m y - d e p l o y m e n t   Y o u   c a n   a l s o   a c c e s s   c o l l e c t i o n s   o f   r e s o u r c e s   ( f o r   e x a m p l e :   l i s t i n g   a l l   N o d e s ) .   T h e   f o l l o w i n g   p a t h s   a r e   u s e d   t o   r e t r i e v e   c o l l e c t i o n s   a n d   r e s o u r c e s :   C l u s t e r - s c o p e d   r e s o u r c e s : G E T   / a p i s / G R O U P / V E R S I O N / R E S O U R C E T Y P E   -   r e t u r n   t h e   c o l l e c t i o n   o f   r e s o u r c e s   o f   t h e   r e s o u r c e   t y p e G E T   / a p i s / G R O U P / V E R S I O N / R E S O U R C E T Y P E / N A M E   -   r e t u r n   t h e   r e s o u r c e   w i t h   N A M E   u n d e r   t h e   r e s o u r c e   t y p e N a m e s p a c e - s c o p e d   r e s o u r c e s : G E


Question: What is HTTP media types?

Answer: O v e r   H T T P ,   K u b e r n e t e s   s u p p o r t s   J S O N ,   Y A M L ,   C B O R   a n d   P r o t o b u f   w i r e   e n c o d i n g s .   B y   d e f a u l t ,   K u b e r n e t e s   r e t u r n s   o b j e c t s   i n   J S O N   s e r i a l i z a t i o n ,   u s i n g   t h e   a p p l i c a t i o n / j s o n   m e d i a   t y p e .   A l t h o u g h   J S O N   i s   t h e   d e f a u l t ,   c l i e n t s   m a y   r e q u e s t   a   r e s p o n s e   i n   Y A M L ,   o r   u s e   t h e   m o r e   e f f i c i e n t   b i n a r y   P r o t o b u f   r e p r e s e n t a t i o n   f o r   b e t t e r   p e r f o r m a n c e   a t   s c a l e .   T h e   K u b e r n e t e s   A P I   i m p l e m e n t s   s t a n d a r d   H T T P   c o n t e n t   t y p e   n e g o t i a t i o n :   p a s s i n g   a n   A c c e p t   h e a d e r   w i t h   a   G E T   c a l l   w i l l   r e q u e s t   t h a t   t h e   s e r v e r   t r i e s   t o   r e t u r n   a   r e s p o n s e   i n   y o u r   p r e f e r r e d   m e d i a   t y p e .   I f   y o u   w a n t   t o   s e n d   a n   o b j e c t   i n   P r o t o b u f   t o   t h e   s e r v e r   f o r   a   P U T   o r   P O S T   r e q u e s t ,   y o u   m u s t   s e t   t h e   C o n t e n t - T y p e   r e q u e s t   h e a d e r   a p p r o p r i a t e l y .   I f   y o u   r e q u e s t   a n   a v a i l a b l e   m e d i a   t y p e ,   t h e   A P I   s e r v e r   r e t u r n s   a   r e s p o n s e   w i t h   a   s u i t a b l e   C o n t e n t - T y p e ;   i f   n o n e   o f   t h e   m e d i a   t y p e s   y o u   r e q u e s t   a r e   s u p p o r t e d ,   t h e   A P I   s e r v e r   r e t u r n s   a   4 0 6   N o t   a c c e p t a b l e   e r r o r   m e s s a g e .   A l l   b u i l t - i n   r e s o u r c e   t y p e s   s u p p o r t   t h e   a p p l i c a t i o n / j s o n   m e d i a   t y p e .


Question: What is Chunked encoding of collections?

Answer: F o r   J S O N   a n d   P r o t o b u f   e n c o d i n g ,   K u b e r n e t e s   i m p l e m e n t s   c u s t o m   e n c o d e r s   t h a t   w r i t e   i t e m ,   b y   i t e m .   T h e   f e a t u r e   d o e s n ' t   c h a n g e   t h e   o u t p u t ,   b u t   a l l o w s   A P I   s e r v e r   t o   a v o i d   l o a d i n g   w h o l e   L I S T   r e s p o n s e   i n t o   m e m o r y .   U s i n g   o t h e r   t y p e s   o f   e n c o d i n g   ( i n c l u d i n g   p r e t t y   r e p r e s e n t a t i o n   o f   J S O N )   s h o u l d   b e   a v o i d e d   f o r   l a r g e   c o l l e c t i o n s   o f   r e s o u r c e s   ( > 1 0 0 M B )   a s   i t   c a n   h a v e   n e g a t i v e   p e r f o r m a n c e   i m p a c t .


Question: What is JSON resource encoding?

Answer: T h e   K u b e r n e t e s   A P I   d e f a u l t s   t o   u s i n g   J S O N   f o r   e n c o d i n g   H T T P   m e s s a g e   b o d i e s .   F o r   e x a m p l e :   L i s t   a l l   o f   t h e   p o d s   o n   a   c l u s t e r ,   w i t h o u t   s p e c i f y i n g   a   p r e f e r r e d   f o r m a t G E T   / a p i / v 1 / p o d s   2 0 0   O K   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n   …   J S O N   e n c o d e d   c o l l e c t i o n   o f   P o d s   ( P o d L i s t   o b j e c t )   C r e a t e   a   p o d   b y   s e n d i n g   J S O N   t o   t h e   s e r v e r ,   r e q u e s t i n g   a   J S O N   r e s p o n s e . P O S T   / a p i / v 1 / n a m e s p a c e s / t e s t / p o d s   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n   A c c e p t :   a p p l i c a t i o n / j s o n   …   J S O N   e n c o d e d   P o d   o b j e c t   2 0 0   O K   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n   {   " k i n d " :   " P o d " ,   " a p i V e r s i o n " :   " v 1 " ,   …   }   L i s t   a l l   o f   t h e   p o d s   o n   a   c l u s t e r ,   w i t h o u t   s p e c i f y i n g   a   p r e f e r r e d   f o r m a t   G E T   / a p i / v 1 / p o d s   2 0 0   O K   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n   …   J S O N   e n c o d e d   c o l l e c t i o n   o f   P o d s   ( P o d L i s t   o b j e c t )   C r e a t e   a   p o d   b y   s e n d i n g   J S O N   t o   t h e   s e r v e r ,   r e q u e s t i n g   a   J S O N   r e s p o n s e .   P O S T   / a p i / v 1 / n a m e s p a c e s / t e s t / p o d s   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n   A c c e p t :   a p p l i c a t i o n / j s o n   …   J S O N   e n c o d e d   P o d   o b j e c t   2 0 0   O K   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n   {   " k i n d " :   " P o d " ,   " a p i V e r s i o n " :   " v 1 " ,   …   }


Question: What is YAML resource encoding?

Answer: K u b e r n e t e s   a l s o   s u p p o r t s   t h e   a p p l i c a t i o n / y a m l   m e d i a   t y p e   f o r   b o t h   r e q u e s t s   a n d   r e s p o n s e s .   Y A M L   c a n   b e   u s e d   f o r   d e f i n i n g   K u b e r n e t e s   m a n i f e s t s   a n d   A P I   i n t e r a c t i o n s .   F o r   e x a m p l e :   L i s t   a l l   o f   t h e   p o d s   o n   a   c l u s t e r   i n   Y A M L   f o r m a t G E T   / a p i / v 1 / p o d s   A c c e p t :   a p p l i c a t i o n / y a m l   2 0 0   O K   C o n t e n t - T y p e :   a p p l i c a t i o n / y a m l   …   Y A M L   e n c o d e d   c o l l e c t i o n   o f   P o d s   ( P o d L i s t   o b j e c t )   C r e a t e   a   p o d   b y   s e n d i n g   Y A M L - e n c o d e d   d a t a   t o   t h e   s e r v e r ,   r e q u e s t i n g   a   Y A M L   r e s p o n s e : P O S T   / a p i / v 1 / n a m e s p a c e s / t e s t / p o d s   C o n t e n t - T y p e :   a p p l i c a t i o n / y a m l   A c c e p t :   a p p l i c a t i o n / y a m l   …   Y A M L   e n c o d e d   P o d   o b j e c t   2 0 0   O K   C o n t e n t - T y p e :   a p p l i c a t i o n / y a m l   a p i V e r s i o n :   v 1   k i n d :   P o d   m e t a d a t a :   n a m e :   m y - p o d   …   L i s t   a l l   o f   t h e   p o d s   o n   a   c l u s t e r   i n   Y A M L   f o r m a t   G E T   / a p i / v 1 / p o d s   A c c e p t :   a p p l i c a t i o n / y a m l   2 0 0   O K   C o n t e n t - T y p e :   a p p l i c a t i o n / y a m l   …   Y A M L   e n c o d e d   c o l l e c t i o n   o f   P o d s   ( P o d L i s t   o b j e c t )   C r e a t e   a   p o d   b y   s e n d i n g   Y A M L - e n c o d e d   d a t a   t o   t h e   s e r v e r ,   r e q u e s t i n g   a   Y A M L   r e s p o n s e :   P O S T   / a p i / v 1 / n a m e s p a c e s / t e s t / p o d s   C o n t e n t - T y p e :   a p p l i c a t i o n / y a m l   A c c e p t :   a p p l i c a t i o n / y a m l   …


Question: What is Kubernetes Protobuf encoding?

Answer: K u b e r n e t e s   u s e s   a n   e n v e l o p e   w r a p p e r   t o   e n c o d e   P r o t o b u f   r e s p o n s e s .   T h a t   w r a p p e r   s t a r t s   w i t h   a   4   b y t e   m a g i c   n u m b e r   t o   h e l p   i d e n t i f y   c o n t e n t   i n   d i s k   o r   i n   e t c d   a s   P r o t o b u f   ( a s   o p p o s e d   t o   J S O N ) .   T h e   4   b y t e   m a g i c   n u m b e r   d a t a   i s   f o l l o w e d   b y   a   P r o t o b u f   e n c o d e d   w r a p p e r   m e s s a g e ,   w h i c h   d e s c r i b e s   t h e   e n c o d i n g   a n d   t y p e   o f   t h e   u n d e r l y i n g   o b j e c t .   W i t h i n   t h e   P r o t o b u f   w r a p p e r   m e s s a g e ,   t h e   i n n e r   o b j e c t   d a t a   i s   r e c o r d e d   u s i n g   t h e   r a w   f i e l d   o f   U n k n o w n   ( s e e   t h e   I D L   f o r   m o r e   d e t a i l ) .   F o r   e x a m p l e :   L i s t   a l l   o f   t h e   p o d s   o n   a   c l u s t e r   i n   P r o t o b u f   f o r m a t . G E T   / a p i / v 1 / p o d s   A c c e p t :   a p p l i c a t i o n / v n d . k u b e r n e t e s . p r o t o b u f   2 0 0   O K   C o n t e n t - T y p e :   a p p l i c a t i o n / v n d . k u b e r n e t e s . p r o t o b u f   …   b i n a r y   e n c o d e d   c o l l e c t i o n   o f   P o d s   ( P o d L i s t   o b j e c t )   C r e a t e   a   p o d   b y   s e n d i n g   P r o t o b u f   e n c o d e d   d a t a   t o   t h e   s e r v e r ,   b u t   r e q u e s t   a   r e s p o n s e   i n   J S O N . P O S T   / a p i / v 1 / n a m e s p a c e s / t e s t / p o d s   C o n t e n t - T y p e :   a p p l i c a t i o n / v n d . k u b e r n e t e s . p r o t o b u f   A c c e p t :   a p p l i c a t i o n / j s o n   …   b i n a r y   e n c o d e d   P o d   o b j e c t   2 0 0   O K   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n   {   " k i n d " :   " P o d " ,   " a p i V e r s i o n


Question: What is Compatibility with Kubernetes Protobuf?

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


Question: What is CBOR resource encoding?

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


Question: What is Efficient detection of changes?

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


Question: What is Watch bookmarks?

Answer: T o   m i t i g a t e   t h e   i m p a c t   o f   s h o r t   h i s t o r y   w i n d o w ,   t h e   K u b e r n e t e s   A P I   p r o v i d e s   a   w a t c h   e v e n t   n a m e d   B O O K M A R K .   I t   i s   a   s p e c i a l   k i n d   o f   e v e n t   t o   m a r k   t h a t   a l l   c h a n g e s   u p   t o   a   g i v e n   r e s o u r c e V e r s i o n   t h e   c l i e n t   i s   r e q u e s t i n g   h a v e   a l r e a d y   b e e n   s e n t .   T h e   d o c u m e n t   r e p r e s e n t i n g   t h e   B O O K M A R K   e v e n t   i s   o f   t h e   t y p e   r e q u e s t e d   b y   t h e   r e q u e s t ,   b u t   o n l y   i n c l u d e s   a   . m e t a d a t a . r e s o u r c e V e r s i o n   f i e l d .   F o r   e x a m p l e :   G E T   / a p i / v 1 / n a m e s p a c e s / t e s t / p o d s ? w a t c h = 1 & r e s o u r c e V e r s i o n = 1 0 2 4 5 & a l l o w W a t c h B o o k m a r k s = t r u e   - - -   2 0 0   O K   T r a n s f e r - E n c o d i n g :   c h u n k e d   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n   {   " t y p e " :   " A D D E D " ,   " o b j e c t " :   { " k i n d " :   " P o d " ,   " a p i V e r s i o n " :   " v 1 " ,   " m e t a d a t a " :   { " r e s o u r c e V e r s i o n " :   " 1 0 5 9 6 " ,   . . . } ,   . . . }   }   . . .   {   " t y p e " :   " B O O K M A R K " ,   " o b j e c t " :   { " k i n d " :   " P o d " ,   " a p i V e r s i o n " :   " v 1 " ,   " m e t a d a t a " :   { " r e s o u r c e V e r s i o n " :   " 1 2 7 4 6 " }   }   }   A s   a   c l i e n t ,   y o u   c a n   r e q u e s t   B O O K M A R K   e v e n t s   b y   s e t t i n g   t h e   a l l o w W a t c h B o o k m a r k s = t r u e   q u e r y   p a r a m e t e r   t o   a   w a t c h   r e q u e s t ,   b u t   y o u   s h o u l d n ' t   a s s u m e   b o o k m a r k s   a r e   r e t u r n e d   a t   a n y   s p e c i f i c   i n t e r v a l ,   n o r   c a n   c l i e n t s   a s s u


Question: What is Streaming lists?

Answer: O n   l a r g e   c l u s t e r s ,   r e t r i e v i n g   t h e   c o l l e c t i o n   o f   s o m e   r e s o u r c e   t y p e s   m a y   r e s u l t   i n   a   s i g n i f i c a n t   i n c r e a s e   o f   r e s o u r c e   u s a g e   ( p r i m a r i l y   R A M )   o n   t h e   c o n t r o l   p l a n e .   T o   a l l e v i a t e   t h e   i m p a c t   a n d   s i m p l i f y   t h e   u s e r   e x p e r i e n c e   o f   t h e   l i s t   +   w a t c h   p a t t e r n ,   K u b e r n e t e s   v 1 . 3 2   p r o m o t e s   t o   b e t a   t h e   f e a t u r e   t h a t   a l l o w s   r e q u e s t i n g   t h e   i n i t i a l   s t a t e   ( p r e v i o u s l y   r e q u e s t e d   v i a   t h e   l i s t   r e q u e s t )   a s   p a r t   o f   t h e   w a t c h   r e q u e s t .   O n   t h e   c l i e n t - s i d e   t h e   i n i t i a l   s t a t e   c a n   b e   r e q u e s t e d   b y   s p e c i f y i n g   s e n d I n i t i a l E v e n t s = t r u e   a s   q u e r y   s t r i n g   p a r a m e t e r   i n   a   w a t c h   r e q u e s t .   I f   s e t ,   t h e   A P I   s e r v e r   s t a r t s   t h e   w a t c h   s t r e a m   w i t h   s y n t h e t i c   i n i t   e v e n t s   ( o f   t y p e   A D D E D )   t o   b u i l d   t h e   w h o l e   s t a t e   o f   a l l   e x i s t i n g   o b j e c t s   f o l l o w e d   b y   a   B O O K M A R K   e v e n t   ( i f   r e q u e s t e d   v i a   a l l o w W a t c h B o o k m a r k s = t r u e   o p t i o n ) .   T h e   b o o k m a r k   e v e n t   i n c l u d e s   t h e   r e s o u r c e   v e r s i o n   t o   w h i c h   i s   s y n c e d .   A f t e r   s e n d i n g   t h e   b o o k m a r k   e v e n t ,   t h e   A P I   s e r v e r   c o n t i n u e s   a s   f o r   a n y   o t h e r   w a t c h   r e q u e s t .   W h e n   y o u   s e t   s e n d I n i t i a l E v e n t s = t r u e   i n   t h e   q u e r y   s t r i n g ,   K u b e r n e t e s   a l s o   r e


Question: What is Example?

Answer: A n   e x a m p l e :   y o u   w a n t   t o   w a t c h   a   c o l l e c t i o n   o f   P o d s .   F o r   t h a t   c o l l e c t i o n ,   t h e   c u r r e n t   r e s o u r c e   v e r s i o n   i s   1 0 2 4 5   a n d   t h e r e   a r e   t w o   p o d s :   f o o   a n d   b a r .   T h e n   s e n d i n g   t h e   f o l l o w i n g   r e q u e s t   ( e x p l i c i t l y   r e q u e s t i n g   c o n s i s t e n t   r e a d   b y   s e t t i n g   e m p t y   r e s o u r c e   v e r s i o n   u s i n g   r e s o u r c e V e r s i o n = )   c o u l d   r e s u l t   i n   t h e   f o l l o w i n g   s e q u e n c e   o f   e v e n t s :   G E T   / a p i / v 1 / n a m e s p a c e s / t e s t / p o d s ? w a t c h = 1 & s e n d I n i t i a l E v e n t s = t r u e & a l l o w W a t c h B o o k m a r k s = t r u e & 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 = N o t O l d e r T h a n   - - -   2 0 0   O K   T r a n s f e r - E n c o d i n g :   c h u n k e d   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n   {   " t y p e " :   " A D D E D " ,   " o b j e c t " :   { " k i n d " :   " P o d " ,   " a p i V e r s i o n " :   " v 1 " ,   " m e t a d a t a " :   { " r e s o u r c e V e r s i o n " :   " 8 4 6 7 " ,   " n a m e " :   " f o o " } ,   . . . }   }   {   " t y p e " :   " A D D E D " ,   " o b j e c t " :   { " k i n d " :   " P o d " ,   " a p i V e r s i o n " :   " v 1 " ,   " m e t a d a t a " :   { " r e s o u r c e V e r s i o n " :   " 5 7 2 6 " ,   " n a m e " :   " b a r " } ,   . . . }   }   {   " t y p e " :   " B O O K M A R K " ,   " o b j e c t " :   { " k i n d " :   " P o d " ,   " a p i V e r s i o n " :   " v 1 " ,   " m e t a d a t a " :   { " r e s o u r c e V e r s i o n " :   " 1 0 2 4 5 " }   }   }   . . .   < f o l l o w e d   b y   r e g u l a r   w a t c h   s t r e a m   s t a r t i n g   f r o m   r e s o u r c e V e r s i o n = " 1 0 2 4 5 " >


Question: What is Response compression?

Answer: A P I R e s p o n s e C o m p r e s s i o n   i s   a n   o p t i o n   t h a t   a l l o w s   t h e   A P I   s e r v e r   t o   c o m p r e s s   t h e   r e s p o n s e s   f o r   g e t   a n d   l i s t   r e q u e s t s ,   r e d u c i n g   t h e   n e t w o r k   b a n d w i d t h   a n d   i m p r o v i n g   t h e   p e r f o r m a n c e   o f   l a r g e - s c a l e   c l u s t e r s .   I t   i s   e n a b l e d   b y   d e f a u l t   s i n c e   K u b e r n e t e s   1 . 1 6   a n d   i t   c a n   b e   d i s a b l e d   b y   i n c l u d i n g   A P I R e s p o n s e C o m p r e s s i o n = f a l s e   i n   t h e   - - f e a t u r e - g a t e s   f l a g   o n   t h e   A P I   s e r v e r .   A P I   r e s p o n s e   c o m p r e s s i o n   c a n   s i g n i f i c a n t l y   r e d u c e   t h e   s i z e   o f   t h e   r e s p o n s e ,   e s p e c i a l l y   f o r   l a r g e   r e s o u r c e s   o r   c o l l e c t i o n s .   F o r   e x a m p l e ,   a   l i s t   r e q u e s t   f o r   p o d s   c a n   r e t u r n   h u n d r e d s   o f   k i l o b y t e s   o r   e v e n   m e g a b y t e s   o f   d a t a ,   d e p e n d i n g   o n   t h e   n u m b e r   o f   p o d s   a n d   t h e i r   a t t r i b u t e s .   B y   c o m p r e s s i n g   t h e   r e s p o n s e ,   t h e   n e t w o r k   b a n d w i d t h   c a n   b e   s a v e d   a n d   t h e   l a t e n c y   c a n   b e   r e d u c e d .   T o   v e r i f y   i f   A P I R e s p o n s e C o m p r e s s i o n   i s   w o r k i n g ,   y o u   c a n   s e n d   a   g e t   o r   l i s t   r e q u e s t   t o   t h e   A P I   s e r v e r   w i t h   a n   A c c e p t - E n c o d i n g   h e a d e r ,   a n d   c h e c k   t h e   r e s p o n s e   s i z e   a n d   h e a d e r s .   F o r   e x a m p l e :   G E T   / a p i / v 1 / p o d s   A c c e p t - E n c o d i n g :   g z i p   - - -   2 0 0   O K   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n   c


Question: What is Retrieving large results sets in chunks?

Answer: O n   l a r g e   c l u s t e r s ,   r e t r i e v i n g   t h e   c o l l e c t i o n   o f   s o m e   r e s o u r c e   t y p e s   m a y   r e s u l t   i n   v e r y   l a r g e   r e s p o n s e s   t h a t   c a n   i m p a c t   t h e   s e r v e r   a n d   c l i e n t .   F o r   i n s t a n c e ,   a   c l u s t e r   m a y   h a v e   t e n s   o f   t h o u s a n d s   o f   P o d s ,   e a c h   o f   w h i c h   i s   e q u i v a l e n t   t o   r o u g h l y   2   K i B   o f   e n c o d e d   J S O N .   R e t r i e v i n g   a l l   p o d s   a c r o s s   a l l   n a m e s p a c e s   m a y   r e s u l t   i n   a   v e r y   l a r g e   r e s p o n s e   ( 1 0 - 2 0 M B )   a n d   c o n s u m e   a   l a r g e   a m o u n t   o f   s e r v e r   r e s o u r c e s .   T h e   K u b e r n e t e s   A P I   s e r v e r   s u p p o r t s   t h e   a b i l i t y   t o   b r e a k   a   s i n g l e   l a r g e   c o l l e c t i o n   r e q u e s t   i n t o   m a n y   s m a l l e r   c h u n k s   w h i l e   p r e s e r v i n g   t h e   c o n s i s t e n c y   o f   t h e   t o t a l   r e q u e s t .   E a c h   c h u n k   c a n   b e   r e t u r n e d   s e q u e n t i a l l y   w h i c h   r e d u c e s   b o t h   t h e   t o t a l   s i z e   o f   t h e   r e q u e s t   a n d   a l l o w s   u s e r - o r i e n t e d   c l i e n t s   t o   d i s p l a y   r e s u l t s   i n c r e m e n t a l l y   t o   i m p r o v e   r e s p o n s i v e n e s s .   Y o u   c a n   r e q u e s t   t h a t   t h e   A P I   s e r v e r   h a n d l e s   a   l i s t   b y   s e r v i n g   s i n g l e   c o l l e c t i o n   u s i n g   p a g e s   ( w h i c h   K u b e r n e t e s   c a l l s   c h u n k s ) .   T o   r e t r i e v e   a   s i n g l e   c o l l e c t i o n   i n   c h u n k s ,   t w o   q u e r y   p a r a m e t e r s   l i m i t   a n d   c o n t i n u e   a r e   s u p p o r t e d   o n   r e q u e s t s   a g a i n s t   c o l l e c


Question: What is Collections?

Answer: I n   K u b e r n e t e s   t e r m i n o l o g y ,   t h e   r e s p o n s e   y o u   g e t   f r o m   a   l i s t   i s   a   c o l l e c t i o n .   H o w e v e r ,   K u b e r n e t e s   d e f i n e s   c o n c r e t e   k i n d s   f o r   c o l l e c t i o n s   o f   d i f f e r e n t   t y p e s   o f   r e s o u r c e .   C o l l e c t i o n s   h a v e   a   k i n d   n a m e d   f o r   t h e   r e s o u r c e   k i n d ,   w i t h   L i s t   a p p e n d e d .   W h e n   y o u   q u e r y   t h e   A P I   f o r   a   p a r t i c u l a r   t y p e ,   a l l   i t e m s   r e t u r n e d   b y   t h a t   q u e r y   a r e   o f   t h a t   t y p e .   F o r   e x a m p l e ,   w h e n   y o u   l i s t   S e r v i c e s ,   t h e   c o l l e c t i o n   r e s p o n s e   h a s   k i n d   s e t   t o   S e r v i c e L i s t ;   e a c h   i t e m   i n   t h a t   c o l l e c t i o n   r e p r e s e n t s   a   s i n g l e   S e r v i c e .   F o r   e x a m p l e :   G E T   / a p i / v 1 / s e r v i c e s   {   " k i n d " :   " S e r v i c e L i s t " ,   " a p i V e r s i o n " :   " v 1 " ,   " m e t a d a t a " :   {   " r e s o u r c e V e r s i o n " :   " 2 9 4 7 3 0 1 "   } ,   " i t e m s " :   [   {   " m e t a d a t a " :   {   " n a m e " :   " k u b e r n e t e s " ,   " n a m e s p a c e " :   " d e f a u l t " ,   . . .   " m e t a d a t a " :   {   " n a m e " :   " k u b e - d n s " ,   " n a m e s p a c e " :   " k u b e - s y s t e m " ,   . . .   T h e r e   a r e   d o z e n s   o f   c o l l e c t i o n   t y p e s   ( s u c h   a s   P o d L i s t ,   S e r v i c e L i s t ,   a n d   N o d e L i s t )   d e f i n e d   i n   t h e   K u b e r n e t e s   A P I .   Y o u   c a n   g e t   m o r e   i n f o r m a t i o n   a b o u t   e a c h   c o l l e c t i o n   t y p e   f r o m   t h e   K u b e r n e t e s   A P I   d o c u m e n t a t i o n .   S o m e   t o o l s ,   s u c h   a s   k u b e c t l ,   r e p r e s e n t


Question: What is Note:?

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


Question: What is Receiving resources as Tables?

Answer: W h e n   y o u   r u n   k u b e c t l   g e t ,   t h e   d e f a u l t   o u t p u t   f o r m a t   i s   a   s i m p l e   t a b u l a r   r e p r e s e n t a t i o n   o f   o n e   o r   m o r e   i n s t a n c e s   o f   a   p a r t i c u l a r   r e s o u r c e   t y p e .   I n   t h e   p a s t ,   c l i e n t s   w e r e   r e q u i r e d   t o   r e p r o d u c e   t h e   t a b u l a r   a n d   d e s c r i b e   o u t p u t   i m p l e m e n t e d   i n   k u b e c t l   t o   p e r f o r m   s i m p l e   l i s t s   o f   o b j e c t s .   A   f e w   l i m i t a t i o n s   o f   t h a t   a p p r o a c h   i n c l u d e   n o n - t r i v i a l   l o g i c   w h e n   d e a l i n g   w i t h   c e r t a i n   o b j e c t s .   A d d i t i o n a l l y ,   t y p e s   p r o v i d e d   b y   A P I   a g g r e g a t i o n   o r   t h i r d   p a r t y   r e s o u r c e s   a r e   n o t   k n o w n   a t   c o m p i l e   t i m e .   T h i s   m e a n s   t h a t   g e n e r i c   i m p l e m e n t a t i o n s   h a d   t o   b e   i n   p l a c e   f o r   t y p e s   u n r e c o g n i z e d   b y   a   c l i e n t .   I n   o r d e r   t o   a v o i d   p o t e n t i a l   l i m i t a t i o n s   a s   d e s c r i b e d   a b o v e ,   c l i e n t s   m a y   r e q u e s t   t h e   T a b l e   r e p r e s e n t a t i o n   o f   o b j e c t s ,   d e l e g a t i n g   s p e c i f i c   d e t a i l s   o f   p r i n t i n g   t o   t h e   s e r v e r .   T h e   K u b e r n e t e s   A P I   i m p l e m e n t s   s t a n d a r d   H T T P   c o n t e n t   t y p e   n e g o t i a t i o n :   p a s s i n g   a n   A c c e p t   h e a d e r   c o n t a i n i n g   a   v a l u e   o f   a p p l i c a t i o n / j s o n ; a s = T a b l e ; g = m e t a . k 8 s . i o ; v = v 1   w i t h   a   G E T   c a l l   w i l l   r e q u e s t   t h a t   t h e   s e r v e r   r e t u r n   o b j e c t s   i n   t h e   T a b l e   c o n t e n t   t y p e .   F o


Question: What is Resource deletion?

Answer: W h e n   y o u   d e l e t e   a   r e s o u r c e   t h i s   t a k e s   p l a c e   i n   t w o   p h a s e s .   f i n a l i z a t i o n r e m o v a l   {   " k i n d " :   " C o n f i g M a p " ,   " a p i V e r s i o n " :   " v 1 " ,   " m e t a d a t a " :   {   " f i n a l i z e r s " :   [ " u r l . i o / n e a t - f i n a l i z a t i o n " ,   " o t h e r - u r l . i o / m y - f i n a l i z e r " ] ,   " d e l e t i o n T i m e s t a m p " :   n i l ,   }   }   W h e n   a   c l i e n t   f i r s t   s e n d s   a   d e l e t e   t o   r e q u e s t   t h e   r e m o v a l   o f   a   r e s o u r c e ,   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 s   s e t   t o   t h e   c u r r e n t   t i m e .   O n c e   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 s   s e t ,   e x t e r n a l   c o n t r o l l e r s   t h a t   a c t   o n   f i n a l i z e r s   m a y   s t a r t   p e r f o r m i n g   t h e i r   c l e a n u p   w o r k   a t   a n y   t i m e ,   i n   a n y   o r d e r .   O r d e r   i s   n o t   e n f o r c e d   b e t w e e n   f i n a l i z e r s   b e c a u s e   i t   w o u l d   i n t r o d u c e   s i g n i f i c a n t   r i s k   o f   s t u c k   . m e t a d a t a . f i n a l i z e r s .   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   s h a r e d :   a n y   a c t o r   w i t h   p e r m i s s i o n   c a n   r e o r d e r   i t .   I f   t h e   f i n a l i z e r   l i s t   w e r e   p r o c e s s e d   i n   o r d e r ,   t h e n   t h i s   m i g h t   l e a d   t o   a   s i t u a t i o n   i n   w h i c h   t h e   c o m p o n e n t   r e s p o n s i b l e   f o r   t h e   f i r s t   f i n a l i z e r   i n   t h e   l i s t   i s   w a i t i n g   f o r   s o m e   s i g n a l   ( f i e l d   v a l u e ,   e x t e r n a l   s y s t e m ,   o r   o t h e r )   p r o d u c e d   b y   a   c o m p o n e n t   r e s p o n s i b l e   f o r   a   f i n a l i z e


Question: What is Caution:?

Answer: B y   e n a b l i n g   t h e   d e l e t e   o p t i o 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 ,   t h e   u s e r   c a n   p e r f o r m   a n   u n s a f e   f o r c e   d e l e t e   o p e r a t i o n   o f   a n   u n d e c r y p t a b l e / c o r r u p t   r e s o u r c e .   T h i s   o p t i o n   i s   b e h i n d   a n   A L P H A   f e a t u r e   g a t e ,   a n d   i t   i s   d i s a b l e d   b y   d e f a u l t .   I n   o r d e r   t o   u s e   t h i s   o p t i o n ,   t h e   c l u s t e r   o p e r a t o r   m u s t   e n a b l e   t h e   f e a t u r e   b y   s e t t i n g   t h e   c o m m a n d   l i n e   o p t i o n   - - f e a t u r e - g a t e s = A l l o w U n s a f e M a l f o r m e d O b j e c t D e l e t i o n = t r u e .


Question: What is Note:?

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


Question: What is Single resource API?

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


Question: What is Field validation?

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


Question: What is Validation for unrecognized or duplicate fields?

Answer: F r o m   1 . 2 5   o n w a r d ,   u n r e c o g n i z e d   o r   d u p l i c a t e   f i e l d s   i n   a n   o b j e c t   a r e   d e t e c t e d   v i a   v a l i d a t i o n   o n   t h e   s e r v e r   w h e n   y o u   u s e   H T T P   v e r b s   t h a t   c a n   s u b m i t   d a t a   ( P O S T ,   P U T ,   a n d   P A T C H ) .   P o s s i b l e   l e v e l s   o f   v a l i d a t i o n   a r e   I g n o r e ,   W a r n   ( d e f a u l t ) ,   a n d   S t r i c t .   T h e   f i e l d   v a l i d a t i o n   l e v e l   i s   s e t   b y   t h e   f i e l d V a l i d a t i o n   q u e r y   p a r a m e t e r .