目录
阅读时间: 3 分钟


大家好。我希望你们都过得很好。在这篇博客中,我们将看到如何使用 Kubernetes python客户端创建一个部署。我们都知道,通常我们使用kubectl命令来创建、列出、更新、删除kubernetes资源。但在这篇博客中,我们将看到我们如何使用python来做这些事情的资源。它将会很有趣,请继续关注。
先决条件 :
在我们开始使用kubernetes python客户端创建部署之前。我们需要遵循一些先决条件,比如。
所以,我们需要安装Kubernetes Python客户端。
$ pip install kubernetes


kubernetes python客户端现在已经成功安装。
所以;现在让我们看看如何通过kubernetes python客户端创建一个部署。
创建部署。
现在我在我的桌面上创建了一个目录,名字是deployment。


或者在这个目录中,我创建了两个文件,即 create-deployment.py nginx-deployment.yaml 。


为什么我创建了nginx-deployment.yaml文件,因为我通过传递yaml文件来创建部署。
现在,我创建了部署,为此我必须在create-deployment.py文件中导入python客户端。
from kubernetes import client, config
下面是通过python客户端创建部署的代码。
from os import path
import yaml
from kubernetes import client, config
def main():
# Configs can be set in Configuration class directly or using helper
# utility. If no argument provided, the config will be loaded from
# default location.
config.load_kube_config()
with open(path.join(path.dirname(__file__), "nginx-deployment.yaml")) as f:
dep = yaml.safe_load(f)
k8s_apps_v1 = client.AppsV1Api()
resp = k8s_apps_v1.create_namespaced_deployment(
body=dep, namespace="default")
print("Deployment created. status='%s'" % resp.metadata.name)
if __name__ == '__main__':
main()
这里是我的nginx-deployment.yaml文件,我在create-deployment.py文件中传递了这个文件。
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.15.4
ports:
- containerPort: 80
现在,让我们使用命令来运行create-deployment.py文件。
python3 create-deployment.py


现在,如果我检查我的部署是否被创建,我将简单地运行该命令。
kubectl get deployment


所以;你可以看到我的部署nginx-deployment已经成功创建。
总结。
所以;在这篇博客中,我们已经看到了我们是如何使用kubernetes python客户端轻松创建部署的。我希望这篇博客能够帮助你。
祝你学习愉快...
