Dans Kubernetes, vous pouvez définir et gérer des ressources personnalisées, qui étendent les capacités de la plateforme. La création et l'obtention de ressources personnalisées peuvent être effectuées par programme à l'aide de la bibliothèque client Go.
Pour créer une ressource personnalisée telle que KongPlugin, vous devrez utiliser le RESTClient de l'ensemble de clients Kubernetes. Voici comment procéder :
<code class="go">// Create a KongPlugin custom resource. kongPlugin := &KongPlugin{ TypeMeta: metav1.TypeMeta{ APIVersion: "configuration.konghq.com/v1", Kind: "KongPlugin", }, ObjectMeta: metav1.ObjectMeta{ Name: "add-response-header", }, Config: KongPluginConfig{ Add: KongPluginConfigAdd{ Headers: []string{"demo: injected-by-kong"}, }, }, Plugin: "response-transformer", } body, err := json.Marshal(kongPlugin) if err != nil { panic(err) } data, err := clientset.RESTClient(). Post(). AbsPath("/apis/configuration.konghq.com/v1/namespaces/" + namespace + "/kongplugins"). Body(body). DoRaw(context.TODO())</code>
Pour récupérer une ressource personnalisée, vous pouvez utiliser la méthode Get() du RESTClient :
<code class="go">// Get the KongPlugin custom resource. data, err := clientset.RESTClient(). Get(). AbsPath("/apis/configuration.konghq.com/v1/namespaces/" + namespace + "/kongplugins/add-response-header"). DoRaw(context.TODO())</code>
Remarques sur AbsPath() :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!