当我尝试使用 Argo Rollout 实现 Bule/Green 部署时,我无法弄清楚为什么它似乎没有连接到使用 Rollouts 创建的 Service 和 Pod。
我们将服务和入口(ALB 入口控制器)分别设置为活动和预览,并将选择器分配给 Rollouts 中指定的选择器。
https://argoproj.github.io/argo-rollouts/features/bluegreen/
如果您还需要什么,请告诉我。
apiVersion: argoproj.io/v1alpha1
kind: Rollout
metadata:
name: sample-app-a-deployment
spec:
selector:
matchLabels:
app: sample-app-a
template:
metadata:
labels:
app: sample-app-a
---
apiVersion: v1
kind: Service
metadata:
name: app-a-preview-service
spec:
type: NodePort
ports:
- port: 80
targetPort: 8080
protocol: TCP
selector:
app: sample-app-a
---
apiVersion: v1
kind: Service
metadata:
name: app-a-service
namespace: default
spec:
type: NodePort
ports:
- port: 80
targetPort: 8080
protocol: TCP
selector:
app: sample-app-a
我也使用 ArgoCD,这就是它在 GUI 上的样子。