You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi, I have a specific case with the Argo rollout. I am using traffic management and canary deployment. I want to apply this to deployment, which uses WebSockets, which means connections are established once, and the whole communication is done inside a tunnel. So with the help of rollouts, I want to deploy a new version. To do that, I set up three steps.
So in the first step, I create only one pod with a new revision and redirect 2% of traffic.
In the second step, I check if traffic redirected to the new instance doesn't return 500.
If the second steps go well, I redirect the whole new traffic to the new revision, which scales up to the number of replicas set up in the deployment.
After that old replica is terminated, all pods are terminated at once. And I have a problem with this part. Because, like I already mentioned, this is WS tunnels, so if I terminate them all at once, I will flood my service with reconnect attempts, which can cause my own DDoS. I am looking for a method to scale down old revision one by one in some intervals. Is this even possible? Or maybe this can be a new feature for the Argo rollout.
Enabling DynamicStableScale and adding more steps with more Weight is not a case because tunnels from old replicas can connect again to the old revision, and one client can reconnect that many times, how many steps setup.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
Hi, I have a specific case with the Argo rollout. I am using traffic management and canary deployment. I want to apply this to deployment, which uses WebSockets, which means connections are established once, and the whole communication is done inside a tunnel. So with the help of rollouts, I want to deploy a new version. To do that, I set up three steps.
So in the first step, I create only one pod with a new revision and redirect 2% of traffic.
In the second step, I check if traffic redirected to the new instance doesn't return 500.
If the second steps go well, I redirect the whole new traffic to the new revision, which scales up to the number of replicas set up in the deployment.
After that old replica is terminated, all pods are terminated at once. And I have a problem with this part. Because, like I already mentioned, this is WS tunnels, so if I terminate them all at once, I will flood my service with reconnect attempts, which can cause my own DDoS. I am looking for a method to scale down old revision one by one in some intervals. Is this even possible? Or maybe this can be a new feature for the Argo rollout.
Enabling
DynamicStableScaleand adding more steps with moreWeightis not a case because tunnels from old replicas can connect again to the old revision, and one client can reconnect that many times, how many steps setup.Beta Was this translation helpful? Give feedback.
All reactions