Gittiğiniz ölçekler için git önermiyorum. İşe yarayabilir, ancak şahsen bu modeli getirme konusunda kullanmanın bazı kusurlarını görüyorum.
Bunun en iyi nasıl yapılacağını belirleyen birkaç şey var:
- Bir deponun ne kadar büyük bir kısmının paylaşılması gerekiyor.
- Ne kadar hızlı birleşmek gerekiyor.
Mükemmel yakınsama ve maksimum hız için NFSv4 gibi bir ağ dosya sistemi kullanmanız gerekir. Bildiğim kümelenmiş dosya sistemleri 'yüzlerce' düğümle ölçeklenmediğinden, bir ağ dosya sistemi olmalıdır. Bu kendi zorluklarını sunar, ancak dosyalar NFS kafasında güncellendiğinde yakınsamaya ulaşacağınız anlamına gelir.
Hızlı yakınsama için bazı rsync oyunlarını kullanabilirsiniz. Eğer rsync arka plan programı CPU'ya bağlıysa, kesinlikle birkaç tane rsync sunucusunu haproxy gibi bir yük dengeleyicinin arkasına koyabilirsiniz. Bunu veri çekmek için cron işleri ile birleştirin (veya kod güncellemelerini tetiklemek için başka bir yöntem) ve yakınlaşmayı oldukça hızlı bir şekilde vurabilirsiniz.
Yukarıdakilerin her ikisi için, merkezi depoyu maksimum verim için 10GbE bağlantılarına koymak iyi bir fikir olacaktır.
Diğer bir seçenek ise, sunucularınıza güncellemeleri göndermek için merkezi depodan çalıştırıldığı bir push-rsync'dir. Yukarıdakilerden herhangi biri kadar hızlı birleşmez, ancak dahili bant genişliğinize daha uygun olur. Daha iyi hız için bölünmüş aralıkları zorlayan birden çok ana bilgisayar kullanın.