gpt4 book ai didi

kubernetes - 使用 GoLang 模板模拟默认的 Kubernetes CLI 输出

转载 作者:行者123 更新时间:2023-12-02 11:55:30 24 4
gpt4 key购买 nike

我想自定义输出:

kubectl get pod . . .

使用 --output=go-template 而不是 --output=yaml--output=json

我的目的是使用一个 get 命令获取默认列(例如,NAME、READY、STATUS 等)之外的其他值(例如,容器端口):

kubectl get pods --output=go-template --template=$GO_TEMPLATE

#=>

NAME READY STATUS RESTARTS AGE CONTAINER PORTS . . .
. . . . . . . . . . . . . . . . . . . . .
client-qfr4s 1/1 Running 0 14d 80,443 . . .
. . . . . . . . . . . . . . . . . . . . .

什么是$GO_TEMPLATE

最佳答案

您可以使用 --output=custom-columns 标志将自定义列添加到 get 命令的输出中:

kubectl get pods \
--output=custom-columns='NAME:.metadata.name,STATUS:.status.phase,RESTARTS:.status.containerStatuses[].restartCount,CONATAINER_NAME:.spec.containers[*].name,PORT:.spec.containers[*].ports[*],READY:.status.containerStatuses[*].ready'

#=>

NAME STATUS RESTARTS CONATAINER_NAME PORT READY
nginx-6bc98f4797-7kv6m Pending 0 busy,nginx map[containerPort:8000 protocol:TCP] false,true
nginx-6bc98f4797-zv4sp Pending 0 busy,nginx map[containerPort:8000 protocol:TCP] false,true
php-apache-5986bb6b9-gllq8 Running 5 php-apache map[containerPort:80 protocol:TCP] true

您可以找到更多详细信息 here

关于kubernetes - 使用 GoLang 模板模拟默认的 Kubernetes CLI 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61560527/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com