Rolling deployments for multiple projects on same servers

Hi Team

I have created a simple rolling deployment plan for our infrastructure to achieve zero downtime.

Process

  • Main Step - “Rolling Deployment”
    • Child step - Remove server from load balancer
    • Child step - Deploy package
    • Child step - Add server to the load balancer

We have 2 servers that are in a target group and are hosted on AWS. We have multiple apis hosted on these servers, all deployed via Octopus and wondering what would happen if there is a case of simultaneous deployments? These are independent APIs and are not dependent on one another.

Scenario

  • Application 1 deployment completed deployment to first server and is now deploying to second server. To be precise, it has now removed the server from load balancer
  • Application 2 is now deploying to first server and has removed the server from load balancer.

This scenario will result in a downtime (as per my knowledge). Is there a way to get around this issue or any ideas on how you I can manage this better?

Hi Kundan

Thanks for getting in touch!

As I am not a load balancer expert, i did a quick search about AWS load balancer and found this link AWS Elastic Load Balancing

Looks like there are 3 different types of load balancer and the Application Load Balancer interests me, looks like it can do load balancing on application level, if that is the case, on your Remove server from load balancer step, instead of removing the server, can you remove the application/binding from the load balancer, that way it won’t affect the other applications.

I hope this helps!

Let me know what you think and how you go.

Regards
Eddy

Hey Eddy

Thanks for your suggestion. We cannot remove an application binding with our current setup as the ALB is pointing to one group (Target Group) of servers.

Cheers

Hi Kundan

As the server is shared by multiple applications, by removing the server from the LB, or deregistering it from the target group does not help, it has to be in the application level.

I am a bit hesitate to say that this might not be solved by using octopus nicely without some infrastructure restructure. Would you mind also contacting AWS and ask if removing application binding is possible?

Let me know how you go.

Regards
Eddy

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.