Redmineを運用するためのイロハを身につけよう

第7回 Javaプラットフォームでの運用

この記事を読むのに必要な時間:およそ 4 分

前回は軽量WEBサーバであるlighttpdを利用することでRedmineをより良いパフォーマンスで動かすための方法を紹介しました。今回はRedmineをJava EEのアプリケーションサーバで運用するための方法を紹介します。

読者の方には既にJava環境で他システムを運用している方もいらっしゃるかと思います。そのような場合に,Java EEのアプリケーションサーバとJRubyを利用することで,既存の環境に出来るだけ手を加えずにRedmineを運用したいという要望を実現することができます。

Java EEのアプリケーションサーバは数多く存在しますが,今回はその中でも多くの機能を兼ね備えており,注目度が高いオープンソース・プロダクトであるGlassfishで運用するための方法を解説します。

Glassfish以外にもRailsアプリケーションを運用することができるアプリケーションサーバには以下のようなものもあります※1)。

  • Tomcat
  • WebSphere
  • Oracle OC4J
  • BEA Weblogic

それでは始めに,Javaで実装されたRubyであるJRubyを利用することのメリットと,Java EEのアプリケーションサーバで運用するメリットを整理しておきます。

※1)
筆者が実際に稼動確認をしたわけではありませんが,これらのアプリケーションサーバでの運用方法がこちらにまとめられていますので参考にしてください。

JRubyを利用することで得られるメリット

  • Rubyの特性がそのままメリットとなる
  • Javaとの連携が可能でJavaライブラリを活用する事ができる
  • JDBCドライバを利用することで対応DBを増やすことができる

Java EEのアプリケーションサーバで運用することで得られるメリット

  • Java EEの運用環境の良さをそのまま得られる
    • 情報量が豊富で,多くの運用実績がある
    • パフォーマンス・安定性を獲得できる
    • 運用監視が充実している
    • スケールアウトしやすい

上記のように数多くの恩恵を受けることができます。それでは,RedmineをJava EEのアプリケーションサーバで稼動させる方法を紹介していきます。運用する環境にRubyを導入するのが難しいという方は,JRubyと glassfishを利用してJavaプラットフォーム上でRedmineを稼動させてみましょう。

環境構築

Redmineを運用するサーバと動作確認を行うサーバ(テストサーバ)が異なっている場合,それぞれのサーバで必要となるミドルウェアが異なります。今回は,テストサーバでWARファイルを作成してからテストサーバのglassfishにデプロイし,動作確認を済ませた後に,運用サーバの glassfishにWARファイルをデプロイさせて運用するというスタイルを前提に解説していきます。

以上の前提より,テストサーバおよび運用サーバでは,以下のものが必要となります。

テストサーバ
  • JRubyもしくはRuby
  • warファイル生成のためのプラグインであるgoldspike
  • マイグレートするためのrakeパッケージ
  • JDBC接続用のgemパッケージ
    • jdbc-mysql
    • activerecord-jdbcmysql-adapter
    • activerecord-jdbc-adapter
  • glassfish
運用サーバ
  • JRubyもしくはRuby
  • マイグレートするためのrakeパッケージ
  • glassfish

本連載の第1回でRubyおよびrubygemsのインストール方法は紹介しましたので,今回は,JRubyのインストール方法を解説します。

JRubyの導入

JRubyを利用するためには Java SE 5.0 以降が必要となります。今回は JDK 6.0 Update6 を /usr/local 以下にインストールしておきます。ダウンロードすべきファイルおよびインストール手順はJava SE Downloadsサイトに紹介されていますので,そちらを参考にしてください。

続いて以下のURLにアクセスし,JRubyのバイナリ版をダウンロードします。

$ wget http://dist.codehaus.org/jruby/jruby-bin-1.1.2.tar.gz

ダウンロードしたファイルを今回は /usr/local 以下に展開します。

$ tar xvzf jruby-bin-1.1.2.tar.gz

このままではコマンド実行時にフルパスを指定しなければならないため,ホームディレクトリ以下の.bashrcを編集し環境変数を設定します。

JAVA_HOME=/usr/local/jdk1.6.0_06
JRUBY_HOME=/usr/local/jruby-1.1.2

また,PATHの最後部に,${JAVA_HOME}/bin:${JRUBY_HOME}/bin を追加します。編集したファイルの設定を反映するために以下のコマンドを実行します。

$ source ~/.bashrc

続いて以下のコマンドを実行し,Javaが利用可能な状態になっていることを確認します。

$ java -version

java version "1.6.0_06"
Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
Java HotSpot(TM) Client VM (build 10.0-b22, mixed mode, sharing)

著者プロフィール

安達輝雄(あだちてるお)

TIS株式会社勤務。入社してすぐにRuby on Railsと出会う。現在はJRubyやXenなどOSSを中心に調査・検証をおこなっている。

ブログ:http://d.hatena.ne.jp/interu/


並河祐貴(なみかわゆうき)

TIS株式会社 基盤技術センター所属。オブジェクト指向開発,開発環境・ツール整備に従事した後,近年はRuby on Railsを中心としたオープンソース系ミドルウェアの検証/導入や,Xenなどのサーバ仮想化技術をターゲットに取り組んでいる。

ブログ:http://d.hatena.ne.jp/rx7/

コメント

コメントの記入