你好,谢谢你!
我有以下问题:
我正在尝试使用Helm通过AWS EKS安装prometheus,但希望有机会将AWS ELB配置为私有的并可以从我的VPC内部使用(默认情况下,它将被创建为带有FQDN的公共LoadBalancer)。< / p>
当我执行以下操作时:
helm install stable/prometheus --name prometheus \
--namespace prometheus \
--set alertmanager.persistentVolume.storageClass="gp2" \
--set server.persistentVolume.storageClass="gp2" \
--set server.service.type=LoadBalancer \
--set server.service.annotations{0}="service.beta.kubernetes.io/aws-load-balancer-internal":"0.0.0.0/0"
它将创建一个不包含注释的标准LoadBalancer服务:
$ kubectl describe service/prometheus-server -n=prometheus
Name: prometheus-server
Namespace: prometheus
Labels: app=prometheus
chart=prometheus-11.7.0
component=server
heritage=Tiller
release=prometheus
Annotations: <none>
Selector: app=prometheus,component=server,release=prometheus
Type: LoadBalancer
IP: 10.100.255.81
我在玩引号和其他可能的语法变体,但是没有运气。请告知正确的注释用法。
答案 0 :(得分:2)
这有点棘手,但是您可以这样做:
helm install stable/prometheus --name prometheus \
--namespace prometheus \
--set alertmanager.persistentVolume.storageClass="gp2" \
--set server.persistentVolume.storageClass="gp2" \
--set server.service.type=LoadBalancer \
--set server.service.annotations."service\.beta\.kubernetes\.io/aws-load-balancer-internal"="0.0.0.0/0"
您可以在in the Helm docs处查看设置的格式和限制。例如,
--set nodeSelector."kubernetes\.io/role"=master
成为:
nodeSelector:
kubernetes.io/role: master
✌️</ p>