【问题标题】:How to get creator information about particular resource from kubectl get or describe command如何从 kubectl get 或 describe 命令获取有关特定资源的创建者信息
【发布时间】:2019-03-07 02:50:38
【问题描述】:

我想知道谁通过 kubectl get 或 describe 命令创建了 pod。 我可以将此字段插入 Pod 吗?还是自定义资源定义? 请帮忙。

当我以用户 'Alice' 访问 kubernetes 集群并创建 pod 'sample-pod' 我想在 exec 'kubectl get pod sample-pod' 命令时看到如下。

NAME         READY   STATUS    RESTARTS   AGE    CREATEUSER
sample-pod   1/1     Running   0          10s    Alice

【问题讨论】:

    标签: kubernetes


    【解决方案1】:

    我假设有关经过身份验证的 Kubernetes 用户的信息不包含在 Pod core 架构对象的通用 API 参考列表中。因此,不可能从 Pod 规范中检索用户数据。实际上,您可以尝试使用通过RBAC 机制授予管理Kubernetes API 的Service accounts,这样您就可以在与特定用户相关的命名空间中创建特定的SA,并将其用于任何资源Kubernetes 创建目的。虽然通过相关对象配置模板中的.spec.serviceAccountName字段传播特定资源的SA名称信息,但您可以使用kubectl get命令中的custom-columns=选项调用它:

    kubectl get pods -o custom-columns=NAME:.metadata.name,SERVICE_ACCOUNT:.spec.serviceAccountName

    【讨论】:

    • 我明白了。这很有帮助!非常感谢。
    • 如果您发现答案对您很有价值,请对其进行评估以供任何进一步的贡献者研究。
    【解决方案2】:

    kubectl get pods -n -o yaml 将给出 pod 定义。您可以编辑并使用它来部署 pod。

    【讨论】:

    • 当我以用户 'Alice' 访问 kubernetes 集群并创建 pod 'sample-pod' 我希望看到 NAME sample-pod READY 1/1 STATUS Running RESTARTS 0 AGE 10s CREATE USER Alice
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多