且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何使用 Kubernetes Go 库创建一个简单的客户端应用程序?

更新时间:2023-11-14 10:56:34

所以经过一些实验和来自 k8s Slack 频道的提示,我有了这个例子.也许有人可以使用正确的导入路径更新示例.

So after a little experimentation and a hint from the k8s Slack channel, I have this example. Perhaps someone can update the example with a proper import path.

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)
    }
}