Ich sehe ein Cache-Verzeichnis im .kube/-Verzeichnis meines kubectl. Ich habe versucht, den Zweck dieses Caches und wie kubectl ihn verwendet in der Kubernetes-Dokumentation herauszufindenHieraber ich konnte keinen Hinweis finden.
Was speichert kubectl im Verzeichnis .kube/cache? Und wie wird dieser Cache im kubectl-Vorgang verwendet? Was genau speichert kubectl im Cache?
Antwort1
Bei flüchtiger Betrachtung wird man feststellen, dass das discovery
Verzeichnis die kubectl api-resources
Ausgabe pro Cluster-Hostname ist und das http
Schwesterverzeichnis die Antworttexte für jede dieser einzelnen api-resource
Anfragen enthält. Letzteres wird verwendet fürAnalysieren seinerEtag
um zu wissen, ob der Cache intakt ist oder nicht.
Dies api-resources
ist eine formale Beschreibung der Verben, URIs und Anfrage-/Antworttexte, die von einem bestimmten Kubernetes-Cluster toleriert werden, einschließlich aller installierten benutzerdefinierten Ressourcendefinitionen.
Die grausamen Einzelheiten beschreibt dergodoc fürNewCachedDiscoveryClientForConfig
und dieses ~/.kube/config
Verzeichnis selbst steht über das --cache-dir
Flag to unter dem Einfluss des Benutzers kubectl
, wie in dergenericclioptions config_flags.go