JIRA編)カテゴリ:CloudGarageというわけで今日はCloudGarage上にJIRAを構築した話の続きです。CloudGarageではインスタンスが3台(以上)立ち上げられるので、以下のような構成を作ることにします。構築に使用した設定ファイル(のテンプレート)等はGitLabに置いてあります。今回は実際にJIRAを稼働させるサーバーを作っていきます。環境JIRAのサポートしている環境のページには「インストーラーはCentOSでのみ検証してる」、という記述があるのでCentOSを採用することにします。EncryptでSSL証明書を取得nginxで80番と443番で待ち受け、80番はすべて443番にリダイレクト8080番ポートを接続許可にしていますが、これはJIRAの初期設定をする際、DBの初期化手順でnginxのタイムアウトに引っかかって環境が壊れる可能性がある(実際壊れた)ためです。そのため、初期設定は直接8080ポートで行って、終わったら接続許可から外すといいと思います。今回はdockerコンテナを使わずに直接Mackerel(とplugin集)をインストールします。Keyが設定されるので、設定した鍵でsshするとrootログインになります。Key設定して、rootでのsshを禁止して、みたいな作業をするといいと思います。今回の記事では以下全部rootで操作している想定なので、作業ユーザーで作業する場合は適宜sudoを指定するようにしてください。ドメインについてSSLを設定するにはドメインが必要です。インスタンスに割り当てられているグローバルIPに対してAレコードを設定しておいてください。以降は以下のレコードを設定したものとして説明していきます。jira.example.com手順まずはお決まりのシステム更新ですね。次に公式のサポートページを参考にしてJIRAをインストールしてセットアップしていきます。64bit用インストーラーのダウンロードリンクを確認しておきます。7.5.0のインストーラーをダウンロードします。ダウンロードできたら、実行権限を付けて実行します。./atlassian-jira-software-7.5.0-x64.binウィザードの途中で色々と質問されますが、デフォルトの設定で大丈夫だったような気がします。インストールの設定を変えたい場合は適宜調整してください。以下のようなメッセージが表示されたらインストール完了です。...続いてJIRAの初期設定です。手元のマシンからブラウザでhttp://jira.example.com:8080を開いて初期設定を行っていきます。基本的には画面の指示に従って設定を行っていくだけです。設定項目についてはJIRAのセットアップガイドに大体の流れが書いてあります。DBの設定については、前回の記事で別インスタンスにPostgreSQLをセットアップしているので、そちらに向けるようにします。(PostgreSQLをセットアップしたインスタンスのローカルIP)UserName/Password/DB名:セットアップしたPostgreSQLの設定通りNginxとSSLの設定nginxはyumでサクっとインストールしてサービスとして起動します。アクセスしてNginxのスタートページが出ていることを確認します。Encryptで証明書を作成します。Encryptで証明書を取得してnginxに設定する手順はさくらのナレッジがわかりやすいので参考にしました。Encryptのコマンドラインツールをインストールして証明書の発行を行います。Encryptの証明書は期限が短いので、証明書の自動更新を仕掛けておきます。cronで、毎週日曜日の午前4時に証明書の更新を仕掛けます。証明書が更新されたらnginxを再起動して証明書を入れ替えます。/dev/null証明書が取得できたのでnginxに設定していきます。ディレクトリにコピーします。nossl.conf.template:80番ポートへのアクセスを443番ポートにリダイレクトするための設定です。コピーする際にnossl.confにリネームします。ssl.conf.tempalte:443番ポート用の設定です。リバースプロキシとしてアクセスをJIRAに向ける設定が入っています。コピーする際にssl.confにリネームします。stub_status.conf:mackerel-plugin-nginx用の設定です。言いたいところですが、JIRAの方の設定も変えてやる必要があります。conf/server.xmlを以下のように修正します。proxyPort="443"/>...ここまで設定ができたらJIRAとnginxを再起動します。起動するといいかもしれない。あとは、JIRAにアクセスして管理画面からベースURLを設定したらSSLなJIRAの完成です。言いたいところですが、もうちょっとだけ設定することがあります。長いものにMackerelです。Mackerelとpluginをインストールしていきます。してコピーしたら、mackerel-agentを再起動します。mackerel-agentこれでしばらくしたら各種メトリクスがMackerelで確認できるはずです。今度こそお疲れ様でした。思いましたが、JIRAとほとんど手順が同じなので書きません。