我有一個Scalr EC2集羣,並且想要一個簡單的方法來跨所有實例同步文件。如何rsync到所有Amazon EC2服務器?
例如,我在一個實例的/ var/www中有一堆文件,我希望能夠識別所有其他主機,然後rsync以便每個主機更新其文件。
LS的/ etc/AWS /主機/應用程序/
返回所有其他實例中的IP地址
10.1.2.3 10.1.33.2 10.166.23.1
想法?
我有一個Scalr EC2集羣,並且想要一個簡單的方法來跨所有實例同步文件。如何rsync到所有Amazon EC2服務器?
例如,我在一個實例的/ var/www中有一堆文件,我希望能夠識別所有其他主機,然後rsync以便每個主機更新其文件。
LS的/ etc/AWS /主機/應用程序/
返回所有其他實例中的IP地址
10.1.2.3 10.1.33.2 10.166.23.1
想法?
正如扎克說你可以使用S3。
從http://jets3t.s3.amazonaws.com/applications/synchronize.html
Usage: Synchronize [options] UP <S3Path> <File/Directory>
(...) 或:同步[選項] DOWN
UP : Synchronize the contents of the Local Directory with S3. DOWN : Synchronize the contents of S3 with the Local Directory ...
我會推薦上述方案,如果你不」 t需要跨節點文件鎖定。這很容易,每個系統都可以從中心位置獲取數據。
如果您需要更多的跨節點鎖定:
一個理想的解決方案是使用IBM的GPFS,但IBM不只是把它送人(至少目前還沒有)。即使它是專爲高性能互連而設計的,但它也可以用於較慢的連接。我們用它作爲NFS的替代品,速度非常快(比NFS快大約3倍)。也許有類似的東西是開源的,但我不知道。編輯:OpenAFS可能適用於在許多EC2實例上構建羣集文件系統。
你使用NFS評估過嗎?也許你可以將一個實例作爲NFS主機。
我不想問一個明顯的問題,但爲什麼不把它存儲在S3上呢? – 2010-07-08 14:50:47