... | ... |
@@ -2,8 +2,10 @@ |
2 | 2 |
- stable release |
3 | 3 |
- change default value -f option. 1 to 3 |
4 | 4 |
- fixed group missmatch |
5 |
- - fixed statcomp |
|
5 |
+ - fixed statcomp bug |
|
6 |
+ - fixed dir perm bug |
|
6 | 7 |
- add -G option |
8 |
+ - autoconf check openssl header file |
|
7 | 9 |
|
8 | 10 |
0.9.3: |
9 | 11 |
- change msync command design. |
... | ... |
@@ -24,7 +24,7 @@ Each makuosan daemon maintains available server list by periodically checking ex |
24 | 24 |
The makuosan transfers files only to those servers where makuosan daemon is also alive. Therefore, it never stalls waiting for a dead server, or timeouts. |
25 | 25 |
|
26 | 26 |
[Installation] |
27 |
- $ tar zxvf makuosan-x.x.x |
|
27 |
+ $ tar zxvf makuosan-x.x.x.tar.gz |
|
28 | 28 |
$ cd makuosan-x.x.x |
29 | 29 |
$ ./configure |
30 | 30 |
$ make |
... | ... |
@@ -35,8 +35,7 @@ The makuosan transfers files only to those servers where makuosan daemon is also |
35 | 35 |
The following files will be installed. |
36 | 36 |
|
37 | 37 |
/usr/local/sbin/makuosan # The main makuosan daemon. This should be running on every server. |
38 |
- /usr/local/bin/msync # cli utility to transfer files. |
|
39 |
- ?? command line interface to makuosan daemon |
|
38 |
+ /usr/local/bin/msync # command line interface to makuosan daemon |
|
40 | 39 |
|
41 | 40 |
[Starting/stopping makuosan daemon] |
42 | 41 |
The makuosan must be invoked with -b option specifying the base directory. The target file can be specified using relative path from the base directory. |
... | ... |
@@ -9,7 +9,7 @@ |
9 | 9 |
|
10 | 10 |
【makuosanとは】 |
11 | 11 |
makuosan(まくおさん:通称「まくお」)は、複数のサーバへ同時にファイルを転 |
12 |
-送するソフトウエアで、以下のような特徴があります。 |
|
12 |
+送するソフトウエアです。以下のような特徴があります。 |
|
13 | 13 |
|
14 | 14 |
・転送にかかる時間がサーバ台数に依存しない |
15 | 15 |
サーバが増えても、転送にかかる時間はほとんどかわりません。10台のサーバに転 |
... | ... |
@@ -30,7 +30,7 @@ |
30 | 30 |
|
31 | 31 |
|
32 | 32 |
【インストール方法】 |
33 |
- $ tar zxvf makuosan-x.x.x |
|
33 |
+ $ tar zxvf makuosan-x.x.x.tar.gz |
|
34 | 34 |
$ cd makuosan-x.x.x |
35 | 35 |
$ ./configure |
36 | 36 |
$ make |
... | ... |
@@ -39,15 +39,16 @@ |
39 | 39 |
|
40 | 40 |
|
41 | 41 |
【ファイル構成】 |
42 |
- make installで以下のファイルがインストールされます。 |
|
42 |
+ 以下のファイルがインストールされます。 |
|
43 | 43 |
|
44 |
- /usr/local/sbin/makuosan # 「まくお」本体(daemon) |
|
44 |
+ /usr/local/sbin/makuosan # まくおさん本体 |
|
45 | 45 |
/usr/local/bin/msync # コマンドラインツール |
46 | 46 |
|
47 | 47 |
|
48 | 48 |
【起動と停止】 |
49 |
- makuosan起動時には -b オプションでベースディレクトリを指定します。転送する |
|
50 |
-ファイルの指定は、ベースディレクトリからの相対パスとなります。 |
|
49 |
+ まくおを利用するには、送信元と送信先のサーバすべてでmakuosanを起動しておく |
|
50 |
+必要があります。また、起動時には -b オプションでベースディレクトリを指定しま |
|
51 |
+す。転送するファイルは、msyncでベースディレクトリからの相対パスを指定します。 |
|
51 | 52 |
|
52 | 53 |
# makuosan -b /var/www -u www-data -g www-data |
53 | 54 |
|
... | ... |
@@ -57,83 +58,51 @@ |
57 | 57 |
|
58 | 58 |
|
59 | 59 |
【使用方法】 |
60 |
- ファイル転送には msync を使用します。 |
|
60 |
+ ファイル転送は、makuosanが動いているサーバ上でmsyncコマンドを実行します。 |
|
61 | 61 |
|
62 |
- 例1)ベースディレクトリ直下のindex.htmlを転送する(/var/www/index.html) |
|
63 |
- $ msync index.html |
|
64 |
- |
|
65 |
- 例2)ベースディレクトリ以下のディレクトリツリーを全部転送する |
|
62 |
+ 例1)ベースディレクトリ以下のディレクトリツリーを全部転送する |
|
66 | 63 |
$ msync -r |
67 | 64 |
|
68 |
- 例3)転送されるファイルを確認する(dry run) |
|
65 |
+ 例2)転送されるファイルを確認する(dry run) |
|
69 | 66 |
$ msync -rn |
70 | 67 |
|
71 |
-【動作概要】 |
|
72 |
- 「まくお」では、サーバに常駐しているデーモン(makuosan)がファイルを転送し |
|
73 |
-ます。msyncコマンドは、makuosan に対してファイル転送の指示を出したり情報を |
|
74 |
-表示するためのコマンドです。 |
|
75 |
- |
|
76 |
-makuosan が起動していないとmsyncコマンドは失敗します。msyncは、makuosanとソケット通信をしてファイ |
|
77 |
-ル転送を依頼したり結果を受け取ったりしています。 |
|
78 |
- |
|
79 |
-makuosanは、デフォルトで localhost:5000 でTCP接続を待っています。 |
|
80 |
-これは、-l, -U, -p オプションなどで変更することができます。 |
|
81 |
- |
|
82 |
-msyncは、デフォルトで localhost:5000 に対してmakuosan への接続を試みます。 |
|
83 |
-makuosanが別のポートやUNIXドメインソケットで待っている場合は、-c オプション |
|
84 |
-で接続先を指定できます。 |
|
68 |
+ 例3)ベースディレクトリ直下のindex.htmlを転送する(/var/www/index.html) |
|
69 |
+ $ msync index.html |
|
85 | 70 |
|
86 |
- $ msync -c 'tcp:localhost:5555' --status |
|
71 |
+msyncで指定するファイルやディレクトリは、makuosan起動時に指定したベースディ |
|
72 |
+レクトリからの相対パスです。カレントディレクトリは一切関知しませんのでご注 |
|
73 |
+意ください。ベースディレクトリは以下のコマンドで確認することができます。 |
|
87 | 74 |
|
88 |
- $ msync -c 'unix:/tmp/makuosan.sock' --status |
|
75 |
+ $ msync --status |
|
89 | 76 |
|
77 |
+また、転送先サーバの一覧は以下のコマンドで取得できます |
|
90 | 78 |
|
91 |
- +----------------+ |
|
92 |
- | | |
|
93 |
- | (HDD) |
|
94 |
- | +----------+ | |
|
95 |
- | | makuosan | | |
|
96 |
- | | (daemon) | | |
|
97 |
- | +----------+ | |
|
98 |
- | |
|
99 |
- | |
|
100 |
- | +-------+ |
|
101 |
- | msync | |
|
102 |
- +-------+ |
|
103 |
- HOST1 |
|
79 |
+ $ msync --members |
|
104 | 80 |
|
105 | 81 |
|
106 | 82 |
【利用するメリット】 |
107 |
- 「まくお」は、ファイル転送の際にコマンドラインから転送先サーバを指定する |
|
108 |
-必要がありません。rsyncやscpのような、1対1の転送ツールは、必ず転送先を指定 |
|
109 |
-する必要があります。 |
|
83 |
+rsyncやscpなどの、1対1のファイル転送ツールでは、必ず転送先を指定しますが、 |
|
84 |
+「まくお」では、コマンドラインから転送先を指定する必要がありません。 |
|
110 | 85 |
|
111 |
-そのため、複数のサーバに対してファイルを転送したい場合、以下のようにサーバ |
|
112 |
-の数だけrsyncやscpを実行しなければいけません。 |
|
86 |
+rsyncやscpで複数のサーバに対してファイルを転送したい場合、以下のようにサー |
|
87 |
+バの数だけ実行する必要があります。 |
|
113 | 88 |
|
114 | 89 |
$ for h in host2 host3 host4 host5 host6;do rsync -aRv hogehoge $h:/;done |
115 | 90 |
|
116 | 91 |
「まくお」では、makuosanが起動しているサーバ同士でファイルの転送をします。 |
117 |
-したがって、転送したいサーバ全部でmakuosanを起動しておく必要はありますが、 |
|
118 |
-そのかわり、ファイル転送は以下の例のように転送したいファイルやディレクトリ |
|
119 |
-を伝えるだけで済みます。 |
|
92 |
+そのため、転送したいファイルやディレクトリを一度指定するだけで済みます。 |
|
120 | 93 |
|
121 | 94 |
$ msync -r hogehoge |
122 | 95 |
|
123 |
-このコマンド一発で、「まくお」が稼働している全てのサーバに hogehogeを転送す |
|
124 |
-ることができます。rsyncや scpを利用する場合と比べて、シンプルで簡単に転送ス |
|
125 |
-クリプトを記述できると思います。 |
|
96 |
+このコマンドひとつで「まくお」が稼働している全てのサーバに hogehogeを転送す |
|
97 |
+ることができます。 |
|
126 | 98 |
|
127 | 99 |
また「指定したサーバにだけ転送したい」というニーズのために、特定のサーバにだ |
128 |
-け転送するオプション(-t)も用意しています。 |
|
100 |
+け転送するオプション(-t)も用意しています。この場合も、送信元と送信先のサーバ |
|
101 |
+でmakuosanが動いている必要があります。 |
|
129 | 102 |
|
130 | 103 |
$ msync -t host3 -r hogehoge/ |
131 | 104 |
|
132 |
-ただし、この場合でも、host3では makuosanが動いている必要があります。尚、転送 |
|
133 |
-可能なサーバの一覧は、以下のコマンドで確認することができます。 |
|
134 |
- |
|
135 |
- $ msync --members |
|
136 |
- |
|
137 | 105 |
|
138 | 106 |
【簡単な使用例】 |
139 | 107 |
|