Erstellen einer benutzerdefinierten Kubernetes-Ressource
Um eine benutzerdefinierte Kubernetes-Ressource zu erstellen, z Verwenden Sie wie im KongPlugin-Beispiel angegeben die Methode RESTClient(), um den Pfad zur Ressource anzugeben. Sie können die Fluent-Schnittstelle verwenden:
<code class="go">data, err := clientset.RESTClient(). Get(). AbsPath("/apis/<api>/<version>"). Namespace("<namespace>"). Resource("kongplugins"). Name("kongplugin-sample"). DoRaw(context.TODO())</code>
Oder geben Sie den Pfad manuell an:
<code class="go">data, err := clientset.RESTClient(). Get(). AbsPath("/apis/<api>/<version>/namespaces/<namespace>/kongplugins/kongplugin-sample"). DoRaw(context.TODO())</code>
Sie finden den AbsPath im Selbstlink der benutzerdefinierten Ressource.
Eine benutzerdefinierte Kubernetes-Ressource abrufen
Um eine benutzerdefinierte Kubernetes-Ressource abzurufen, verwenden Sie in ähnlicher Weise die RESTClient()-Methode, um den Pfad zur Ressource anzugeben. Marshallen Sie die zu veröffentlichenden Daten mit dem JSON-Paket und verwenden Sie die Body()-Methode zum Senden der Daten:
<code class="go">kongPlugin := &KongPlugin{ TypeMeta: metav1.TypeMeta{ APIVersion: "<api>/<version>", Kind: "KongPlugin", }, ObjectMeta: metav1.ObjectMeta{ Name: "kongplugin-sample", Namespace: "<namespace>", }, ...}} body, err := json.Marshal(kongPlugin) data, err := clientset.RESTClient(). Post(). AbsPath("/apis/<api>/<version>/namespaces/<namespace>/kongplugins"). Body(body). DoRaw(context.TODO())</code>
Beachten Sie, dass das Argument der Body()-Methode eine leere Schnittstelle ist, die Sie verwenden können verschiedene Arten von Argumenten gemäß der Kubernetes-Dokumentation.
Das obige ist der detaillierte Inhalt vonWie erstelle und erhalte ich benutzerdefinierte Kubernetes-Ressourcen mit RESTClient?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!