简体   繁体   English

使用本机k8s python客户端与k8s运算符添加的API进行交互

[英]interact with API added by k8s operator using native k8s python client

It's possible to talk to k8s's API, for instance talking to CoreV1Api: 可以与k8s的API对话,例如与CoreV1Api对话:

from kubernetes import client, config
v1 = client.CoreV1Api()
k8s_corev1_api = client.CoreV1Api()
k8s_corev1_api.read_namespaced_service("myservice", 'default')

If I add an operator to k8s, for instance redis-operator , this operator adds an API endpoint redisfailover to k8s. 如果我向k8s添加一个运算符,例如redis-operator ,则该运算符将一个API端点redisfailover添加到k8s。 Is it possible to interact with it using native k8s Python client ? 是否可以使用本机k8s Python客户端与之交互?

Yes, redisfailover is actually a Custom Resource , created by the Redis Operator. 是的, redisfailover实际上是Redis Operator创建的Custom Resource You can interact with custom resources with the CustomObjectsApi , very similarly to your above example: 您可以使用CustomObjectsApi与自定义资源进行交互,与上面的示例非常相似:

api = client.CustomObjectsApi()
api.get_namespaced_custom_object(
    group='databases.spotahome.com',
    version='v1',
    namespace='default',
    plural='redisfailovers',
    name='myredisfailover'
)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM