问题标签 [envoyproxy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
istio - pod 中的服务(启用了特使代理)无法连接到 redis pod
步骤 1. 我在没有 envoy sidecar 的情况下部署了 redis。 https://github.com/kubernetes/charts/tree/master/stable/redis
在另一个没有特使的 pod 中运行 regis-cli 时,redis 连接工作正常。=> 证明了 redis 本身的功能。
步骤 2. 在另一个具有 envoy sidecar 注入的 pod 中部署服务。
尝试从服务连接到 redis 时,无法建立连接。
规格:目的地:服务:“*”端口:-端口:6379 协议:redis
有人有建议/想法吗?
microservices - 如何部署 Envoy EDS/SDS
这是一个微服务部署问题。您将如何部署Envoy SDS(服务发现服务),以便其他 Envoy 代理可以找到 SDS 服务器主机,以便发现其他服务来构建服务网格。我应该将它放在具有 DNS 名称(单点故障)的负载均衡器后面,还是只在每台机器上本地运行 SDS,以便其他微服务可以访问它?或者有没有更好的部署方式,可以将 SDS 集群动态添加到 envoy 配置中而不会出现单点故障?
docker - 与使用 istio envoy 代理运行的容器的最大 websocket 连接数
我似乎在使用 istio 代理的容器中达到最大 websocket 连接数的限制
它似乎在 1024 处用完(这似乎是默认值)
我还尝试将我的 --default-ulimit for nofiles 增加到 102400:102400 但我怀疑它受 istio 限制
我也尝试添加 DestinationPolicy 但这也没有帮助
grpc - 如何使用 envoy、nomad 和 consul 配置 gRPC 请求的动态路由
我们使用nomad将我们的应用程序(提供gRPC端点)部署为任务。然后使用nomad 的 service stanza将任务注册到Consul。
我们的应用程序的路由是通过envoy proxy实现的。我们在 IP 上运行负载均衡的中央特使实例10.1.2.2
。
路由到哪个端点/任务的决定当前基于host
标头,并且每个任务都注册为<$JOB>.our.cloud
. 这导致了两个问题。
访问服务时,必须为负载均衡器 IP 注册 DNS 名称,这会导致
/etc/hosts
类似的条目使用 可以部分缓解这个问题
dnsmasq
,但是当我们添加新服务时仍然有点烦人。不可能同时运行多个提供相同 gRPC 服务的服务。例如,如果我们决定测试一个服务的新实现,我们需要以
job
相同的名称以相同的名称运行它,并且需要实现在 gRPC 服务文件中定义的所有服务。
我们一直在讨论的一个可能的解决方案是使用tags
该service
节的 来添加定义提供的 gRPC 服务的标签,例如:
但是Consul不鼓励这样做:
现在我们正在考虑使用像这样的标签来做这件事grpc-my-company-firstpackage__ServiceA
......这看起来真的很恶心,虽然:-(
所以我的问题是:
- 有没有人做过这样的事情?
- 如果是这样,关于如何路由到由 Consul 自动发现的 gRPC 服务有什么建议?
- 有人对此有其他想法或见解吗?
- 这是如何在例如istio中完成的?
docker - GRPC 服务网格的 Envoy 代理
我正在尝试为我的 GRPC 服务的负载平衡和发现功能做一个非常基本的 Envoy 设置。假设一个非常基本的设置,我在 Docker 容器中运行了两个 GRPC 服务。根据 Envoy 文档,我应该使用“envoy.tcp_proxy”过滤器类型。在这里,我做了一个非常简单的 yml 配置,但无法运行:
显然我做错了什么,但是在站点的任何地方都找不到完整的 GRPC 到 GRPC 服务网格 Envoy 配置示例。端口 30270 是我在服务器端公开和侦听的端口。
鉴于上述配置说:
初始化配置“/etc/envoy.yaml”时出错:envoy.tcp_proxy 工厂返回 nullptr 而不是空配置消息
我还需要使用 HTTP 管理器来路由吗?有人可以分享一个例子吗?
docker - 使用 gRPC 路由的 Envoy
我似乎无法让 Envoy 与部署的多个 gRPC 服务一起工作。gRPC 调用总是转到同一个实例。Envoy 负载均衡器如何发现使用 docker-compose scale 启动了相同服务的其他实例?
我使用的 Service1 配置:
现在调用者服务具有 gRPC 客户端初始化:
问题是,每当我使用 docker-compose scale 命令启动多个 service1 实例时,新启动的实例永远不会收到任何呼叫。我的配置问题出在哪里?
istio - Istio mTLS 流
我对 istio 的 mTLS 流程有点困惑。在 bookinginfo 示例中,我看到服务正在通过 http 而不是 https 进行调用。如果服务之间存在 mTLS,那么服务会进行 http 调用吗?
是不是来自服务的 HTTP 会转到将其转换为 https 的特使代理?但是,然后在服务器的 envoy-proxy 日志中,我在日志中看到了 http。
任何机构都可以解释这是如何工作的吗?
问候
bazel - 在 linux + ppc64le 上编译 GoStdlib 失败
我意识到这是不受支持的,但我试图了解是否有解决方法。
bazel build //src/envoy
我正在或多或少地使用 bazel 0.11.1(在我的主机上编译)编译 istio/proxy。
从阅读其他问题来看,我似乎需要使用 gcc 而不是 g++ 编译 GoStdlib,但事实并非如此:
kubernetes - 服务网格和异步服务
我计划在我的基础设施中引入 K8s/Istio。现在我有很多使用 RabbitMQ 相互通信的服务。
服务网格概念似乎假设所有服务都应该是同步的。
我想至少让我的一些服务保持异步,并利用 istio 提供的 Mutual TLS 身份验证以及聚合监控。
是否有任何工具/方法可以帮助我简化同步和异步服务的管理?
谢谢,
kubernetes - 为什么 envoy sidecar 可以控制我的流量?
我继续跑istio
。Kubernetes
我想知道特使边车是如何工作的。例如,sidecar 注入 pod 后,原始容器在没有EgressRule
. 它是如何工作的?