envoy使用

Posted midashu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了envoy使用相关的知识,希望对你有一定的参考价值。

Cluster简易静态配置
? 通常,集群代表了一组提供相同服务的上游服务器(端点)的组合,它可由用户静态配置,也能够通过CDS动态获取;
? 集群需要在“预热”环节完成之后方能转为可用状态,这意味着集群管理器通过DNS解析或EDS服务完成端点初始化,以及健康状态检测成功之后才可用;

clusters:
- name: ... # 集群的惟一名称,且未提供alt_stat_name时将会被用于统计信息中;
  alt_stat_name: ... # 统计信息中使用的集群代名称;
  type: ... # 用于解析集群(生成集群端点)时使用的服务发现类型,可用值有STATIC、STRICT_DNS、LOGICAL_DNS、ORIGINAL_DST和EDS等;其实还有一种custom cluster,叫自定义集群,如果不考虑自定义集群的话,这里主要有5种,其中后两种用不上;本次课当中主要用到的是前两种
  lb_policy: # 负载均衡算法,支持ROUND_ROBIN、LEAST_REQUEST、RING_HASH、RANDOM、MAGLEV和CLUSTER_PROVIDED;
  load_assignment: # 为STATIC、STRICT_DNS或LOGICAL_DNS类型的集群指定成员获取方式;EDS类型的集成要使用eds_cluster_config字段配置;
    cluster_name: ... # 集群名称;
    endpoints: # 端点列表;
    - locality:  # 标识上游主机所处的位置,通常以region、zone等进行标识;
      lb_endpoints: # 属于指定位置的端点列表;
      - endpoint_name: ... # 端点的名称;
        endpoint: # 端点定义;
          socket_adddress: # 端点地址标识;
            address: ... # 端点地址;
            port_value: ... # 端点端口;
            protocol: ... # 协议类型;

#注意:

老版本采用是的hosts方式,即将被废弃,新版本使用的是上述的load_assignment

 

以上是关于envoy使用的主要内容,如果未能解决你的问题,请参考以下文章

使用 Laravel Envoyer 上传特定供应商文件

markdown 使用Envoyer进行PHP应用程序部署

envoy使用

使用Envoy将gRPC转码为HTTP/JSON

使用envoy在k8s中作grpc的负载均衡

如何在 Envoy 中禁用路由超时?