When I try to achieve Bule/Green Deployment using Argo Rollout, I can't figure out why it doesn't seem to connect to the Service and the Pod created using Rollouts.
We have service and Ingress(ALB Ingress Controller) as active and preview respectively, and we assign the selector to the one specified in Rollouts.
https://argoproj.github.io/argo-rollouts/features/bluegreen/
If you need anything else, please let me know.
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
I also use ArgoCD and this is what it looks like from the GUI.