istio ingress 双栈 yaml
时间: 2023-06-23 19:53:54 浏览: 185
ingress的yaml文件
以下是一个基本的 Istio Ingress 双栈配置 YAML 文件示例:
```yaml
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: my-gateway
spec:
selector:
istio: ingressgateway
servers:
- port:
number: 80
name: http
protocol: HTTP
hosts:
- "*"
- port:
number: 443
name: https
protocol: HTTPS
hosts:
- "*"
- port:
number: 8080
name: http2
protocol: HTTP2
hosts:
- "*"
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: my-virtual-service
spec:
hosts:
- my-service
http:
- match:
- uri:
prefix: /v1
route:
- destination:
host: my-service
port:
number: 80
subset: v1
- route:
- destination:
host: my-service
port:
number: 80
subset: v2
---
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: my-destination-rule
spec:
host: my-service
trafficPolicy:
loadBalancer:
simple: ROUND_ROBIN
portLevelSettings:
- port:
number: 80
address: ::/0 # IPv6地址,用于双栈配置
- port:
number: 80
address: 0.0.0.0/0 # IPv4地址,用于双栈配置
```
在这个 YAML 文件中,我们定义了一个名为 `my-gateway` 的 Istio Gateway 对象,它将接受 HTTP、HTTPS 和 HTTP2 流量。我们还定义了一个名为 `my-virtual-service` 的 VirtualService 对象,它将所有的 HTTP 流量路由到 `my-service` 上,并根据不同的 URI 前缀将流量路由到不同的版本上。最后,我们定义了一个名为 `my-destination-rule` 的 DestinationRule 对象,它将负载均衡到 `my-service` 上,并支持 IPv4 和 IPv6 地址。
阅读全文