服務(wù)網(wǎng)格envoy教程






出現(xiàn)流量為正向代理,才是重點(diǎn),流量分發(fā)是發(fā)生在客戶端Pod的sidercar中的


入偵聽(tīng)器

出向偵聽(tīng)器

# 配置 envoy
靜態(tài)配置:從配置文件加載配置
動(dòng)態(tài)配置:從配置文件加載的配置只是個(gè)配置框架,真正的配置需要向配置文件服務(wù)器發(fā)送API請(qǐng)求, MS返回配置。支持xDs API、runtime兩種API接口。

配置方式:

配置的重要概念

listeners

L3/L4 filfters

過(guò)濾器

Cluster 配置
- 給定IP和端口
- 借助 DNS 發(fā)現(xiàn)
- 給的是主機(jī)名稱和port
- 主機(jī)名的解析結(jié)果IP與port的每個(gè)組合就是一個(gè) endpoint
- 分成兩種 DNS
- 嚴(yán)格DNS,內(nèi)部的DNS,一個(gè)名稱可以解析道有限的IP地址上,會(huì)把DNS解析結(jié)果的每個(gè)IP直接配置為一個(gè) endpoint
- 邏輯DNS,如 google.com
- 僅把DNS解析的結(jié)果的第一個(gè)IP地址為endpoint
upstream cluster


envoy連接處理


codec_type: 編解碼格式
http_connection_manager:既能理解4層tcpproxy,也能理解7層http
http_filter:指明激活哪種過(guò)濾器
激活 router過(guò)濾器,才能使用route_config配置
virtual_hosts:匹配轉(zhuǎn)發(fā),類(lèi)似nginx的server

入向偵聽(tīng)器
出向偵聽(tīng)器
virtual_hosts:過(guò)濾,轉(zhuǎn)發(fā)


路由

7層路由基礎(chǔ)配置

管理接口admin


admin path

cluster 接口:
priority:優(yōu)先級(jí);weight:比重

config_dump:打印配置信息

/stats、/stats/prometheus :狀態(tài)指標(biāo)
cluster 統(tǒng)計(jì)信息中主機(jī)狀態(tài)的說(shuō)明:


運(yùn)行時(shí)配置


通過(guò)接口修改runtime配置


envoy 線程模型
