ALTUS(アルタス)コラムDevOpsで捗るよね、という話2013/11/26DevOpsで捗るよね、という話DevOpsってなんだ?最近良くネット上で見かける「DevOps」という単語。デブ?オプス?最近腹の周りに肉がついてきた自分のことをいわれているのかと早とちりしそうになったのですが、どうも企業が競争に勝つための冴えたやり方のことをいっているらしい。※@IT様の記事へのリンクです「ツール」を使いこなすことと「企業文化」がキモらしいのですが、「企業文化」をすぐ変えるのは難しいので、まずはできる事からという事で「ツール」を試してみようと思います。企業文化はさておき、ツールだよね!さてIT業界に限らず、仕事はタスク(スケジュール)管理が大切です。仕切りのいい人、とはタスク管理の上手い人。それがシステムやソフトの開発に関わる話なら、バージョン管理もまた同様に関わってくるでしょう。メール同報すればいじゃん、エクセルでカレンダー作って配布すればいいじゃん、という認識では困ります。仕事は日々動き、日程もバージョンも刻々変わっていく。人間の記憶や手作業では追いつかない。大人数が関われば混乱へまっしぐら。appsを導入している方も多いと思うのですが、セキュリティとコストから導入できない企業もいるという事で、最近は定番とまでいわれている多機能でスゴそうなプロジェクト管理ツールのRedmineを試してみることにしました。行え、SubversionやGitなどのバージョン管理システムとの連携機能も備えており、ソフトウェア開発やwebサイト制作などのITプロジェクトで特に威力を発揮するらしいです。Redmine日本語情報サイトが1番目に表示されるので素直にいってみます。日本語の情報がそんなにないようなことを聞いたことがあるのですが、バッチリ日本語のサイトで情報も充実していて分かりやすいですね。詳しいインストールの手順についてはこちらのリンクが便利ですので参考にしてインストールしてみました。6.2にインストールしてみた※まずは事前にCentOS6.2をインストールした仮想サーバーを用意しておきます。CentOSを再起動します。コマンドを実行してSELinuxが無効になったことを確認してください。表示されればSELinuxは無効になっています。iptablesを有効にする。6.3の初期状態ではiptables(ファイアウォール)が有効になっており、外部からサーバ上の80/tcpポート(HTTP)に接続することができません。クライアントのwebブラウザからアクセスできるようiptablesの設定を変更します。開き、80/tcpへの接続を許可するための以下の記述を追加してください。設定が終わったらiptablesを再起動してください。restart次はRedmineを使用するにあたり、必要なパッケージのインストールを行います。用の拡張パッケージ)リポジトリを追加します。パッケージのURLを確認・コピーしておいてください。コマンドを実行してください。CentOSのyumリポジトリにEPELが追加されます。epel-release-6-8.noarch.rpm次は開発ツール(Cコンパイラ等)をインストールします。ipa-pgothic-fontsImageMagickと日本語フォントはガントチャートをPNG形式の画像にエクスポートするのに使われます。手順4)RubyのインストールRedmineはRubyで動きますので、Rubyをインストールします。1.9.3のソースコードをダウンロードしてください。※安定板を使用する為、1.9.3をインストールしました↓http://www.ruby-lang.org/ja/downloads/RubyのビルドダウンロードしたRubyのtarballを展開して、configureを実行してください。./configureRubyのビルドとインストールをします。cleanインストール後、rubyコマンドを実行して正しくインストールされたことを確認してください。[x86_64-linux]bundlerのインストールRedmineが使用するGemを一括インストールするためのツール、bundlerをインストールします。character_sets_dir以外すべてutf8になっていることを確認してください。設定が正しいか確かめてください。部分は任意のパスワードを設定してください。部分は任意のパスワードを設定してください。このパスワードは後述のdatabase.ymlの設定で使用します。2.0のtarball(.tar.gz)をダウンロードしてください。http://rubyforge.org/frs/?group_id=1850Redmineの展開と配置ダウンロードしたRedmineのtarballを展開してください。いうディレクトリが作成され、その下にRedmineを構成するファイル群が作成されます。redmine-2.0.0.tar.gzRedmineの配置先のディレクトリを決定し、そこへ展開したファイルを移動してください。配置先とする場合、以下のようにします。データベースへの接続設定Redmineからデータベースへ接続するための設定を記述したファイルを作成します。部分は、MySQL上に作成したRedmineユーザーのパスワードです。設定例がありますので参考にしてください。メールサーバへの接続設定Redmineからメールサーバへ接続するための設定を記述したファイルを作成します。部分は、Redmineを実行するサーバのFQDNとしてください。設定例がありますので参考にしてください。メールサーバへの接続設定のほかにもアップロードされたファイルの保管場所や、データベースの暗号化などが設定できます。Gemパッケージのインストールアプリケーションが必要とするGemを一括してインストールできるツール、bunderを使用してRedmineで使用するGemをインストールします。Redmineのインストールディレクトリで以下のコマンドを実行してください。オプションで指定しています。SQLiteを使用する場合は次のようにしてください。Redmineの初期設定とデータベースのテーブル作成セッションデータ暗号化用鍵の生成とテーブル作成を行います。Redmineのインストールディレクトリで以下のコマンドを実行してください。Passengerをインストールします。インストーラを実行し画面の指示に従って操作してください。passenger-install-apache2-moduleインストールが完了すると以下の様に表示されます。太字の部分はApacheに設定すべき内容なので控えておきます。実行して後で参照することもできます。Apacheの設定Passengerの設定を追加Passengerの設定をApacheに追加します。追加してもよいですが、管理しやすいようPassenger関係の設定は別ファイルにまとめます。Passengerの基本設定です。実行して表示される設定を使用。onApache上のPassengerでRedmineを実行するための設定Redmineを配置したディレクトリ以下のファイルを、Apacheを実行するユーザー・グループ(CentOSの場合はいずれも”apache”)で読み書きできるよう、オーナーを変更します。/var/lib/redmineどのような形態(URL)でRedmineを利用するかによって設定が異なりますが、今回はwebサーバをRedmine専用として使用する設定にします。webサーバのルートディレクトリでRedmineを実行するための設定です。「http://サーバIPアドレスまたはホスト名/」でRedmineにアクセスできます。Apacheを再起動してください。以上でインストールは完了です。ブラウザからアクセスしてログイン画面が開くか確認してみましょう。インストール完了後の初期設定インストールが完了したので、いろいろ試してみました。アクセスの際にはログインIDとパスワードは共に「admin」となっていますのでログイン。セキュリティの為にパスワードの変更を行います。パスワードを変更します次に、このままだとこのページを見た人は勝手にユーザー登録が出来てしまうので設定を変更します。画面上にある「管理」をクリックし、管理項目を表示します。その次は「設定」をクリック「設定」ページの中にある「認証」というタブをクリックします。ここに「ユーザーによるアカウント登録」というプルダウン項目がありますのでこれを「無効」に設定して、画面したの「保存」を押します。本当に最低限の変更が完了します。それでは試してみるぞ!ではまず初めに新しい「プロジェクト」を作ってみます。上部にある「プロジェクト」リンクをクリックし、その次に「新しいプロジェクト」をクリックします新しいプロジェクトの作成画面に切り替わります。必要項目を入力して「作成」ボタンを押します。識別子は最初の文字がアルファベットの小文字でないといけませんので注意してください。次に「トラッカー」を作成します。これが無いとプロジェクトの中でチケットを登録する事が出来ません。画面が遷移するので「新しいトラッカーを作成」をクリックします。トラッカーの名称を入力。紐付けするプロジェクトにチェックを入れ「作成」ボタンをクリックします。これでトラッカーの登録は完了です。次は「ロール」の作成を行います。「ロール」とはある権限を付与される対象となるグループの名称だと思ってください。画面の右側に表示されている「ロールと権限」をクリックします。この画面以外から遷移する場合には、画面上部の「管理」⇒「ロールと権限」と進めます。「新しいロール」をクリックしますまずは管理者権限のロールを作ります。名称は任意で構いませんがすべての項目にチェックを入れます。