【发布时间】:2022-02-01 01:51:46
【问题描述】:
作为 Kubernetes 资源定义的一部分,我想将某些 IP 列入白名单。 IP列表可以通过
找到$ kubectl get nodes -o wide --no-headers | awk '{print $7}'
#This prints something like
51.52.215.214
18.170.74.10
.....
现在, 在 Kubernetes 部署文件(比如 deployment.yaml)中,我想遍历这些值并将它们列入白名单。 我知道我们可以通过在 loadBalancerSourceRanges 下添加类似
#part of the deployment.yaml
loadBalancerSourceRanges
- 51.52.112.111
- 18.159.75.11
我想更新上面的 loadBalancerSourceRanges 以包含 $ kubectl 获取节点 -o 宽 --no-headers | awk '{打印 $7}'
我该怎么做?我不想硬编码主机 IP,而是希望通过 bash 或 ansible 或任何其他更简洁的方式以编程方式包含。
提前致谢, 乙肝
【问题讨论】:
-
请添加更多详细信息,完整的
deployment文件可能会有用。使用像yq 这样的工具不会那么难。 -
@java_enthu 已经提供了 3 个答案。它们中的任何一个有用吗?如果它解决了您的问题,请考虑接受答案 (stackoverflow.com/help/accepted-answer)。
-
@AndrewSkorkin 感谢您的“温柔提醒”:-)。
标签: bash kubernetes amazon-ec2 ansible ansible-facts