在 Kubernetes 中,您可以定義和管理自訂資源,從而擴展平台的功能。可以使用 Go 用戶端程式庫以程式設計方式完成建立和取得自訂資源。
要建立自訂資源(例如 KongPlugin),您需要使用 RESTClient Kubernetes 用戶端集。操作方法如下:
<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>
要擷取自訂資源,您可以使用RESTClient 的Get() 方法:
<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>
AbsPath() 注意:
以上是如何使用 Go 用戶端程式庫建立和擷取自訂 Kubernetes 資源?的詳細內容。更多資訊請關注PHP中文網其他相關文章!