Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes 为什么头盔只取范围内地图的最后一个值_Kubernetes_Kubernetes Helm_Go Templates - Fatal编程技术网

Kubernetes 为什么头盔只取范围内地图的最后一个值

Kubernetes 为什么头盔只取范围内地图的最后一个值,kubernetes,kubernetes-helm,go-templates,Kubernetes,Kubernetes Helm,Go Templates,我是新掌舵的,如果我不清楚,如果我使用了错误的术语,那么很抱歉 我试图迭代一个IP列表,在一个范围内提供它们,并为一个无头服务创建一个IP数组 这是我的模板: kind: Endpoints apiVersion: v1 metadata: name: backend-modbile-db-service namespace: {{ .Release.Namespace }} subsets: - addresses: {{- range $key, $val := .Value

我是新掌舵的,如果我不清楚,如果我使用了错误的术语,那么很抱歉

我试图迭代一个IP列表,在一个范围内提供它们,并为一个无头服务创建一个IP数组

这是我的模板:

kind: Endpoints
apiVersion: v1
metadata:
 name: backend-modbile-db-service
 namespace: {{ .Release.Namespace }}
subsets:
 - addresses:
     {{- range $key, $val := .Values.DatabaseEndpoints }}
      - {{ $key }}: {{ $val }}
     {{- end }}
   ports:
     - port: {{ .Values.DatabasePort| default 5984 }}
       name: backend-mobile-db-service
关于这些IP的Value.yaml如下所示:

#backend-mobile-db-service

DatabasePort: 5984
DatabaseEndpoints:
  ip: 192.168.0.50
  ip: 192.168.0.51
  ip: 192.168.0.52
  ip: 192.168.0.55
  ip: 192.168.0.56
  ip: 192.168.0.57
我希望模板将获取值和索引并将它们放入我的服务数组中,但它只获取value.yaml映射中的最后一个key:value对:

# Source: backend-mobile/templates/backend-mobile-db-service.yaml
kind: Endpoints
apiVersion: v1
metadata:
 name: backend-modbile-db-service
 namespace: default
subsets:
 - addresses:
      - ip: 192.168.0.57
   ports:
     - port: 5984
       name: backend-modbile-db-service
然而,我期望这样的输出:

# Source: backend-mobile/templates/backend-mobile-db-service.yaml
kind: Endpoints
apiVersion: v1
metadata:
 name: backend-modbile-db-service
 namespace: default
subsets:
 - addresses:
      - ip: 192.168.0.50
      - ip: 192.168.0.51
       [...]
      - ip: 192.168.0.52
   ports:
     - port: 5984
       name: backend-modbile-db-service
我犯了什么错误?
提前感谢:)

因为您正在一次又一次地覆盖ip,所以您只能看到最后一个。如果要声明ip数组,应执行以下操作:

DatabaseEndpoints:
  ip:
  - 192.168.0.50
  - 192.168.0.51
  - 192.168.0.52
  - 192.168.0.55
  - 192.168.0.56
  - 192.168.0.57
因此,您的模板应更改为如下所示:

subsets:
 - addresses:
     {{- range .Values.DatabaseEndpoints.ip }}
      - ip: {{ . }}
     {{- end }}

因为您正在一次又一次地覆盖ip,所以您只能看到最后一个。如果要声明ip数组,应执行以下操作:

DatabaseEndpoints:
  ip:
  - 192.168.0.50
  - 192.168.0.51
  - 192.168.0.52
  - 192.168.0.55
  - 192.168.0.56
  - 192.168.0.57
因此,您的模板应更改为如下所示:

subsets:
 - addresses:
     {{- range .Values.DatabaseEndpoints.ip }}
      - ip: {{ . }}
     {{- end }}