バックアップ用のシェルスクリプトを準備
以下を参照。下記のスクリプトを実行すると、サーバルートディレクトリと同じ階層に「~.yyyy-mm-dd.cpio」というバックアップファイルが作成される。
別にtar.gzなどでサーバルートディレクトリをまるごとバックアップをとっても問題ないと思うけど、とりあえず説明書きのままに
http://fallabs.com/hyperestraier/nguide-ja.html>
バックアップ
設定ファイルのbackupcmdに任意のコマンドを指定することにより、
ノードマスタの稼働中にデータベースのバックアップを取ることができます。
ノードマスタ組み込みのユーザインターフェイスから「BACKUP」を実行すると、
全てのノードのデータベースをデバイスに同期させた上で、backupcmdで指定したバックアップコマンドが呼び出されます。
バックアップコマンドの第1引数にはサーバルートディレクトリの絶対パスが指定されます。
通常は、以下のようなシェルスクリプトを用意して、そのパスを指定するとよいでしょう。
$ cat backup.sh
#! /bin/sh
cd “$1”
name=printf '%s' ${PWD##*/}
cd ..
find “./$name” -depth | grep -v ‘./_pid’ |
cpio -o > “$namh.date -I
.cpio”
_pidファイルは不要ですので、アーカイブに含めないようにするか、アーカイブを展開した後に削除するようにしてください。なお、CPIO形式のファイルは「cpio -idv < casket.xxx.cpio」などとすると展開できます。
手動で実行する場合には、絶対パスでサーバルートディレクトリを指定する
$ ./backup.sh /absolute/path/to/estraier/server/root/dir
バックアップを展開する
以下を実行するとカレントディレクトリにサーバルートディレクトリが復元される
$ cpio -idv < casket.yyyymmddd.cpio
バックアップ用のシェルスクリプトを登録する
上記のbackup.shをHyper Estaraierのルートディレクトリにあるconfに追記する
$ vi conf
backupcmd: /path/to/backup.sh
その後以下のアクションを呼び出すことでバックアップが可能
http://localhost:1978/master?action=backup
備考:ノードを最適化する
以下のアクションを呼び出すことで、ノードのインデックスを最適化できる