I would like to connect multiple AWS accounts (~100) together with Consul Connect using the Mesh Gateway, however in my understanding it’s only possible to do so if I have a dedicated Consul cluster running in each account identifying as a unique datacenter. This is something I would like to avoid because of the extra costs and operational overhead.
My ideal setup would be to run a dedicated Consul cluster in one account which is accessible from all my other accounts and in each account I could run a Consul agent & mesh gateway as a Fargate task.
I wouldn’t think you necessarily have to run them as individual data centers. If you have peering or transit gateway type of setup where your networking is shared/peered between the AWS accounts you should be able to have a central consul server cluster in 1 AWS account with numerous things connecting in from other AWS accounts. I think it depends on how you have the network setup/shared between the AWS accounts, but without that, then yes, you’d have multiple data centers connecting them I think like you’re assuming you have to do.
Not saying connecting 100 AWS accounts together at the vpc/networking level would be easy or trivial, but setting up a shared/peered type of network or with transit gateway is probably your cheapest route for the goal of 1 consul cluster in 1 AWS account.