客户端库

本页面包含基于各种编程语言使用 Kubernetes API 的客户端库概述。

在使用 Kubernetes REST API 编写应用程序时,您并不需要自己实现 API 调用和 “请求/响应” 类型。您可以根据自己的编程语言需要选择使用合适的客户端库。

客户端库通常为您处理诸如身份验证之类的常见任务。如果 API 客户端在 Kubernetes 集群中运行,大多数客户端库可以发现并使用 Kubernetes 服务帐户进行身份验证,或者能够理解 kubeconfig 文件格式来读取凭据和 API 服务器地址。

官方支持的 Kubernetes 客户端库

以下客户端库由 Kubernetes SIG API Machinery 正式维护。

语言客户端库样例程序
Gogithub.com/kubernetes/client-go/浏览
Pythongithub.com/kubernetes-client/python/浏览
Javagithub.com/kubernetes-client/java浏览
dotnetgithub.com/kubernetes-client/csharp浏览
JavaScriptgithub.com/kubernetes-client/javascript浏览
Haskellgithub.com/kubernetes-client/haskell浏览

社区维护的客户端库

以下 Kubernetes API 客户端库是由社区,而非 Kubernetes 团队支持、维护的。

语言客户端库
Clojuregithub.com/yanatan16/clj-kubernetes-api
Gogithub.com/ericchiang/k8s
Java (OSGi)bitbucket.org/amdatulabs/amdatu-kubernetes
Java (Fabric8, OSGi)github.com/fabric8io/kubernetes-client
Lispgithub.com/brendandburns/cl-k8s
Lispgithub.com/xh4/cube
Node.js (TypeScript)github.com/Goyoo/node-k8s-client
Node.jsgithub.com/tenxcloud/node-kubernetes-client
Node.jsgithub.com/godaddy/kubernetes-client
Node.jsgithub.com/ajpauwels/easy-k8s
Perlmetacpan.org/pod/Net::Kubernetes
PHPgithub.com/maclof/kubernetes-client
PHPgithub.com/allansun/kubernetes-php-client
PHPgithub.com/travisghansen/kubernetes-client-php
Pythongithub.com/eldarion-gondor/pykube
Pythongithub.com/mnubo/kubernetes-py
Rubygithub.com/Ch00k/kuber
Rubygithub.com/abonas/kubeclient
Rubygithub.com/kontena/k8s-client
Rustgithub.com/clux/kube-rs
Rustgithub.com/ynqa/kubernetes-rust
Scalagithub.com/doriordan/skuber
dotNetgithub.com/tonnyeremin/kubernetes_gen
DotNet (RestSharp)github.com/masroorhasan/Kubernetes.DotNet
Elixirgithub.com/obmarg/kazan
Haskellgithub.com/soundcloud/haskell-kubernetes