2
votes

What are best practices to deploy from Azure Pipeline to pool of AWS Autoscaling instances?

Our current configuration:

  • ELB and few stateless app servers
  • Azure Agent on each server (single deployment group)
  • Pipeline deploy new app to deployment group one by one

Here are couple of challenges I know (probably, there are also some things to discover) which confuses me:

  1. Autoscaling group needs an AMI. In theory it is possible to create a CLI process to create AMI from one of instances, but how can I prevent specific instance from deletion?

  2. Multiple Azure Deployment Agents with same configuration looks like single server in deployment group. Provided release happens during peak hour and we scaled from 2 to 4 I have no control over which of instance actually received update, thus I will not know which instance should be used as a source for AMI.

1
Hey, just wondering -- why are you using two different cloud providers? Would it not be simplified to use just Azure, especially if you are deploying an Azure agent to Amazon EC2? What's your end goal?M2065
I find azure ui much more confusing, especially everything related to VMsst78
How would I deploy my code to scale set in azure via DevOps? Same problems - every server need to be registered, OS image need to by builtst78

1 Answers

1
votes

You can use Packer for creating base image/es and UserData&SecretStore for later customization(like VSO agent installation+registration) or trigger more complex CM provisioning.

I have another issue: After scaling up, joining the deployment group and etc. I don't know how can I run the pipeline only on the new instance and not all instances with the same tags....