currently the volatile endpoint in puppet is served from the same location as the active puppetmaster, if the server serving the volatile end point goes down then the frontend puppetmaster in the other site dies as it is unable to keep up with all the timeouts to the backend endpoint. I believe all the data served from the volatile endpoint could be served from the local puppetmaster as it does not matter if nodes in one site receive data from volatile 15 minutes late (the volatile data is rsynced every 15 minutes).
Currently we have the following directories in volatile
- GeoIP - maxmind geolocation data, a delay of 15 minutes is not harmful to this data
- misc - maxmind geolocation data, a delay of 15 minutes is not harmful to this data
- squid - outdated and can be removed
- swift - swift rings, this data is site specific so it doesn't matter if sites are out of sync
- tftpboot - this includes the boot images, as theses change very infrequently a delay of 15 minutes for propagation should be acceptable