服务配置文件
为 Linkerd
提供有关服务的附加信息。以下是可以使用服务配置文件完成的所有操作的参考。
中文手册(https://linkerd.hacker-linner.com)
服务配置文件规范必须包含以下顶级字段:
route 对象的列表
route
对象必须包含以下字段:
这条 route 的名称,因为它将出现在 route 标签中
请求匹配对象必须恰好包含以下字段之一:
匹配请求路径的正则表达式
最简单的条件是路径正则表达式:
pathRegex: '/authors/\d+'
这是检查请求方法的条件:
method: POST
如果设置了多个条件字段,则必须满足所有条件。这等效于使用 all
条件:
all:
- pathRegex: '/authors/\d+'
- method: POST
可以使用 all
、any
和 not
组合条件:
any:
- all:
- method: POST
- pathRegex: '/authors/\d+'
- all:
- not:
method: DELETE
- pathRegex: /info.txt
response class
对象必须包含以下字段:
一个 response match 对象,它定义一个 response 是否匹配这个 response class
response match
对象必须恰好包含以下字段之一:
用于匹配响应状态代码的 status range 对象
Response Match
条件可以以类似于上面显示的 Request Match 使用示例
的方式组合
status range
对象必须包含以下至少一个字段。只指定 min
或 max
中的一个将只匹配一个状态码。
状态码必须大于或等于此值
retry budget
指定应发送到此服务的最大重试总次数
与原始请求量
的比率
。
重试请求与原始请求的最大比率