ljzsdut
GitHubToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeBack to homepage
Edit page

07 X Ds之基于 Rest管理服务器订阅

概述

以EDS为例,Cluster为静态定义,其各Endpoint通过EDS动态发现:

DS配置格式:

clusters: 
- name:
  ...
  eds_cluster_config: 
    service_name: ...
    eds_config:
      api_config_source:
        api_type: ... # API可经由REST或gRPC获取,支持的类型包括REST、GRPC和DELTA_GRPC
        cluster_names: ... # 提供服务的集群名称列表,仅能与REST类型的API一起使用;多个集群用于冗余之目的,故障时将循环访问; 
        refresh_delay: ... # REST API轮询时间间隔;
        request_timeout: ... # REST API请求超时时长,默认为1s;

注意:提供REST API服务的管理服务器(MS)也需要定义为Envoy上的集群,并由 eds等相关的动态发现服务进行调用;一般,这些管理服务器需要以静态的方式提供;

试验拓扑:

docker-compose部署:1个Envoy+1个Rest管理服务器+2个上游服务器

1、相关文件的目录结构

root@ubuntu1:~/servicemesh_in_practise/eds-rest# tree .
.
├── docker-compose.yaml
├── Dockerfile-envoy
├── envoy.yaml
└── resources
    ├── endpoints-2.json
    └── endpoints.json

1 directory, 5 files