Temui Argo Rollouts v1.0

Pendekatan yang tepat untuk Pengiriman Progresif







Tim Argo dengan bangga mempersembahkan Argo Rollouts v1.0! Cari tahu mengapa proyek ini diluncurkan dan bagaimana kami mengerjakannya. Lihat halaman rilis untuk petunjuk instalasi .







gambar







2019 Intuit Kubernetes. Kubernetes , blue-green canary, — Spinnaker. , API . Rolling update . staging preview, . Kayenta, , Spinnaker.







deployment controller Kubernetes, , . Argo Rollouts, blue-green canary- Kubernetes.







, . - . Rollouts — progressive delivery.







Progressive delivery — , , , (, ).

- (, ), . progressive delivery KubeCon.







progressive delivery Rollouts, , . Intuit , , , . Argo Rollouts , canary ingress service mesh. . , Prometheus, DataDog, NewRelic, Wavefront, Kayenta, Job -:







gambar







ingress service mesh Rollouts , Linkerd (SMI), Istio, AWS LoadBalancer, Ambassador NGINX Ingress Controller.







gambar







KubeCon (1, 2) Argo Argo Rollouts v1.0! Rollouts , Intuit QuickBooks TurboTax, . v1.0.







Rollouts



, canary progressive delivery, , . , kubectl argo rollouts . , dashboard



http://localhost:3100/:







$ kubectl argo rollouts dashboard
      
      





, .







gambar







, canary, — , , . .







gambar







, , Service/Ingress ( ). , , Argo CD .







Kubernetes Prometheus



: Kubernetes, Rollout, , . , .







TYPE      REASON                 OBJECT               MESSAGE
Normal    RolloutUpdated         rollout/guestbook    Rollout updated to revision 1
Normal    NewReplicaSetCreated   rollout/guestbook    Created ReplicaSet guestbook-698fbfb9dc (revision 1) with size 1
Normal    RolloutCompleted       rollout/guestbook    Rollout completed update to revision 1 (698fbfb9dc): Initial deploy
Normal    RolloutUpdated         rollout/guestbook    Rollout updated to revision 2
Normal    NewReplicaSetCreated   rollout/guestbook    Created ReplicaSet guestbook-644bd86dd8 (revision 2) with size 1
Normal    ScalingReplicaSet      rollout/guestbook    Scaled down ReplicaSet guestbook-644bd86dd8 (revision 2) from 1 to 0
Warning   RolloutAborted         rollout/guestbook    Rollout aborted update to revision 2
Normal    ScalingReplicaSet      rollout/guestbook    Scaled up ReplicaSet guestbook-644bd86dd8 (revision 2) from 0 to 1
Normal    RolloutStepCompleted   rollout/guestbook    Rollout step 1/2 completed (setWeight: 50)
Normal    RolloutPaused          rollout/guestbook    Rollout is paused (CanaryPauseStep)
Normal    RolloutStepCompleted   rollout/guestbook    Rollout step 2/2 completed (pause: 3s)
Normal    RolloutResumed         rollout/guestbook    Rollout is resumed
Normal    ScalingReplicaSet      rollout/guestbook    Scaled down ReplicaSet guestbook-698fbfb9dc (revision 1) from 1 to 0
Normal    RolloutCompleted       rollout/guestbook    Rollout completed update to revision 2 (644bd86dd8): Completed all 2 canary steps
      
      





, Prometheus, Prometheus:







# HELP rollout_events_total Count of rollout events
# TYPE rollout_events_total counter
rollout_events_total{name="guestbook",namespace="default",reason="NewReplicaSetCreated",type="Normal"} 4
rollout_events_total{name="guestbook",namespace="default",reason="RolloutAborted",type="Warning"} 2
rollout_events_total{name="guestbook",namespace="default",reason="RolloutCompleted",type="Normal"} 4
rollout_events_total{name="guestbook",namespace="default",reason="RolloutPaused",type="Normal"} 4
rollout_events_total{name="guestbook",namespace="default",reason="RolloutResumed",type="Normal"} 2
rollout_events_total{name="guestbook",namespace="default",reason="RolloutStepCompleted",type="Normal"} 6
rollout_events_total{name="guestbook",namespace="default",reason="RolloutUpdated",type="Normal"} 4
rollout_events_total{name="guestbook",namespace="default",reason="ScalingReplicaSet",type="Normal"} 6
      
      





Rollout — . Rollout. (Slack, PagerDuty . .) , , , canary .









Argo Rollouts Deployment. Rollout , Rollouts Deployment Rollout. v1.0 — (workload referencing).







, spec.template



Deployment Rollout , Deployment:







apiVersion: argoproj.io/v1alpha1
kind: Rollout
metadata:
  name: guestbook-rollout
spec:
  replicas: 5
  workloadRef:
    apiVersion: apps/v1
    kind: Deployment
    name: guestbook-deploy
  strategy:
    canary:
      steps:
        - setWeight: 20
        - pause: {duration: 10s}
      
      





— Deployment. Rollouts. Rollouts :







  • Rollouts
  • , , Rollouts
  • replias: 0



    Deployment.


ArgoRollouts, kubernetes deployment controller.







kustomize, , , , . — Deployment, Rollout .









( . ):







  • Ambassador Edge Stack.
  • canary- Istio, DestinationRules VirtualService .
  • Kubectl (, Rollout ).
  • , 500.




. Argo Rollouts! : Bilibili, Bucketplace, CodeFresh, DataDog, Datawire, Dynatrace, Intuit, NewRelic, Onfido, Paypal, Quizlet, Salesforce, Shipt, Skillz Spotify.









, v1.0. ingress , stage . .








All Articles