使用Kubernetes Go 庫創建一個簡單的客戶端應用程式
儘管在開始使用Kubernetes Go 庫時面臨著挑戰,但一個範例是演示了其在簡單任務中的用法:按名稱檢索服務物件並顯示其屬性。
如何使用範例
提供的範例包含與 Kubernetes API 互動所需的套件。首先,建立一個 client.Config 物件來建立與 Kubernetes API 伺服器的連線。接下來,使用 New 函數實例化客戶端並傳入配置物件。
要擷取 Service 對象,請使用 client.Services 介面上的 Get 方法。指定您要檢索的服務的命名空間和名稱。取得 Service 物件後,您可以列印其屬性,例如其名稱、連接埠和 nodePort。
代碼範例
package main
import (
"fmt"
"log"
"github.com/kubernetes/kubernetes/pkg/api"
client "github.com/kubernetes/kubernetes/pkg/client/unversioned"
)
func main() {
config := client.Config{
Host: "http://my-kube-api-server.me:8080",
}
c, err := client.New(&config)
if err != nil {
log.Fatalln("Can't connect to Kubernetes API:", err)
}
s, err := c.Services(api.NamespaceDefault).Get("some-service-name")
if err != nil {
log.Fatalln("Can't get service:", err)
}
fmt.Println("Name:", s.Name)
for p, _ := range s.Spec.Ports {
fmt.Println("Port:", s.Spec.Ports[p].Port)
fmt.Println("NodePort:", s.Spec.Ports[p].NodePort)
}
}
此範例提供了透過 Go 函式庫與 Kubernetes API 互動的起點。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3