0

我试图通过 istio gateway 和 istio virtual-service 暴露 istio 的监控服务:grafana、prometheus、kiali 和 jaeguer 但没有成功

奇怪的是通过curl访问时返回页面,但是通过浏览器访问时网关找不到应用程序

我试过好几种方式,放到默认的nasmespace,放到istio命名空间,重新创建服务器

非常欢迎任何帮助

  • 环境
SO: Ubuntu 20.04.2 LTS
Kubernetes: Microk8s 1.21/stable 

Client Version: version.Info{Major:"1", Minor:"21+", GitVersion:"v1.21.1-3+1f02fea99e2268", GitCommit:"1f02fea99e226878ded82f3e159f28a6706ce1fc", GitTreeState:"clean", BuildDate:"2021-05-12T21:06:02Z", GoVersion:"go1.16.3", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"21+", GitVersion:"v1.21.1-3+1f02fea99e2268", GitCommit:"1f02fea99e226878ded82f3e159f28a6706ce1fc", GitTreeState:"clean", BuildDate:"2021-05-12T21:02:46Z", GoVersion:"go1.16.3", Compiler:"gc", Platform:"linux/amd64"}

Istio: v1.5.1

错误

  • yaml 配置
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
  name: istio-gateway
  namespace: istio-system
spec:
  selector:
    istio: ingressgateway
  servers:
  - port:
      number: 80
      name: http
      protocol: HTTP
    hosts:
      - "grafana.myserver.com"
      - "prometheus.myserver.com"
      - "kiali.myserver.com"
      - "jaeger.myserver.com"
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: grafana-vs
  namespace: istio-system
spec:
  hosts:
  - "grafana.myserver.com"
  gateways:
  - istio-gateway
  http:
  - match:
    - uri:
        prefix: "/"
    route:
    - destination:
        port:
          number: 3000
        host: grafana.istio-system.svc.cluster.local
      weight: 100
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: prometheus-vs
  namespace: istio-system
spec:
  hosts:
  - "prometheus.myserver.com"
  gateways:
  - istio-gateway
  http:
  - match:
    - uri:
        prefix: "/"
    route:
    - destination:
        port:
          number: 9090
        host: prometheus.istio-system.svc.cluster.local
      weight: 100
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: kiali-vs
  namespace: istio-system
spec:
  hosts:
  - "kiali.myserver.com"
  gateways:
  - istio-gateway
  http:
  - match:
    - uri:
        prefix: "/"
    route:
    - destination:
        port:
          number: 20001
        host: kiali.istio-system.svc.cluster.local
      weight: 100
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: jaeger-vs
  namespace: istio-system
spec:
  hosts:
  - "jaeger.myserver.com"
  gateways:
  - istio-gateway
  http:
  - match:
    - uri:
        prefix: "/"
    route:
    - destination:
        port:
          number: 16686
        host: jaeger-query.istio-system.svc.cluster.local
      weight: 100
  • Istio 信息
apiVersion: v1
kind: Service
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"app":"istio-ingressgateway","chart":"gateways","heritage":"Tiller","istio":"ingressgateway","release":"istio"},"name":"istio-ingressgateway","namespace":"istio-system"},"spec":{"ports":[{"name":"status-port","port":15020,"targetPort":15020},{"name":"http2","nodePort":31380,"port":80,"targetPort":80},{"name":"https","nodePort":31390,"port":443},{"name":"tcp","nodePort":31400,"port":31400},{"name":"https-kiali","port":15029,"targetPort":15029},{"name":"https-prometheus","port":15030,"targetPort":15030},{"name":"https-grafana","port":15031,"targetPort":15031},{"name":"https-tracing","port":15032,"targetPort":15032},{"name":"tls","port":15443,"targetPort":15443}],"selector":{"app":"istio-ingressgateway","istio":"ingressgateway","release":"istio"},"type":"LoadBalancer"}}
  creationTimestamp: "2021-05-21T10:45:05Z"
  labels:
    app: istio-ingressgateway
    chart: gateways
    heritage: Tiller
    istio: ingressgateway
    release: istio
  name: istio-ingressgateway
  namespace: istio-system
  resourceVersion: "79445"
  selfLink: /api/v1/namespaces/istio-system/services/istio-ingressgateway
  uid: b2a9d401-8ecc-4c3a-bac2-a8db545b80e7
spec:
  clusterIP: 10.152.183.203
  clusterIPs:
  - 10.152.183.203
  externalTrafficPolicy: Cluster
  ipFamilies:
  - IPv4
  ipFamilyPolicy: SingleStack
  ports:
  - name: status-port
    nodePort: 30037
    port: 15020
    protocol: TCP
    targetPort: 15020
  - name: http2
    nodePort: 31380
    port: 80
    protocol: TCP
    targetPort: 80
  - name: https
    nodePort: 31390
    port: 443
    protocol: TCP
    targetPort: 443
  - name: tcp
    nodePort: 31400
    port: 31400
    protocol: TCP
    targetPort: 31400
  - name: https-kiali
    nodePort: 31537
    port: 15029
    protocol: TCP
    targetPort: 15029
  - name: https-prometheus
    nodePort: 32117
    port: 15030
    protocol: TCP
    targetPort: 15030
  - name: https-grafana
    nodePort: 31687
    port: 15031
    protocol: TCP
    targetPort: 15031
  - name: https-tracing
    nodePort: 32132
    port: 15032
    protocol: TCP
    targetPort: 15032
  - name: tls
    nodePort: 32291
    port: 15443
    protocol: TCP
    targetPort: 15443
  selector:
    app: istio-ingressgateway
    istio: ingressgateway
    release: istio
  sessionAffinity: None
  type: LoadBalancer
status:
  loadBalancer: {}
4

0 回答 0