Reading through how AWS recommends deploying databases to EC2 it seems that the standard is:
• Deploy a given quorum to each AZ in a set of AZs
• When upgrading, take instances down one at a time (or at least one at a time per quorum), spin up the replacement, and then attach the network interface from the terminated instance to the newly created instance.
How would one implement this in Pulumi? It seems like you'd want to ensure that, across deployments, you choose the AZs deterministically, and that you don't destroy network interfaces as you transition from one EC2 instance to another.
I also am curious if I can specify that, for a given quorum, we only take down a node when all other nodes are ready?
Or perhaps this is asking the wrong things from Pulumi, and I should be taking another approach?