【问题标题】:Golang gRPC Client connecting to GKEGolang gRPC 客户端连接到 GKE
【发布时间】:2020-10-25 02:34:33
【问题描述】:

我正在尝试在 GKE 上部署 gRPC,并按照本教程进行操作 - https://cloud.google.com/solutions/exposing-grpc-services-on-gke-using-envoy-proxy

我完成了一切,但我似乎无法在 golang 上运行 gRPC,而我能够在 grpcurl 上运行它。

有人有什么想法吗?

【问题讨论】:

    标签: go kubernetes google-kubernetes-engine grpc kubernetes-ingress


    【解决方案1】:

    我在探索了 grpcurl 的内部工作原理后解决了这个问题。对于任何可能被卡住的人来说,这就是区别......

    // Not working...
    conn, err = grpc.Dial(host, grpc.WithInsecure())
    
    // Working...
    var tlsConf tls.Config
    tlsConf.InsecureSkipVerify = true
    var creds = credentials.NewTLS(&tlsConf)
    conn, err = grpc.Dial(host, grpc.WithTransportCredentials(creds))
    

    之前我使用了标志grpc.WithInsecure()。它没有用,所以探索 grpcurl,我发现他们使用的是grpc.WithTransportCredentials(),而不是tls.Config,而是将InsecureSkipVerify 设置为true。结果很好。

    【讨论】:

      猜你喜欢
      • 2019-07-20
      • 2021-09-27
      • 2021-07-15
      • 1970-01-01
      • 2020-09-23
      • 1970-01-01
      • 2018-09-03
      • 2017-05-25
      • 2017-12-24
      相关资源
      最近更新 更多