外部服务获取服务ip时出现稳定/ mongodb错误

时间:2019-07-23 07:59:54

标签: mongodb kubernetes kubernetes-helm

尝试设置我通过舵图通过部署的mongo服务的服务ip时

kubectl get svc --namespace default mymongo-mongodb --template "{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"

我说错了

  

在以下位置执行“输出”:错误调用索引:无类型nil的索引

平台:

google cloud实例

kubernates版本:

1.15.0

头盔版本

v2.14.2

已经成功部署了该服务,并能够通过端点和命令来访问它

  kubectl run --namespace default mymongo-mongodb-client --rm --tty -i --restart='Never' --image bitnami/mongodb --command -- mongo admin --host mymongo-mongodb --authenticationDatabase admin -u root -p $MONGODB_ROOT_PASSWORD

但是当我设置service-ip以使用

在群集外部访问它时
kubectl get svc --namespace default mymongo-mongodb --template "{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"

将错误获取为:

  

执行模板时出错:模板:输出:1:10:在以下位置执行“输出”:错误调用索引:无类型nil的索引。

在头盔mongodb图表提供的value.yaml上进行的配置

# Kubernetes service type
service:
  annotations: {}
  type: LoadBalancer
  # clusterIP: None
  port: 27017

  ## Specify the nodePort value for the LoadBalancer and NodePort service types.
  ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
  ##
  nodePort: 32007

  ## Specify the externalIP value ClusterIP service type.
  ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#external-ips
  externalIPs: [102.226.201.198]

  ## Specify the loadBalancerIP value for LoadBalancer service types.
  ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer
  ##
  loadBalancerIP: 78.11.24.19/24

  ## Specify the loadBalancerSourceRanges value for LoadBalancer service types.
  ## ref: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service
  ##
  loadBalancerSourceRanges: [78.11.24.19/24,78.11.24.20/24]

1 个答案:

答案 0 :(得分:0)

kubectl get svc --namespace default mymongo-mongodb --template "{{- if .status.loadBalancer  }}{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}{{ end }}"