如何解决使用 Consul 作为特使代理的 xds 管理服务器,无需 consul 连接
我正在处理一个项目,我想使用 envoy
作为 xds 服务器来配置 consul
。但我不想使用 consul connect
。我只想使用 consul 进行服务发现和 xds 服务器。
我已经使用启用 grpc 端点的 -dev
模式启动了 consul 代理,并且我已经注册了一个服务 hello-service
,我可以在 consul ui
中看到它。
我的准系统特使配置
# admin web panel
admin:
access_log_path: ./admin_logs
address:
socket_address:
address: 0.0.0.0
port_value: 9902
dynamic_resources:
cds_config:
ads: {}
ads_config:
api_type: grpc
transport_api_version: v3
grpc_services:
- google_grpc:
target_uri: http://localhost:8502
stat_prefix: grpc-xds-service
我正在尝试从已注册的 hello-service
的 consul 中获取一些配置,例如集群/端点,但是当我启动特使进程时,我收到了此警告。
[2021-07-11 19:16:05.782][11825][warning][config] [bazel-out/k8-opt/bin/external/envoy/source/common/config/_virtual_includes/grpc_stream_lib/common/config/grpc_stream.h:93] StreamAggregatedResources gRPC config stream closed: 13,
我对这个错误的理解是与管理服务器的连接失败。但是在 consul 日志中,我可以看到 grpc 端口已启动。
Client Addr: [127.0.0.1] (HTTP: 8500,HTTPS: -1,gRPC: 8502,DNS: 8600)
解决方法
Consul 的 xDS 服务器不是为在 Connect 之外使用而设计的,因此尚未经过测试或验证,无法在该上下文之外提供 CDS/EDS 数据。
您可能想看看 consul-envoy-xds 或 envoy-control,它们都可以提供您正在寻找的 xDS 功能,而无需您部署成熟的服务网格。>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。