Bitnami Redmine 3.3.3をAWSのEC2(RHEL 7.3)上でバックアップ
目次
概要
AWSのEC2上に構築したBitnami Redmine 3.3.3のバックアップを取得します。 公式ドキュメントに掲載されている手順と基本的に同じ(パスの指定方法を微妙に修正)で、 Bitnami Redmineスタックを停止して、tarコマンドでtar.gz形式でアーカイブするだけです。 Bitnami Redmineの停止には標準でバンドルされている起動・停止スクリプトを使用します。 なお、今回は示していませんが、リストアはtar.gzファイルをtarコマンドで解凍するだけです。
構成
検証環境
今回AWS(Amazon Web Services)のEC2上に構築したBitnami Redmineのバックアップを取得しました。 OSはRHEL 7.3ですが、ディストリビューションやバージョンに関係なく同じ手順でいけると思います。 あまり関係ありませんが、サーバのスペックは以下のとおりです。
項目 | 内容 |
---|---|
インスタンスタイプ | t2.micro |
vCPU | 1 |
メモリ | 1GB |
ディスク | SSD 10GiB |
リージョン | オレゴン |
価格 | 無料 |
サーバ構成
OSバージョン
Red Hat Enterprise Linux 7.3 x86_64
ソフトウェア・パッケージ一覧
- bitnami-redmine-3.3.3-0-linux-x64-installer.run
- wget-1.14-13.el7.x86_64.rpm
- glibc-devel-2.17-157.el7_3.1.x86_64.rpm
- perl-5.16.3-291.el7.x86_64.rpm
- perl-Data-Dumper-2.145-3.el7.x86_64.rpm
手順
Bitnami Redmineのバックアップ
Bitnami Redmineの停止
バックアップを取得する前にBitnami Redmineを停止します。 Bitnami Redmineにバンドルされている起動・停止スクリプト(ctlscript.sh)がありますので、これを利用します。
# cd /opt/redmine-3.3.3-0/
# ./ctlscript.sh stop ←停止スクリプト実行
/opt/redmine-3.3.3-0/subversion/scripts/ctl.sh : subversion stopped
Syntax OK
/opt/redmine-3.3.3-0/apache2/scripts/ctl.sh : httpd stopped
/opt/redmine-3.3.3-0/mysql/scripts/ctl.sh : mysql stopped
バックアップの取得
バックアップにはLinux標準のtarコマンドを使用します。 tarコマンドでBitnami Redmineのインストールディレクトリを指定して、tar.gz形式でアーカイブします。 なお、cpコマンドでディレクトリ単位のコピーをするだけでも良いですが、1つのファイルにアーカイブしておいた方が バックアップファイルの移動が簡単になるのと、サイズが小さくなるのでお勧めです。 以下の例では /opt/redmine-3.3.3-0/ ディレクトリにインストールしたBitnami Redmineを /backup/20170514_redmine.tar.gz というファイル名でバックアップ(アーカイブ)します。
# cd / # mkdir backup ←バックアップ先ディレクトリを作成 # cd /opt/ # tar zcvf /backup/20170514_redmine.tar.gz redmine-3.3.3-0/ ←tar.gz形式でバックアップ redmine-3.3.3-0/ redmine-3.3.3-0/README.txt redmine-3.3.3-0/changelog.txt redmine-3.3.3-0/licenses/ redmine-3.3.3-0/licenses/mpfr.txt (中略) redmine-3.3.3-0/.bitnamirc redmine-3.3.3-0/.bashrc redmine-3.3.3-0/use_redmine redmine-3.3.3-0/uninstall redmine-3.3.3-0/uninstall.dat # ls -l /backup/ total 259820 -rw-r--r-- 1 root root 266055098 May 14 09:49 20170514_redmine.tar.gz ←バックアップファイル
なお、上記のようにバックアップした場合、バックアップファイル(tar.gzファイル)をリストア(解凍)すると、 カレントディレクトリに redmine-3.3.3-0 ディレクトリが展開されます。
Bitnami Redmineの起動
バックアップの取得が完了したら、Bitnami Redmineを起動します。 起動には停止と同じバンドルスクリプトを使用します。引数がstopからstartに変わるだけです。
# cd /opt/redmine-3.3.3-0/
# ./ctlscript.sh start ←起動スクリプト実行
170514 09:51:50 mysqld_safe Logging to '/opt/redmine-3.3.3-0/mysql/data/mysqld.log'.
170514 09:51:50 mysqld_safe Starting mysqld.bin daemon with databases from /opt/redmine-3.3.3-0/mysql/data
/opt/redmine-3.3.3-0/mysql/scripts/ctl.sh : mysql started at port 3306
Syntax OK
/opt/redmine-3.3.3-0/apache2/scripts/ctl.sh : httpd started at port 80
/opt/redmine-3.3.3-0/subversion/scripts/ctl.sh : subversion started at port 3690
起動確認
起動スクリプトの実行の過程でも起動が確認されますが、念のためプロセス一覧を表示してプロセスの起動を目視します。 以下のように表示されれば起動は成功しています。
ただし、Apacheの設定(httpd.conf)で起動するプロセス数を変更している場合は、表示されるApacheのプロセス数が変わります。
# ps -ef | grep apache2 ←Apacheのプロセス起動確認 root 2143 1 0 09:52 ? 00:00:00 /opt/redmine-3.3.3-0/apache2/bin/httpd.bin -f /opt/redmine-3.3.3-0/apache2/conf/httpd.conf daemon 2166 2143 0 09:52 ? 00:00:00 /opt/redmine-3.3.3-0/apache2/bin/httpd.bin -f /opt/redmine-3.3.3-0/apache2/conf/httpd.conf daemon 2167 2143 0 09:52 ? 00:00:00 /opt/redmine-3.3.3-0/apache2/bin/httpd.bin -f /opt/redmine-3.3.3-0/apache2/conf/httpd.conf daemon 2168 2143 0 09:52 ? 00:00:00 /opt/redmine-3.3.3-0/apache2/bin/httpd.bin -f /opt/redmine-3.3.3-0/apache2/conf/httpd.conf daemon 2169 2143 0 09:52 ? 00:00:00 /opt/redmine-3.3.3-0/apache2/bin/httpd.bin -f /opt/redmine-3.3.3-0/apache2/conf/httpd.conf daemon 2170 2143 0 09:52 ? 00:00:00 /opt/redmine-3.3.3-0/apache2/bin/httpd.bin -f /opt/redmine-3.3.3-0/apache2/conf/httpd.conf daemon 2220 2143 0 09:52 ? 00:00:00 /opt/redmine-3.3.3-0/apache2/bin/httpd.bin -f /opt/redmine-3.3.3-0/apache2/conf/httpd.conf daemon 2327 2143 0 09:54 ? 00:00:00 /opt/redmine-3.3.3-0/apache2/bin/httpd.bin -f /opt/redmine-3.3.3-0/apache2/conf/httpd.conf daemon 2330 2143 0 09:54 ? 00:00:00 /opt/redmine-3.3.3-0/apache2/bin/httpd.bin -f /opt/redmine-3.3.3-0/apache2/conf/httpd.conf daemon 2332 2143 0 09:54 ? 00:00:00 /opt/redmine-3.3.3-0/apache2/bin/httpd.bin -f /opt/redmine-3.3.3-0/apache2/conf/httpd.conf daemon 2334 2143 0 09:54 ? 00:00:00 /opt/redmine-3.3.3-0/apache2/bin/httpd.bin -f /opt/redmine-3.3.3-0/apache2/conf/httpd.conf root 4120 30757 0 11:05 pts/0 00:00:00 grep --color=auto apache2 # ps -ef | grep mysql ←MySQLのプロセス起動確認 root 1836 1 0 09:51 pts/0 00:00:00 /bin/sh /opt/redmine-3.3.3-0/mysql/bin/mysqld_safe --defaults-file=/opt/redmine-3.3.3-0/mysql/my.cnf --mysqld=mysqld.bin --socket=/opt/redmine-3.3.3-0/mysql/tmp/mysql.sock --datadir=/opt/redmine-3.3.3-0/mysql/data --log-error=/opt/redmine-3.3.3-0/mysql/data/mysqld.log --pid-file=/opt/redmine-3.3.3-0/mysql/data/mysqld.pid --lower-case-table-names=1 mysql 2093 1836 0 09:51 pts/0 00:00:01 /opt/redmine-3.3.3-0/mysql/bin/mysqld.bin --defaults-file=/opt/redmine-3.3.3-0/mysql/my.cnf --basedir=/opt/redmine-3.3.3-0/mysql --datadir=/opt/redmine-3.3.3-0/mysql/data --plugin-dir=/opt/redmine-3.3.3-0/mysql/lib/plugin --user=mysql --lower-case-table-names=1 --log-error=/opt/redmine-3.3.3-0/mysql/data/mysqld.log --pid-file=/opt/redmine-3.3.3-0/mysql/data/mysqld.pid --socket=/opt/redmine-3.3.3-0/mysql/tmp/mysql.sock --port=3306 root 4126 30757 0 11:05 pts/0 00:00:00 grep --color=auto mysql # ps -ef | grep subversion ←Subversionのプロセス起動確認 subvers+ 2178 1 0 09:52 ? 00:00:00 /opt/redmine-3.3.3-0/subversion/bin/.svnserve.bin -d --listen-port=3690 --pid-file=/opt/redmine-3.3.3-0/subversion/tmp/svnserve.pid root 4132 30757 0 11:05 pts/0 00:00:00 grep --color=auto subversion