python - 如何在 Kubernetes 中找到分配给 V1ObjectMeta 的名称是什么?
问题描述
我使用 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 命名空间中创建一个秘密。由于我使用的是 generate_name,它为它分配了一些带有前缀的随机值,因此名称可以是myprefix-fbdsu3
或类似的名称。
我的问题是如何在创建后获得分配给该秘密的名称?
解决方案
您可以将秘密名称传递到此代码中并获取秘密的示例
from kubernetes import client, config
config.load_kube_config()
v1 = client.CoreV1Api()
secret = v1.read_namespaced_secret("Secret-name", "Namespace-Name")
print(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
推荐阅读
- javascript - Luxon:如何忽略特定日期的默认时区
- java - 如何在我的 TextArea 中显示控制台中显示的文本?
- r - H2O 弹性网络 lambda 搜索不会选择最小化验证偏差的 lambda
- swift - 无法将类型“XXX.Protocol”的值转换为预期的参数类型“XXX.Type”
- python - 使用 pyfmi 创建 2 元组作为 fmu 模型的 model.simulate() 的输入时出错
- c++ - 为什么我不能像 someClassObject++5 那样在后缀 operator++ 中使用虚拟参数?
- html - 有没有办法播放在 html5 中同步的多个音频文件?
- automated-tests - 脚本内的Testcafe记者
- java - 在maven依赖树中,父依赖是否覆盖了子的范围?
- c - 不知道如何修复错误