Is there a way for an instance in a Virtual Machine Scale Set to discover the other instances (private IP addresses) within the same Scale Set? The VMSS is set to auto-scale, so other instances may come and go at any time.
The Azure Instance Metadata Service only returns information on the instance that made the query, not any other instances within the VMSS. The az vmss list-instance-connection-info
command only returns information about the inbound NAT pool's publicly-accessible ports on the load balancer.
I am trying to create a backchannel for instances in a VMSS to (synchronously) co-operate. Other alternatives I've considered include UDP multicast on the subnet to advertise availability, an Azure Redis Cache that VMs register their network information with (and de-register when scaling down), and Service Fabric Reliable Collections (we don't use containers). Is there any other way?