Kubernetes - Les API Groups Dans Kubernetes, tout est une ressource API, quand on interragie avec Kubernetes, derrière c’est une API. Afficher les API k api-resources -o wide NAME SHORTNAMES APIVERSION NAMESPACED KIND VERBS CATEGORIES bindings v1 true Binding create componentstatuses cs v1 false ComponentStatus get,list configmaps cm v1 true ConfigMap create,delete,deletecollection,get,list,patch,update,watch endpoints ep v1 true Endpoints create,delete,deletecollection,get,list,patch,update,watch events ev v1 true Event create,delete,deletecollection,get,list,patch,update,watch limitranges limits v1 true LimitRange create,delete,deletecollection,get,list,patch,update,watch namespaces ns v1 false Namespace create,delete,get,list,patch,update,watch nodes no v1 false Node create,delete,deletecollection,get,list,patch,update,watch persistentvolumeclaims pvc v1 true PersistentVolumeClaim create,delete,deletecollection,get,list,patch,update,watch persistentvolumes pv v1 false PersistentVolume create,delete,deletecollection,get,list,patch,update,watch pods po v1 true Pod create,delete,deletecollection,get,list,patch,update,watch all podtemplates v1 true PodTemplate create,delete,deletecollection,get,list,patch,update,watch replicationcontrollers rc v1 true ReplicationController create,delete,deletecollection,get,list,patch,update,watch all resourcequotas quota v1 true ResourceQuota create,delete,deletecollection,get,list,patch,update,watch secrets v1 true Secret create,delete,deletecollection,get,list,patch,update,watch serviceaccounts sa v1 true ServiceAccount create,delete,deletecollection,get,list,patch,update,watch services svc v1 true Service create,delete,deletecollection,get,list,patch,update,watch all mutatingwebhookconfigurations admissionregistration.k8s.io/v1 false MutatingWebhookConfiguration create,delete,deletecollection,get,list,patch,update,watch api-extensions validatingadmissionpolicies admissionregistration.k8s.io/v1 false ValidatingAdmissionPolicy create,delete,deletecollection,get,list,patch,update,watch api-extensions validatingadmissionpolicybindings admissionregistration.k8s.io/v1 false ValidatingAdmissionPolicyBinding create,delete,deletecollection,get,list,patch,update,watch api-extensions validatingwebhookconfigurations admissionregistration.k8s.io/v1 false ValidatingWebhookConfiguration create,delete,deletecollection,get,list,patch,update,watch api-extensions customresourcedefinitions crd,crds apiextensions.k8s.io/v1 false CustomResourceDefinition create,delete,deletecollection,get,list,patch,update,watch api-extensions apiservices apiregistration.k8s.io/v1 false APIService create,delete,deletecollection,get,list,patch,update,watch api-extensions controllerrevisions apps/v1 true ControllerRevision create,delete,deletecollection,get,list,patch,update,watch daemonsets ds apps/v1 true DaemonSet create,delete,deletecollection,get,list,patch,update,watch all deployments deploy apps/v1 true Deployment create,delete,deletecollection,get,list,patch,update,watch all replicasets rs apps/v1 true ReplicaSet create,delete,deletecollection,get,list,patch,update,watch all statefulsets sts apps/v1 true StatefulSet create,delete,deletecollection,get,list,patch,update,watch all selfsubjectreviews authentication.k8s.io/v1 false SelfSubjectReview create tokenreviews authentication.k8s.io/v1 false TokenReview create localsubjectaccessreviews authorization.k8s.io/v1 true LocalSubjectAccessReview create selfsubjectaccessreviews authorization.k8s.io/v1 false SelfSubjectAccessReview create selfsubjectrulesreviews authorization.k8s.io/v1 false SelfSubjectRulesReview create subjectaccessreviews authorization.k8s.io/v1 false SubjectAccessReview create horizontalpodautoscalers hpa autoscaling/v2 true HorizontalPodAutoscaler create,delete,deletecollection,get,list,patch,update,watch all cronjobs cj batch/v1 true CronJob create,delete,deletecollection,get,list,patch,update,watch all jobs batch/v1 true Job create,delete,deletecollection,get,list,patch,update,watch all certificatesigningrequests csr certificates.k8s.io/v1 false CertificateSigningRequest create,delete,deletecollection,get,list,patch,update,watch leases coordination.k8s.io/v1 true Lease create,delete,deletecollection,get,list,patch,update,watch endpointslices discovery.k8s.io/v1 true EndpointSlice create,delete,deletecollection,get,list,patch,update,watch events ev events.k8s.io/v1 true Event create,delete,deletecollection,get,list,patch,update,watch flowschemas flowcontrol.apiserver.k8s.io/v1 false FlowSchema create,delete,deletecollection,get,list,patch,update,watch prioritylevelconfigurations flowcontrol.apiserver.k8s.io/v1 false PriorityLevelConfiguration create,delete,deletecollection,get,list,patch,update,watch nodes metrics.k8s.io/v1beta1 false NodeMetrics get,list pods metrics.k8s.io/v1beta1 true PodMetrics get,list ingressclasses networking.k8s.io/v1 false IngressClass create,delete,deletecollection,get,list,patch,update,watch ingresses ing networking.k8s.io/v1 true Ingress create,delete,deletecollection,get,list,patch,update,watch networkpolicies netpol networking.k8s.io/v1 true NetworkPolicy create,delete,deletecollection,get,list,patch,update,watch runtimeclasses node.k8s.io/v1 false RuntimeClass create,delete,deletecollection,get,list,patch,update,watch poddisruptionbudgets pdb policy/v1 true PodDisruptionBudget create,delete,deletecollection,get,list,patch,update,watch clusterrolebindings rbac.authorization.k8s.io/v1 false ClusterRoleBinding create,delete,deletecollection,get,list,patch,update,watch clusterroles rbac.authorization.k8s.io/v1 false ClusterRole create,delete,deletecollection,get,list,patch,update,watch rolebindings rbac.authorization.k8s.io/v1 true RoleBinding create,delete,deletecollection,get,list,patch,update,watch roles rbac.authorization.k8s.io/v1 true Role create,delete,deletecollection,get,list,patch,update,watch priorityclasses pc scheduling.k8s.io/v1 false PriorityClass create,delete,deletecollection,get,list,patch,update,watch csidrivers storage.k8s.io/v1 false CSIDriver create,delete,deletecollection,get,list,patch,update,watch csinodes storage.k8s.io/v1 false CSINode create,delete,deletecollection,get,list,patch,update,watch csistoragecapacities storage.k8s.io/v1 true CSIStorageCapacity create,delete,deletecollection,get,list,patch,update,watch storageclasses sc storage.k8s.io/v1 false StorageClass create,delete,deletecollection,get,list,patch,update,watch volumeattachments storage.k8s.io/v1 false VolumeAttachment create,delete,deletecollection,get,list,patch,update,watch Afficher les ressources qui sont gérées de manière globale ou par namespace k api-resources --namespaced=<true/false> Interroger l’API kube API Server Activation de kubectl proxy kubectl proxy Starting to serve on 127.0.0.1:8001 Interrogation de l’API curl http://127.0.0.1:8001 -k { "paths": [ "/.well-known/openid-configuration", "/api", "/api/v1", "/apis", "/apis/", "/apis/admissionregistration.k8s.io", "/apis/admissionregistration.k8s.io/v1", "/apis/apiextensions.k8s.io", "/apis/apiextensions.k8s.io/v1", "/apis/apiregistration.k8s.io", "/apis/apiregistration.k8s.io/v1", "/apis/apps", "/apis/apps/v1", .... "/readyz/poststarthook/start-service-ip-repair-controllers", "/readyz/poststarthook/start-system-namespaces-controller", "/readyz/poststarthook/storage-object-count-tracker-hook", "/readyz/shutdown", "/version" ] }