匹配
path匹配类型优先级:
/aa/ # 完全匹配
/aa # 前缀匹配,匹配多的优先(服务A:/ 服务B:/aa 服务C:/aab,访问/a到A 访问/aa到B 访问/aab+到C)
/ # 默认匹配
重写 - 搭配注释(nginx.ingress.kubernetes.io/rewrite-target)使用
示例一:
# 重写URL(访问wxb.com/aa/bb+,转发到后端请求url为wxb.com/bb+,$n代表‘/’分割的第n个path)
path:/aa(/|$)(.*)
annotations:nginx.ingress.kubernetes.io/rewrite-target = /$2
示例二:
# 重写URL(访问wxb.com/aa/bb/cc+,转发到后端请求url为wxb.com/cc+,$n代表‘/’分割的第n个path)
path:/aa/bb(/|$)(.*)
annotations:nginx.ingress.kubernetes.io/rewrite-target = /$3
示例三:
# 重写URL(访问wxb.com/aa/bb/cc+,转发到后端请求url为wxb.com/dd/cc+,$n代表‘/’分割的第n个path)
path:/aa/bb(/|$)(.*)
annotations:nginx.ingress.kubernetes.io/rewrite-target = /dd/$3
金丝雀 - canary-by-header -> canary-by-cookie -> canary-weight
# nginx.ingress.kubernetes.io/canary: true
# nginx.ingress.kubernetes.io/canary-by-header: canary (never 或 always)
# nginx.ingress.kubernetes.io/canary-by-cookie: users_from_Beijing (never 或 always)
# nginx.ingress.kubernetes.io/canary-weight: 30