5
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

サル以下でもできた!Redmineの移行(Windows Bitnami Redmine → AWS Bitnami redmine)

Last updated at Posted at 2018-05-01

自宅のWindows Redmine サーバーは色々不安があったのでAWSへ移行した時の覚書です

読むに当たっての前提条件

  • AWS が何なのかを概ね知っている。
  • Bitnami Redmine が何なのかを概ね知っている
  • WindowsとAWSに Bitnami Redmine環境がある。
  • Tera Termを使ったことがある又は、SSHで接続する方法を知っている。
  • FTPソフトが使え、SSH接続方法を知っていて使える。

パスワードその他必要な情報

/var/log/syslogを参照するとパスワードが取得できます。
このパスワードは、共通で使われているので大切です。
こんな感じで入っています。
May 1 02:57:35 ip-172-31-31-77 bitnami[1218]: #########################################################################
May 1 02:57:35 ip-172-31-31-77 bitnami[1218]: # #
May 1 02:57:35 ip-172-31-31-77 bitnami[1218]: # Setting Bitnami application password to 'xxxxxxxxxxxx' #
May 1 02:57:35 ip-172-31-31-77 bitnami[1218]: # (the default application username is 'user') #
May 1 02:57:35 ip-172-31-31-77 bitnami[1218]: # #
May 1 02:57:35 ip-172-31-31-77 bitnami[1218]: #########################################################################

  • Tera Termでのログインは bitnami+パスワード
  • DBのroot+パスワード
  • DBのbitnami+パスワード
  • phpmyadminだとroot+パスワード
  • データベース名:bitnami_redmine
  • DBの設定は/opt/bitnami/apps/redmine/htdocs/config/database.yml
  • メールの設定は、/opt/bitnami/apps/redmine/htdocs/config/configuration.yml
  • 使いどころはわかりませんが、userというIDもあるみたい。
    ポイントになるディレクトリをあげておきます。
    /opt/bitnami/apache2/logs
    /opt/bitnami/apps
    /opt/bitnami/apps/redmine/htdocs
    /opt/bitnami/apps/redmine/htdocs/config
    /opt/bitnami/apps/redmine/htdocs/log
    /opt/bitnami/apps/phpmyadmin/conf/
    /var/log
    変だなって思ったらここのログを見る
    /opt/bitnami/apps/redmine/htdocs/log/production.log

my.cnfの場所を探す
$ mysql --help | grep my.cnf
ここに実際ありました。
/etc/mysql

phpMyAdminを使えるようにしておくと便利なので

そのままだと、外部からアクセスできないので設定を変更します。
/opt/bitnami/apps/phpmyadmin/conf/httpd-app.conf の以下の項目を編集

  • Allow from 127.0.0.1 → Allow from all
  • ・Require local → Require all granted
    apacheを再起動
    sudo /opt/bitnami/ctlscript.sh restart apache
    これで起動ができるようになります。
    bitnamiでログインしてもよいですが、root+パスワードログインする方が良いかもです。
    ★注意!対象のサーバーを一般に公開する場合は、危険なので必要なくなったら元に戻すか、IPを限定するなどしましょう。

ローカルにWindows側のバックアップを取る

以前のサーバーにもphpmyadminがあると思います。データエクスポートしましょう。
後で、AWSのサーバーに転送してます。
他のサイトにはコマンドで実行する旨がよく書いてあります。
僕はコマンド苦手なのでこうしましたが、どちらでもお好みでどうぞ!
参考はこちら
[Bitnami Redmine Installer]
(https://docs.bitnami.com/installer/apps/redmine/)

インストール先のバックアップを取る

  • 書き込み権限のある場所に移動(そこに取ります)
    cd /var/tmp
  • サービスの停止
    sudo installdir/ctlscript.sh stop
  • バックアップ
    sudo tar -pczvf bitnami_application-backup.tar.gz /opt/bitnami
念の為、**ls**でファイルができているか確認しましょう。
- 最後に止めておいたサービスをの起動しましょう
sudo /opt/bitnami/ctlscript.sh start
念の為なので終わったら、ローカルにコピーするなり好きにしてください。
失敗談:うっかりして、目的でない別のサーバーで作業してました。

## DBのインポート
phpMyAdmin使っても良いです。
通常は2MBだったと思いますが、80MB位までなら大丈夫に設定されているみたいです。
必要なサービスの停止と開始  
    sudo /opt/bitnami/ctlscript.sh stop apache
    sudo /opt/bitnami/ctlscript.sh stop mysql
    sudo /opt/bitnami/ctlscript.sh start mysql
Windowsからバックアップしたファイルを新サーバーに転送します。
場所はどこでもよいです。とりあえず以下に置きました。
/var/tmp/bitnami_redmine.sql
cd /var/tmp/
mysql -u root -p
Password: XXXX
mysql> drop database bitnami_redmine;
mysql> create database bitnami_redmine;
mysql> grant all privileges on bitnami_redmine.* to 'bn_redmine'@'localhost' identified by 'XXXX';
CTRL+C又はexit;で終了
mysql -u root -p bitnami_redmine < bitnami_redmine.sql
Password: XXXX
rm bitnami_redmine.sql

## ファイルの取り込み
添付ファイルのフォルダーをファイルをコピーします。
プラグインがあればそれも。
場所だけ書いておきます。
/opt/bitnami/apps/redmine/htdocs/files
/opt/bitnami/apps/redmine/htdocs/plugins
Windows側も似たような場所にありますから探してください。
念の為、あるかどうかも確認します。
パーミッション(書き込みできるか)も確認しておきましょう。

## DB接続の編集
redmine構成ファイルを編集してデータベース名(以前に設定したものと同じ)を更新します。
必要ならユーザーIDとパスワードを設定します。
正しく設定しないとマイグレーションでエラーが出る。当然だけど。

## 最後にマイグレーション
cd /opt/bitnami/apps/redmine/htdocs/
ruby bin/rake db:migrate RAILS_ENV=production
うまく行かない場合は、SQL接続してログインできるか試してみるといい。

## サーバーを再起動します。
Apache再起動方法はこれ!!
sudo /opt/bitnami/ctlscript.sh start apache```

## おっと、忘れてた
メールの設定を前のサーバーのをコピーして使いましょう。
/opt/bitnami/apps/redmine/htdocs/config/configuration.yml
を編集して
sudo /opt/bitnami/ctlscript.sh restart apache```

## WEBからの確認
WEBから接続を確認しましょう。
場合によってはメール送信部分の変更は必要かもしれません。

# 超ハマったこと!!

##1. メール設定のエラーで画面に?
このエラー
We're sorry, but something went wrong.
The issue has been logged for investigation. Please try again later.
先輩に教えてもらいました。
これをテストした時に定義の桁位置ずれを起こしていました。
/opt/bitnami/apps/redmine/htdocs/config/configuration.yml
データが始まる位置で入れこができるらしく、それがずれるとダメということです。
ついでに言うと、スペースだけが入った行があっても駄目だそうです。

##2.メールがとばないその1
redmineの個人設定で「自分自身による変更の通知は不要」をチェックしていた。
全然気が付かなかった。先輩ありがと!

##3.メールがとばないその2
メールの設定で、
/opt/bitnami/apps/redmine/htdocs/config
SSLを使っていないのに使う設定にしてました。
以下の様に設定
enable_starttls_auto: false
想像もできなかった。重ねて先輩ありがとう!
持つべきものはいい先輩だなー。
とは言え、その先輩は自分より30歳以上年下なんだけど。
笑えません。
##4.ファイルのアップロードができない
アップロードできない。/opt/bitnami/apps/redmine/htdocs/logを見たら、パーミッションエラーが出ていた。
Completed 500 Internal Server Error in 13ms (ActiveRecord: 3.3ms)
Errno::EACCES (Permission denied @ dir_s_mkdir - /opt/bitnami/apps/redmine/htdocs/files/2018/05):
パーミッションが775になっていた。これでだめなんだ~。777にして完了。

# 訂正:サルには無理でした。さて、コーヒータイムにしましょうか

# 参考サイト
[RedmineサーバのWindows環境からCentOS環境への移行手順]
(https://qiita.com/GEROMAX/items/2893744ae63250d44e4a)

[MySQLをインストールしたけど起動しないときのデバッグ方法]
(https://qiita.com/karadaharu/items/d96974c0c0141546f565)
5
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?