Why doesn't the flagger update the application via canary deployment?

155 views Asked by At

Installed k8s, nginx ingress, flagger according to the documentation in get started https://docs.flagger.app/tutorials/nginx-progressive-delivery

But the command

kubectl -n test describe canary/podinfo

such a conclusion

   Warning Synced 93s flagger canary deployment podinfo.test not ready: waiting for rollout to finish: 0 of 2 (readyThreshold 100%) updated replicas are available
   Normal Synced 83s flagger Starting canary analysis for podinfo.test
   Normal Synced 83s flagger Pre-rollout check acceptance-test passed
   Normal Synced 83s flagger Advance podinfo.test canary weight 5
   Warning Synced 3s (x8 over 73s) flagger Halt advancement no values found for nginx metric request-success-rate probably podinfo.test is not receiving traffic: running query failed: no values found

I don’t quite understand what this entry “Halt advancement no values found for nginx metric request-success-rate probably podinfo.test is not receiving traffic: running query failed: no values found” means?

Can anyone tell me if anyone has encountered this?

The full log is here https://pastebin.com/E6r2D5p4

I would be very grateful to anyone who can point me on the right path.

kubectl -n test describe canary/podinfo
Name:         podinfo
Namespace:    test
Labels:       <none>
Annotations:  <none>
API Version:  flagger.app/v1beta1
Kind:         Canary
Metadata:
  Creation Timestamp:  2023-11-19T14:19:04Z
  Generation:          1
  Resource Version:    159642
  UID:                 0bf4f635-a85a-4aee-af76-083c78b15c25
Spec:
  Analysis:
    Interval:    10s
    Max Weight:  50
    Metrics:
      Interval:  1m
      Name:      request-success-rate
      Threshold Range:
        Min:      99
    Step Weight:  5
    Threshold:    10
    Webhooks:
      Metadata:
        Cmd:    curl -sd 'test' http://podinfo-canary/token | grep token
        Type:   bash
      Name:     acceptance-test
      Timeout:  30s
      Type:     pre-rollout
      URL:      http://flagger-loadtester.test/
      Metadata:
        Cmd:    hey -z 1m -q 10 -c 2 http://app.example.com/
      Name:     load-test
      Timeout:  5s
      URL:      http://flagger-loadtester.test/
  Autoscaler Ref:
    API Version:  autoscaling/v2
    Kind:         HorizontalPodAutoscaler
    Name:         podinfo
  Ingress Ref:
    API Version:              networking.k8s.io/v1
    Kind:                     Ingress
    Name:                     podinfo
  Progress Deadline Seconds:  60
  Provider:                   nginx
  Service:
    Port:         80
    Target Port:  9898
  Target Ref:
    API Version:  apps/v1
    Kind:         Deployment
    Name:         podinfo
Status:
  Canary Weight:  5
  Conditions:
    Last Transition Time:  2023-11-19T14:22:12Z
    Last Update Time:      2023-11-19T14:22:12Z
    Message:               New revision detected, progressing canary analysis.
    Reason:                Progressing
    Status:                Unknown
    Type:                  Promoted
  Failed Checks:           8
  Iterations:              0
  Last Applied Spec:       584c4546df
  Last Promoted Spec:      5d5dbc4d84
  Last Transition Time:    2023-11-19T14:23:52Z
  Phase:                   Progressing
  Tracked Configs:
Events:
  Type     Reason  Age                    From     Message
  ----     ------  ----                   ----     -------
  Warning  Synced  4m43s                  flagger  podinfo-primary.test not ready: waiting for rollout to finish: observed deployment generation less than desired generation
  Warning  Synced  4m33s                  flagger  podinfo-primary.test not ready: waiting for rollout to finish: 0 of 1 (readyThreshold 100%) updated replicas are available
  Normal   Synced  4m23s (x3 over 4m43s)  flagger  all the metrics providers are available!
  Normal   Synced  4m23s                  flagger  Initialization done! podinfo.test
  Normal   Synced  103s                   flagger  New revision detected! Scaling up podinfo.test
  Warning  Synced  93s                    flagger  canary deployment podinfo.test not ready: waiting for rollout to finish: 0 of 2 (readyThreshold 100%) updated replicas are available
  Normal   Synced  83s                    flagger  Starting canary analysis for podinfo.test
  Normal   Synced  83s                    flagger  Pre-rollout check acceptance-test passed
  Normal   Synced  83s                    flagger  Advance podinfo.test canary weight 5
  Warning  Synced  3s (x8 over 73s)       flagger  Halt advancement no values found for nginx metric request-success-rate probably podinfo.test is not receiving traffic: running query failed: no values found
0

There are 0 answers