08 2022 档案
摘要:filter_chains配置段 https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/listener/v3/listener_components.proto#envoy-v3-api-msg-config-listener-v3-f
阅读全文
摘要:Envoy初始配置 https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/bootstrap/v3/bootstrap.proto#config-bootstrap-v3-bootstrap node: {...} static_reso
阅读全文
摘要:listeners配置段 https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/listener/v3/listener.proto#envoy-v3-api-msg-config-listener-v3-listener -- list
阅读全文
摘要:HTTP 路由功能 Envoy 包含一个 HTTP路由器过滤器,可以安装它来执行高级路由任务。这对于处理边缘流量(传统的反向代理请求处理)以及构建服务 Envoy 网格(通常通过主机/授权 HTTP 标头上的路由以到达特定的上游服务集群)都很有用。Envoy 还可以配置为正向代理。在转发代理配置中,
阅读全文
摘要:static_resources: listeners: name: ... address: {...} additional_addresses: [] stat_prefix: ... filter_chains: filter_chain_match: {...} filters: name
阅读全文
摘要:http_connection_manager配置段 https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/filters/network/http_connection_manager/v3/http_connection_ma
阅读全文
摘要:route_config所在配置段 https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/filters/network/http_connection_manager/v3/http_connection_manager.pro
阅读全文
摘要:静态配置框架 static_resources: listeners: name: ... address: {...} additional_addresses: [] stat_prefix: ... filter_chains: filter_chain_match: {...} filter
阅读全文
摘要:HTTP 过滤器 与网络级过滤器堆栈非常相似,Envoy 在连接管理器中支持 HTTP 级过滤器堆栈。可以编写对 HTTP 级别消息进行操作的过滤器,而无需了解底层物理协议(HTTP/1.1、HTTP/2 等)或多路复用功能。HTTP 级别过滤器分为三种类型: 解码器:当连接管理器解码请求流的部分(
阅读全文
摘要:HTTP连接管理 Envoy通过内置的L4过滤器HTTP连接管理器将原始字节转换为HTTP应用层协议级别的消息和事件,例如接收到的标头和主体等,以及处理所有HTTP连接和请求共有的功能,包括访问日志、生成和跟踪请求ID,请求/响应头处理、路由表管理和统计信息等; HTTP 协议 Envoy 的 HT
阅读全文
摘要:雪崩效应 多级服务调度用场景中,某上游服务因网络故障或服务繁忙无法响应请求时很可能会导致多级上游调用者大规模级联故障,进而导致整个系统不可用,此即为服务的雪崩效应; 服务雪崩效应是一种因“服务提供者”的不可用导致“服务消费者”的不可用,并将不可用逐渐放大的过程; 服务网格之上的微服务应用中,多级调用
阅读全文
摘要:连接池 对于 HTTP 流量,Envoy 支持在底层有线协议(HTTP/1.1、HTTP/2、HTTP/3)之上分层的抽象连接池。使用过滤器代码不需要知道底层协议是否支持真正的多路复用。 连接池支持的协议 HTTP/1.1 HTTP/1.1 连接池根据需要获取到上游主机的连接(直到断路限制)。当
阅读全文
摘要:负载均衡概述 什么是负载均衡 负载均衡是一种在单个上游集群内的多个主机之间分配流量的方法,以便有效地利用可用资源。有很多不同的方法可以实现这一点,因此 Envoy 提供了几种不同的负载平衡策略。在高层次上,我们可以将这些策略分为两类:全局负载均衡和分布式负载均衡。 分布式负载均衡 Envoy自身基于
阅读全文
摘要:异常值检测 异常值检测和弹出是动态确定上游集群中的某些主机是否与其他主机不同,并将它们从健康 负载平衡集中删除的过程。性能可能沿着不同的轴,例如连续失败、时间成功率、时间延迟等。异常值检测是被动健康检查的一种形式。Envoy 还支持主动健康检查。被动和主动健康检查可以一起或单独启用,并构成整体上游健
阅读全文
摘要:Upstreams 健康状态检测 健康状态检测用于确保代理服务器不会将下游客户端的请求代理至工作异常的上游主机; Envoy支持两种类型的健康状态检测,二者均基于集群进行定义; 健康状态检测类型 主动检测 主动检测(Active Health Checking):Envoy周期性地发送探测报文至上游
阅读全文
摘要:故障处理机制 Envoy提供了一系列开箱即用的故障处理机制; 超时(timeout) 有限次数的重试,并支持可变的重试延迟 主动健康检查与异常探测 连接池 断路器 所有这些特性,都可以在运行时动态配置; 结合流量管理机制,用户可为每个服务/版本定制所需的故障恢复机制;
阅读全文
摘要:DNS解析 许多 Envoy 组件解析 DNS:不同的集群类型( 严格 dns、 逻辑 dns);动态转发代理系统(由集群和过滤器组成);udp dns 过滤器等。Envoy 使用c-ares作为第三方 DNS 解析库。envoy.restart_features.use_apple_api_for
阅读全文
摘要:服务发现定义 集群管理器配置上游集群时需要知道如何解析集群成员,相应的解析机制即为服务发现。 服务发现类型 Static 静态是最简单的服务发现类型。配置明确指定每个上游主机的解析网络名称(IP 地址/端口、unix 域套接字等)。 Strict DNS 当使用严格的 DNS 服务发现时,Envoy
阅读全文
摘要:集群管理器 Envoy 的集群管理器管理所有已配置的上游集群。正如 Envoy 配置可以包含任意数量的侦听器一样,该配置也可以包含任意数量的独立配置的上游集群。 上游集群和主机是从网络/HTTP 过滤器堆栈中抽象出来的,因为上游集群和主机可以用于任意数量的不同代理任务。集群管理器向过滤器堆栈公开 A
阅读全文
摘要:sql_mode模式 sql model 常用来解决下面几类问题(1) 通过设置sql mode, 可以完成不同严格程度的数据校验,有效地保障数据准备性。(2) 通过设置sql model 为宽松模式,来保证大多数sql符合标准的sql语法,这样应用在不同数据库之间进行迁移时,则不需要对业务sql
阅读全文
摘要:动态配置 xDS API为Envoy提供了资源的动态配置机制,它也被称为Data Plane API; Envoy支持三种类型的配置信息的动态发现机制,相关的发现服务及其相应的API联合起来称为xDSAPI; 基于文件系统发现:指定要监视的文件系统路径 通过查询一到多个管理服务器(Managemen
阅读全文
摘要:启用 TUNA 源 临时启用 TUNA 源 # export RUSTUP_DIST_SERVER=https://mirrors.tuna.tsinghua.edu.cn/rustup 长期启用 TUNA 源 # echo 'export RUSTUP_UPDATE_ROOT=https://mi
阅读全文
摘要:设置公网IP ubuntu系统 编辑50-cloud-init.yaml文件 # cat /etc/netplan/50-cloud-init.yaml network: version: 2 ethernets: ens3: addresses: - 10.0.9.80/24 match: mac
阅读全文
摘要:Envoy Mesh中TLS常用场景 Front Proxy面向下游客户端提供https服务,但Front Proxy、Mesh内部的各服务间依然使用http协议; https (下游) → http (上游) Front Proxy面向下游客户端提供https服务,而且Front Proxy、Me
阅读全文
摘要:文件说明 .crt/.cer 是由证书颁发机构(CA)签名后的证书,或者是开发者自签名的证书,包含证书持有人的信息,持有人的公钥,以及签署者的签名等信息 .key 是服务器上的私钥文件,用于对发送给客户端数据的加密,以及对从客户端接收到数据的解密 .csr 是证书签名请求文件,用于提交给证书颁发机构
阅读全文
摘要:openssl openssl - OpenSSL 命令行程序 概要 openssl 命令 [选项... ] [参数... ] openssl list 标准命令| 摘要命令| 密码命令| 密码算法| 摘要算法| mac 算法| 公钥算法 openssl no-XXX [ options ] 描述
阅读全文
摘要:Envoy运行时配置概述 https://www.envoyproxy.io/docs/envoy/latest/configuration/operations/runtime#config-runtime 相较于静态资源配置来说,xDS API的动态配置机制使得Envoy的配置系统极具弹性; 但
阅读全文
摘要:管理接口admin https://www.envoyproxy.io/docs/envoy/latest/operations/operations https://www.envoyproxy.io/docs/envoy/latest/operations/admin 管理接口介绍 Envoy内
阅读全文
摘要:环境说明 envoy:Front Proxy, 地址为 172.31.1.2 webserver01:后端服务,地址为 172.31.1.11 webserver01:后端服务,地址为 172.31.1.12 envoy配置文件 static_resources: listeners: name:
阅读全文
摘要:环境说明 envoy:Front Proxy, 地址为 172.31.4.2 webserver01:后端服务,地址为 172.31.4.11 webserver01:后端服务,地址为 172.31.4.12 clusters 类型为STRICT_DNS envoy配置文件 查看代码 static_
阅读全文
摘要:环境说明 envoy:Front Proxy, 地址为 172.31.4.2 webserver01:后端服务,地址为 172.31.4.11 webserver01:后端服务,地址为 172.31.4.12 envoy配置文件 static_resources: listeners: - name
阅读全文
摘要:环境说明 envoy:sidecar proxy, 地址为172.31.3.2 webserver01:后端服务,地址为127.0.0.1 envoy配置文件 static_resources: listeners: - name: listener_0 address: socket_addres
阅读全文
摘要:envoy 介绍 什么是envoy Envoy 是一个 L7 代理和通信总线,专为大型现代面向服务的架构而设计。该项目的诞生源于以下理念: 网络应该对应用程序透明。 当网络和应用程序出现问题时,应该很容易确定问题的来源。 用C++编写,高度并行,无阻塞。 envoy高级功能 Out of proce
阅读全文
摘要:系统设置 软件清单 系统:ubuntu20.04 skywalking-apm: 9.1.0 openjdk:17.0.3 es: 8.3.3 系统要求 CPU Memory 4 core 4 GB RAM 端口列表 Name Port Destination skywalking-ui 8080
阅读全文
摘要:从软件库安装 wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg sudo apt-ge
阅读全文
摘要:分布式系统中的请求跟踪 指标和日志信息,是全局化、扁平化的,它们提供的是观察系统的“广角镜头”,但对于一次复杂请求的完整过程,我们还需要一个“长焦镜头” 复杂的分布式系统中,客户端的一次请求操作,可能需要经过系统中多个服务、多个中间件、多台机器的相互协作才能完成 这一系列调用请求中,可能存在着多次串
阅读全文
摘要:系统设置 软件清单 系统:ubuntu20.04 镜像:hashicorp/consul:1.12.3 docker-compose:v2.7.0 系统时间同步 apt -y install chrony systemctl start chrony systemctl enable chrony
阅读全文

浙公网安备 33010602011771号