Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah saya boleh mendapatkan semula objek Perkhidmatan mengikut nama dan mencetak atributnya menggunakan perpustakaan Kubernetes Go?
Bermula dengan Kubernetes Go Library: Aplikasi Pelanggan Mudah
Apabila bekerja dengan Kubernetes, pustaka Go menyediakan antara muka yang mudah untuk berinteraksi dengan API. Walau bagaimanapun, dokumentasi dan contoh kadangkala boleh menjadi tidak segerak dengan versi pustaka terkini. Untuk menangani perkara ini, mari kita selami contoh mudah yang menunjukkan cara untuk bermula.
Objektif: Dapatkan semula objek Perkhidmatan mengikut nama dan cetak atributnya, seperti nodePort.
Penyelesaian:
Selepas mencuba dan mendapatkan panduan daripada saluran Kubernetes Slack, coretan kod berikut memberikan contoh yang berfungsi:
<code class="go">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) } }</code>
Pelaksanaan:
Nota: Sementara itu mungkin untuk mencapai hasil yang sama menggunakan API RESTful, menggunakan pustaka Go membolehkan kod yang lebih diperkemas dan idiomatik.
Atas ialah kandungan terperinci Bagaimanakah saya boleh mendapatkan semula objek Perkhidmatan mengikut nama dan mencetak atributnya menggunakan perpustakaan Kubernetes Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!