我想在GKE集群上设置一个IPv6地址。我想这样做的主要原因是我正在设置一个Google管理的证书,并将服务连接到一个域名。该证书需要配置类型A和类型AAAA记录。我在VPC网络上保留了一个IPv6地址,但没有办法分配它。即使尝试编辑YAML以支持IPv6家族,但它只显示了错误
The Service "made-up-name" is invalid: spec.ipFamilies[1]: Invalid value: []string(nil): ipfamily IPv6 is not configured on cluster
这是我的YAML文件到现在为止
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-stream-server-depl
spec:
replicas: 1
selector:
matchLabels:
app: my-stream-server
template:
metadata:
labels:
app: my-stream-server
spec:
containers:
- name: my-stream-server
image: gcr.io/reddo-346118/my-stream-server
---
apiVersion: v1
kind: Service
metadata:
name: my-stream-server-srv
spec:
ipFamilyPolicy: PreferDualStack
ipFamilies:
- IPv4
- IPv6
selector:
app: my-stream-server
ports:
- name: http
protocol: TCP
port: 8000
targetPort: 8000
- name: rtmp
protocol: TCP
port: 1935
targetPort: 1935
---
kind: Service
apiVersion: v1
metadata:
name: my-stream-server-rtmp
spec:
type: LoadBalancer
externalTrafficPolicy: Cluster
ports:
- name: rtmp
port: 1935
targetPort: 1935
protocol: TCP
selector:
app: my-stream-server
1条答案
按热度按时间t8e9dugd1#
GKE当前不支持pod或服务的IPv6。但是,你可以将IPv6地址分配给外部HTTP(S)负载平衡器。你将无法为类型为 LoadBalancer 的 * 服务 * 执行此操作。你将需要创建一个入口资源,因为入口会创建一个支持IPv6的HTTP(S)负载平衡器。
目前计划于2022年第2季度末在GKE上支持双协议栈。