kubernetes API中类似回调方法的选项
我一直在研究kubernetes REST API调用,以使用python客户端创建部署和服务。现在的情况是,我必须创建部署,当POD准备就绪时,我必须使用回调方法告诉用户他们的部署已经就绪。我可以像使用cli一样实现这一点kubernetes API中类似回调方法的选项,kubernetes,minikube,Kubernetes,Minikube,我一直在研究kubernetes REST API调用,以使用python客户端创建部署和服务。现在的情况是,我必须创建部署,当POD准备就绪时,我必须使用回调方法告诉用户他们的部署已经就绪。我可以像使用cli一样实现这一点 watch kubectl describe pod <pod-name> watch kubectl描述吊舱 调查吊舱的状况。 但是,如何实现当pod状态更改时调用的回调函数,例如从容器创建->就绪>/code>。 任何帮助都将不胜感激。我想您可以关注部署
watch kubectl describe pod <pod-name>
watch kubectl描述吊舱
调查吊舱的状况。
但是,如何实现当pod状态更改时调用的回调函数,例如从容器创建->就绪>/code>。
任何帮助都将不胜感激。我想您可以关注部署应用程序的名称空间,并对此作出反应
诸如您在kubectl description pod
末尾看到的事件将持久保存在etcd中,并提供集群中发生的事情的高级信息。要列出所有事件,您可以使用kubectl get events
有一个Python Kubernetes客户端库
pip install kubernetes
from kubernetes import client, config
def get_pods(name, exact=False, namespace='default'):
# TODO check if this could be created once in an object.
config.load_kube_config(os.path.join(os.environ["HOME"], '.kube/config'))
v1 = client.CoreV1Api()
pod_list = v1.list_namespaced_pod(namespace)
if exact:
relevant_pods = [pod for pod in pod_list.items if name == pod.metadata.name]
else:
relevant_pods = [pod for pod in pod_list.items if name in pod.metadata.name]
return relevant_pods
您可以在大多数用例中使用气流
我写了一个库,它对库伯内特斯事件和更多事件做出反应
它是被动的,这意味着它直接与Helm的声明式风格相反,并且是一个可调试的python部署工具,可以替代Helm
安装焊枪
使用开源示例
与Apache Airflow同步
但我是否可以实现对事件的回调,而不是使用kubectl持续监视?