はじめに
この記事ではWindowsマシンで運用していたRedmine(Bitnami利用)をCentOSマシン(同じくBitnami)へ移行する手順をざっくりまとめています。
以下が前提です
- Win7のBitnami Redmine 3.1.2-0から
- CentOS7(VM)のBitnami Redmine 3.1.2-0へ
- 中の人はLinux初心者
作業手順の検討
各種プラグインの動作確認に手間取ると予想されたので、以下の手順を考えました。
※もっと簡素化できると思います。参考までに。。
移行テスト
- 新環境へRedmineをインストール
- スナップショット取得
- 検証用にDBインポート
- テーマやファイルの移設
- 各種プラグイン導入
- この期に乗じてバージョンアップを図る
- 直接ソースを変更した機能などがあればview_customize化
- 各種の変更を集約して管理を容易にする
- 新環境で設定を作成し、無効状態で現環境へ登録しておけば楽ちん
- 動作検証
- 入念に行い、本番移行後の障害抑制を図る
本番移行
- 本番用のDBダンプ取得
- スナップショットで新環境をRedmineインストール状態へ
- 本番用DBをインポート
- 各種プラグイン導入
- view_customizeの設定を有効化
- その他プラグインの新機能を有効化
- 動作検証
- 正否を通知し、運用開始または再検証へ
実際の移行手順
Bitnami本家の情報が役に立ちます。 https://docs.bitnami.com/installer/apps/redmine/
実施した作業の手順は下記の通りです。
下準備
- 現行環境の管理者アカウント情報確認
- DBのダンプ取得
- cd C:\Bitnami\redmine-3.1.2-0\mysql\bin
- mysqldump --default-character-set=utf8 -u bitnami -pXXXXXXXXXX bitnami_redmine > c:\work\redmine_db_utf8.dump
Redmineのインストール
- インストーラに実行権限を付与
- chmod +x /hogehoge/bitnami-redmine-3.1.2-0-linux-x64-installer.run
- インストーラ実行
- sudo /hogehoge/bitnami-redmine-3.1.2-0-linux-x64-installer.run
- 言語選択ダイアログが表示される
- Japaneaseを選択してOK
- 次へ
- コンポーネントの選択
- SubversionやGitは入れておかないと後々面倒
- インストールフォルダ選択
- 任意の設定にし次へ
- 管理者アカウントの作成
- 現行環境と同様のアカウントを作成
- データベースに保管する際の規定の言語
- 日本語を選択し次へ
- SMTP設定
- 任意の設定にし次へ
- Bitnami Cloud Hosting
- 特には必要ないのでチェック外して次へ
- インストールする準備ができました
- 次へ
- OSのファイアウォール設定
- publicゾーンのhttpサービスを実行時/永続ともに有効化
- 接続確認
- 外部からhttp://hogehoge/redmine にアクセス
データの移行
- DBインポート
- /hogehoge/redmine-3.1.2-0/mysql/bin/mysql -u bitnami -pXXXXXXXXXX bitnami_redmine < /hogehoge/redmine_db_utf8.dump
※パスワードはdatabase.ymlで確認
- /hogehoge/redmine-3.1.2-0/mysql/bin/mysql -u bitnami -pXXXXXXXXXX bitnami_redmine < /hogehoge/redmine_db_utf8.dump
- DBマイグレーション
- /hogehoge/redmine-3.1.2-0/use_redmine
- cd /hogehoge/redmine-3.1.2-0/apps/redmine/htdocs
- bundle exec rake db:migrate RAILS_ENV="production"
各種ファイルの配置
- テーマ
以下に配置- /hogehoge/redmine-3.1.2-0/apps/redmine/htdocs/public/themes
- 添付ファイル
以下に配置- /hogehoge/redmine-3.1.2-0/apps/redmine/htdocs/files
- 添付ファイルフォルダの権限設定
- chown -hR daemon:daemon /hogehoge/redmine-3.1.2-0/apps/redmine/htdocs/files
- chmod -R 775 /hogehoge/redmine-3.1.2-0/apps/redmine/htdocs/files
その他の環境設定
- 名前解決
- 必要があれば以下ファイルに設定追加
- /etc/hosts
XXX.XXX.XXX.XXX hogehoge
- /etc/hosts
- 必要があれば以下ファイルに設定追加
基本動作の確認
- サービス再起動
- /opt/redmine-3.1.2-0/manager-linux-x64.run
- apacheを起動
※サービスの自動起動は別途設定が必要
プラグインの導入
特に苦労したプラグインについて
- redmine_app_notifications
- bundle installを通すための準備
- 参考
- 以下コマンドで必要になるライブラリ導入
- sudo yum install gcc gcc-c++ ruby-devel zlib-devel libxml2-devel libxslt-devel
※gcc-c++がeventmachine用、その他全てがnokogiri用
- sudo yum install gcc gcc-c++ ruby-devel zlib-devel libxml2-devel libxslt-devel
- faye入れるためのbundle install
- /hogehoge/redmine-3.1.2-0/use_redmine
- cd /hogehoge/redmine-3.1.2-0/apps/redmine/htdocs
- プロキシ環境では設定が必要
- export http_proxy=http://XXX.XXX.XXX.XXX:nnnnn/
※環境変数は小文字で
- export http_proxy=http://XXX.XXX.XXX.XXX:nnnnn/
- bundle config build.nokogiri --use-system-libraries
nokogoriのビルドにシステムのライブラリを使うための指定 - bundle install
- fayeの起動
- /hogehoge/faye_for_redmine start
- web-socket用のポート開放
- firewall-cmd --add-port=xxxx/tcp
- firewall-cmd --permanent --add-port=xxxx/tcp
- apache再起動
- bundle installを通すための準備
所感
- サーバ移行やバージョンアップを考えると、カスタマイズには必ずview_customizeプラグインを使うべき
- Bitnami便利