我使用 k8s python 客户端有以下代码:
config.load_incluster_config()
v1 = client.CoreV1Api()
object_meta = k8s.V1ObjectMeta(generate_name='myprefix',
namespace='my_name_space')
body = k8s.V1Secret(string_data=data, kind='Secret', type='my_type', metadata=object_meta)
api_response = v1.create_namespaced_secret(namespace='my_name_space', body=body)
这会在我的 K8s 命名空间中创建一个 secret 。由于我使用的是generate_name,因此它使用我给出的前缀为其分配了一些随机值,因此名称可以是myprefix-fbdsu3
或类似的名称。
我的问题是如何在创建 secret 后获取分配给该 secret 的名称?
最佳答案
您可以将 secret 名称传递到此代码中并获取 secret 的示例
from kubernetes import client, config
config.load_kube_config()
v1 = client.CoreV1Api()
secret = v1.read_namespaced_secret("Secret-name", "Namespace-Name")
print(secret)
解码 secret 并获取详细信息
from kubernetes import client, config
import base64
import sys
config.load_kube_config()
v1 = client.CoreV1Api()
sec = str(v1.read_namespaced_secret("secret-name", "namespace-name").data)
pas = base64.b64decode(sec.strip().split()[1].translate(None, '}\''))
print(pas)
了解更多信息:https://www.programcreek.com/python/?CodeExample=create+secret
关于python - 如何查找 kubernetes 中分配给 V1ObjectMeta 的名称是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68150654/