Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/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 如何在不使用kubectl端口转发的情况下在生产中部署Istio Jaeger UI跟踪_Kubernetes_Istio_Jaeger_Distributed Tracing - Fatal编程技术网

Kubernetes 如何在不使用kubectl端口转发的情况下在生产中部署Istio Jaeger UI跟踪

Kubernetes 如何在不使用kubectl端口转发的情况下在生产中部署Istio Jaeger UI跟踪,kubernetes,istio,jaeger,distributed-tracing,Kubernetes,Istio,Jaeger,Distributed Tracing,我正在尝试为分布式跟踪部署Istio Jaeger UI。目前,我正在使用命令kubectl port forward-n monitoring prometheus-prometheus-operator-prometheus-0 9090使用kubectl port forward。但是它还在继续,所以我怎么能在生产中做到呢?是否有其他在生产中部署的方法。以及如何使其在https上运行?根据文档。有不同的方法来访问遥测 推荐的方法是使用https而不是http创建安全访问 两种方法的注意事项

我正在尝试为分布式跟踪部署Istio Jaeger UI。目前,我正在使用命令
kubectl port forward-n monitoring prometheus-prometheus-operator-prometheus-0 9090使用kubectl port forward。但是它还在继续,所以我怎么能在生产中做到呢?是否有其他在生产中部署的方法。以及如何使其在
https
上运行?

根据文档。有不同的方法来访问遥测

推荐的方法是使用https而不是http创建安全访问

两种方法的注意事项:

此选项仅包括保护传输层。您还应该将遥测插件配置为在外部公开时需要身份验证

请注意,jaeger本身不支持使用apachehttpd服务器的身份验证方法和解决方法

  • 通过招聘,您可以使用网关(SDS):

    a)确保在istio安装过程中,您已在入口网关启用SDS
    ——设置网关。istio入口网关。SDS.enabled=true
    ——设置跟踪。enabled=true
    ,以便进行跟踪

    b)为测试目的创建自签名证书。您可以使用此选项

    c)请遵循和

  • 创建虚拟服务和网关:


  • apiVersion:networking.istio.io/v1alpha3 种类:网关 元数据: 姓名:mygateway 规格: 选择器: istio:ingressgateway#使用istio默认入口网关 服务器: -端口: 电话:443 名称:https 协议:HTTPS tls: 模式:简单 credentialName:“httpbin credential”#必须与步骤2中装入的机密文件相同。 主持人: -“httpbin.example.com”##您可以对所有主机应用“*” apiVersion:networking.istio.io/v13 种类:虚拟服务 元数据: 名称:追踪 规格: 主持人: -“httpbin.example.com”##您可以对所有主机应用“*” 网关: -我的网关 http: -匹配: -港口:443 路线: -目的地: 端口: 电话:80 主机:tracing.istio-system.svc.cluster.local curl-kvI https://xx.xx.xx.xx/ *正在尝试xx.xx.xx.xx。。。 *TCP_节点集 *已连接到xx.xx.xx.xx(xx.xx.xx.xx)端口443(#0) *阿尔卑斯山,提供h2 *ALPN,提供http/1.1 *密码选择:全部:!出口:!出口40:!出口56:!阿努尔:!低:!RC4:@强度 *已成功设置证书验证位置: *CAfile:/etc/ssl/certs/ca-certificates.crt CApath:/etc/ssl/certs *TLSv1.2(OUT)、TLS标头、证书状态(22): *TLSv1.2(输出),TLS握手,客户端问候(1): *TLSv1.2(IN)、TLS握手、服务器hello(2): *TLSv1.2(IN),TLS握手,证书(11): *TLSv1.2(IN)、TLS握手、服务器密钥交换(12): *TLSv1.2(IN),TLS握手,服务器完成(14): *TLSv1.2(输出)、TLS握手、客户端密钥交换(16): *TLSv1.2(OUT),TLS更改密码,客户端hello(1): *TLSv1.2(输出),TLS握手,完成(20): *TLSv1.2(IN),TLS更改密码,客户端hello(1): *TLSv1.2(IN),TLS握手,完成(20): *使用TLSv1.2/ECDHE-RSA-AES128-GCM-SHA256的SSL连接 *ALPN,服务器接受使用h2 >HEAD/HTTP/1.1 >主持人:xx.xx.xx.xx >用户代理:curl/7.52.1 >接受:*/* > *连接状态已更改(最大并发流已更新)!

    希望此帮助

    是您的入口选项吗?您是指istio入口网关?根据文档,有不同的方式访问istio仪表板Kiali Prometheus Grafana跟踪:1。2.或者,使用Kubernetes入口。请看一看,给我们一个反馈,你正在尝试做什么。请提供您使用的版本以及如何部署ISTIO+addons@Hanx我正在使用
    Istio 1.3.4
    ,我试图以不安全的方式(
    Http
    )使用
    遥测附加组件部署
    Jaeger
    。除此之外,我想在
    https
    中实现它。我每天使用不同的集群。因此,不可能将该外部IP地址指向我的域。那么我该怎么做呢?是的,正如@Hanx还提到的,您可以使用例如nginx入口控制器。结合cert manager,您还可以通过letsencrypt等方式使用https。
    apiVersion: networking.istio.io/v1alpha3
    kind: Gateway
    metadata:
      name: mygateway
    spec:
      selector:
        istio: ingressgateway # use istio default ingress gateway
      servers:
      - port:
          number: 443
          name: https
          protocol: HTTPS
        tls:
          mode: SIMPLE
          credentialName: "httpbin-credential" # must be the same as secret crated in the step 2.
        hosts:
        - "httpbin.example.com" ## You can apply "*" for all hosts
    
    apiVersion: networking.istio.io/v1alpha3
    kind: VirtualService
    metadata:
      name: tracing
    spec:
      hosts:
      - "httpbin.example.com" ## You can apply "*" for all hosts
      gateways:
      - mygateway
      http:
      - match:
        - port: 443
        route:
        - destination:
            port:
              number: 80
            host: tracing.istio-system.svc.cluster.local
    
    curl -kvI https ://xx.xx.xx.xx/
    *   Trying xx.xx.xx.xx...
    * TCP_NODELAY set
    * Connected to xx.xx.xx.xx (xx.xx.xx.xx) port 443 (#0)
    * ALPN, offering h2
    * ALPN, offering http/1.1
    * Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
    * successfully set certificate verify locations:
    *   CAfile: /etc/ssl/certs/ca-certificates.crt
      CApath: /etc/ssl/certs
    * TLSv1.2 (OUT), TLS header, Certificate Status (22):
    * TLSv1.2 (OUT), TLS handshake, Client hello (1):
    * TLSv1.2 (IN), TLS handshake, Server hello (2):
    * TLSv1.2 (IN), TLS handshake, Certificate (11):
    * TLSv1.2 (IN), TLS handshake, Server key exchange (12):
    * TLSv1.2 (IN), TLS handshake, Server finished (14):
    * TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
    * TLSv1.2 (OUT), TLS change cipher, Client hello (1):
    * TLSv1.2 (OUT), TLS handshake, Finished (20):
    * TLSv1.2 (IN), TLS change cipher, Client hello (1):
    * TLSv1.2 (IN), TLS handshake, Finished (20):
    * SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256
    
    * ALPN, server accepted to use h2
    > HEAD / HTTP/1.1
    > Host: xx.xx.xx.xx
    > User-Agent: curl/7.52.1
    > Accept: */*
    >
    * Connection state changed (MAX_CONCURRENT_STREAMS updated)!
    < HTTP/2 200
    HTTP/2 200
    < content-type: text/html; charset=utf-8
    content-type: text/html; charset=utf-8
    < date: Thu, 07 Nov 2019 10:01:33 GMT
    date: Thu, 07 Nov 2019 10:01:33 GMT
    < x-envoy-upstream-service-time: 1
    x-envoy-upstream-service-time: 1
    < server: istio-envoy
    server: istio-envoy