gpt4 book ai didi

在 gRPC 服务前使用 Envoy 代理时出现 SSL 错误 ERR_CERT_AUTHORITY_INVALID

转载 作者:太空宇宙 更新时间:2023-11-03 13:20:24 24 4
gpt4 key购买 nike

我开发了一个部署在 Kubernetes 集群上的 gRPC 服务,我使用来自 nodejs 客户端的 grpc-web 连接到它。这意味着我需要在服务前面有一个代理。一切都与 this envoy configuration 完美配合没有 SSL,但现在我需要保护连接以使其为生产做好准备。

这是我完成的步骤

1) 生成 key ,在使用 this tutorial 询问时输入我的域 simulation.terrarium.ai

2) 编辑 Dockerfile 添加 key

FROM envoyproxy/envoy:latest

COPY envoy-proxy-tls.yaml /etc/envoy.yaml

EXPOSE 9091

ADD ./certs/simulation.terrarium.ai.crt /etc/simulation.terrarium.ai.crt
ADD ./certs/simulation.terrarium.ai.key /etc/simulation.terrarium.ai.key
ADD ./certs/rootCA.crt /etc/rootCA.crt

WORKDIR /etc/envoy
CMD /usr/local/bin/envoy -c /etc/envoy.yaml

3) 更新了 envoy 配置以在端口上使用 tls

It's much easier to read this config file with highlighting so here is a gist of it.

发生了什么
我这样调用我的服务

var simService = new SimulationServiceClient(ServerAddress, null, null);

var request = new CreateSpectatorRequest();
request.setApi(API_VERSION);
request.setId(this.clientId);
var metadata = {};
var stream = simService.createSpectator(request, metadata);
stream.on("data", this.onData);
stream.on("status", this.onStatus);
stream.on("end", this.onEnd);

此时我的 grpc 服务和 envoy 代理在 kubernetes 集群中运行,就像我在添加 TLS 之前所做的一样。当我尝试从我的浏览器连接时,出现此错误:

https://simulation.terrarium.ai:9091/v1.SimulationService/SubscribeSpectatorToRegion net::ERR_CERT_AUTHORITY_INVALID

我很难调试它,因为我不确定错误可能发生的确切位置。任何帮助将不胜感激!

最佳答案

我正在使用 GKE 并刚刚找到显示 how to use a Google Managed SSL Certificate 的链接.

它非常适合我!抱歉,我无法完全解决这个问题,但这是一种更简单的替代方法,因为它们还可以处理证书的自动化。

关于在 gRPC 服务前使用 Envoy 代理时出现 SSL 错误 ERR_CERT_AUTHORITY_INVALID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55639408/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com