フォールバック手法による JIRA アプリケーションのアップグレード

JIRA 7.0 より前のバージョンからアップグレードする場合、「 移行ハブ」を参照してください。JIRA 7.0 のリリースではユーザー管理、アプリケーション アクセスとログイン権限、および JIRA インストールセットアップに影響を与える機能が含まれていました。したがって、アップグレード前に要件と影響について理解しておくことが非常に重要です。移行ハブには、このすべての情報が便利な1つのスペースにまとめられています。

このページでは、アップグレードプロセスが予想以上に長引いたり、問題が発生したりした場合に、安全に元のシステムにロールバックできる手段を確保しながらバージョン 4.4.x 以降の JIRA をアップグレードする方法について説明します。この方法は、エンタープライズ環境や、JIRA をビジネスでミッションクリティカルな用途に使用している企業において特に有用です。この方法はオプションとしてフォールバックが可能であり、 JIRA を実行するオペレーティングシステムの変更、JIRA のデータを格納するデータベースの変更、JIRA のインデックスや添付ファイルのパスの変更など、大掛かりなシステム変更を行う場合にも有用です。

ここで説明する手順は、極めて安全なアップグレード手法を提供するべく設計されており、従ってデータベース管理業務に関する高度な知識が必要です。当社では、アップグレードに際しては以下の分野のリソースおよび専門知識を活用できるようにしておくことを推奨します:

  • データベース管理者 – 本番環境レベルでのデータベース管理全般 (バックアップ、作成、削除、復元など)
  • JIRA アプリケーション管理者 – アプリケーション管理とアップグレードの管理全般 (JIRA SME、システム管理者権限を持ち、アプリケーションやそれに付随する依存関係に関する深い知識を有する組織内ユーザー)
  • システム/ネットワーク管理者 – システムおよびネットワークの管理 (プロキシサーバー、DNSの変更、モニタリング、仮想マシン、ハードウェアなど)

ここで説明するアップグレードの手順ではデータベースのバックアップの作成が必要ですが、この作業には時間がかかることがあります。お客様が大規模 な JIRA 環境を利用している場合は、4 時間のダウンタイムを予定してください。お客様のシステムがインデックスの再構築に何時間かを要することが分かっている場合は、4 時間を超えるアップグレード所要時間を見込んでください。

この図は、本ドキュメントで説明する手順を示したものです。シンプルにするために、図で は2台のサーバーハードウェアを使用してアップグレードを行う場合を示していますが、テストおよびアップグレード実行用の JIRA を同一サーバーの異なるディレクトリにインストールする場合も同様な作業が可能です。その場合は、元の本番環境とは別の JIRA アプリケーションとデータベースをテストに使用していることを確認すれば問題ありません。

 

Upgrade_SafeMethod

始める前に

  • 新しいバージョンについて読む - アップグレードしようとしている JIRA バージョンのリリースノートやアップグレードに関する注意事項を確認します。JIRA サーバーのリリースノートを参照してください。アップグレード中にいくつかの JIRA バージョンをスキップする予定がある場合は、現在のバージョンから目的のアップグレードバージョンの間のすべてのメジャーバージョンに関するアップグレードガイドを読むことを強くお勧めします。
  • ライセンスの確認 – お客様の ライセンスサポート期間 が有効期間内であることを確認します。
  • 既知の問題の確認 - 影響を与える新しいバージョンの問題点を検索するには、JIRA ナレッジベースを利用します。
  • 互換性の確認:
    • お客様のオペレーティングシステム、データベース、その他の利用可能なプラットフォームおよびハードウェアが JIRA 7.3 の 要件 を満たしていることを確認します。サポート終了のお知らせのページにも、今後リリースする JIRA のバージョンにおけるプラットフォームサポートに関する重要な情報が記載されています。
    • Jira のプラグイン (Jira にデフォルトで含まれない機能) をインストールした場合は、アップグレード先の Jira のバージョンとの互換性を確認する必要があります。プラグインの互換性の情報については、Atlassian Marketplace のプラグインのホームページをご参照ください。
    • ウィルス対策ツールやインターネットセキュリティーツールの中には JIRA アップグレードの障害となるものがあり、アップグレードが成功しないことがあります。ウィルス対策ツールやインターネットセキュリティーツールに関して、お客様がそのような経験をお持ちであるか、またはそのような事態に陥る恐れがある場合は、JIRA のアップグレード作業に入る前にまずこれらのツールを無効にしてください。
  • JIRA の新しいバージョンの事前ステージングとテスト - 最初に、テスト環境でアップグレードを実行することを強くお勧めします。 テスト環境におけるアップグレードが成功しない限り、本番環境の JIRA サーバをアップグレードしないでください。
    • テスト環境におけるアップグレードで解決できない問題がある場合、弊社サポートサイトで課題を作成してサポートを受けてください。
    • 本番環境の JIRA サーバのアップグレード中に問題が発生した場合は、サーバをユーザに利用させてはいけません。代わりに、以下を行って下さい:
      • 古い JIRA サーバを引き続き使用して下さい。これによって、本番環境のデータが失われずに済みます。
      • また、サポートサイトで課題を作成していただくことで、弊社はアップグレードに伴う様々な問題をお客様が解決できるよう支援できます。
      事前ステージングとテストに関する説明
      1. アップグレード後の JIRA システムのテストを行う際に本番環境用データのコピーを利用する場合は、お客様のシステムにネイティブに備えられているデータベースバックアップツールを使用してコピーを作成しておきます。「データのバックアップ」を参照してください。また、データベースのコピー作成を省略して新しいデータベースをテストに使用することもできます。
      2. アップグレードする JIRA のバージョンを、テスト用システム (テスト用サーバーか、または既存システムの別のディレクトリ) にインストールします。これは、アップグレードプロセスが完了すると新たな本番環境システムとなります。JIRA の新しいバージョンのインストールは、「 JIRA アプリケーションのインストール」の説明に従ってください。

      3. カスタム設定を行っている場合は、それを本番システムに移行します。「別のサーバーへの JIRA の移行」ページの手順 3.4 (既存の JIRA の設定を新しい JIRA インストールに移行) の説明に従ってください。
      4. JIRA の新しいバーションを本番環境用データベースのコピー (既存の本番環境用データベースではありません) または新しいテスト用データベースに接続します。詳細は、「JIRA のデータベース接続 」を参照してください。
      5. 新しいバーションの JIRA を起動します。テストシステムから意図しない電子メールをユーザーに送信することなく電子メール関連の設定のテストを行う方法については次のナレッジベースドキュメント をご覧ください : How to Prepare a Development Server's Mail Configuration
      6. 元のバージョンの JIRA で使用しているプラグインをインストールします。プラグインによっては、JIRA のバージョンが変わると互換性が失われるものがありますので、この手順では新しい JIRA のバージョンに対応してプラグインがアップデートされていることを確認する必要があります。
      7. JIRA のインデックス再構築 を行って新しいプラグインの情報をインデックスに反映します。
      8. Check out the features and functionality you use in the new version to understand how they behave and how any changes will impact your team. It can be very helpful to have a group of users look at the new system and carry out their usual tasks to make sure they won't run into any issues when the new version is in production.
        When you are ready to begin the process of migrating your production data to this new version, shut down JIRA (for example, by executing either the /bin/stop-jira.sh or \bin\stop-jira.bat file in your JIRA application installation directory, or by stopping the JIRA service).

 

アップグレードプロセス中に問題が発生した場合は、弊社サポートサイトで課題を作成することで、アップグレードに伴う問題解決のサポートを受けることができます。最初に以下の手順をテストとしてのみ実行することを強くお勧めします。それによって、何らかの複雑な問題 (カスタマイズした設定やアドオンに伴う問題) がある場合に事前にそれを認識することができるため、システムのダウンタイムを最小化できます。

1. 本番環境のインスタンスにおけるアップグレード準備作業

アップグレード準備作業に入る際は、本番環境のシステムに対して重要な変更 (プラグインのアップグレード、カスタマイズなど) を行う処理をすべて停止します。本番環境システムを可能な限り安定化することにより、新しいバージョンのテストが簡単になります。

またユーザーに対して、メールまたは JIRA の お知らせバナーを利用してシステムダウン予定時間の通知を行うことも望ましいことです。

2. Set up a proxy server

アップグレードプロセスを開始する前に、ロードバランサーなどのリバースプロキシの設定を行います。プロキシサーバーは、DNS の変更を待機する必要なしにユーザーを別の JIRA サーバーにリダイレクトする機能を有し、これはエンドユーザーからは不可視です。アップグレードプロセスで解決不能な問題が発生し、元の JIRA インスタンスにロールバックする必要が生じた場合は、単に元の JIRA インスタンスを再起動してからプロキシサーバーが元のサーバーをポイントするように再設定するだけで元に戻ります。

本番環境用サーバーに関連して、モニタリング、API 呼び出し (SOAP、REST、CLI 等)、またはスクリプトを使用する場合は、それらをアップデートして新たに設定したプロキシ情報を反映させます。

Apache の設定に関する詳細情報は以下のドキュメントをご覧ください :

3. 元の本番環境用 JIRA インスタンスの無効化と新しいインスタンスの起動

元の本番環境用 JIRA インスタンスを無効化する前に、添付ファイルとインデックスのディレクトリの場所を確認します。これらが JIRA ホームディレクトリ 外にある場合は、アップグレードプロセスでそれらを手動でバックアップする必要があります。お客様の環境におけるこれらのディレクトリの場所を確認するには、次の各ページをご覧ください。

添付ファイルおよびインデックスのディレクトリが JIRA ホームディレクトリ外にある場合は、後でそれらを容易に見つけられるように場所をメモしておきます。

添付ファイルおよびインデックスの保存ディレクトリの場所を確認した後、元の本番環境用インスタンスを停止して、データベースのバックアップを開始します :

  1. Shut down your old production JIRA instance (for example, by executing either the /bin/stop-jira.sh or \bin\stop-jira.bat file in your JIRA application installation directory, or by stopping the JIRA service).
  2. お客様のデータベースのネイティブ バックアップツールを使用して、元の本番環境用 JIRA インスタンスのデータのバックアップを実行します。「データのバックアップ」を参照してください。
  3. 本番環境用データベースの最新のコピーを、新しい本番環境用のデータベースに設定します。

    新しい本番環境における JIRA で使用されるデータベースは、元の本番環境における JIRA の通常のデータベースバックアップファイルとは明確に区別しなければならず、また新しい本番環境のデータベース設定が元の本番環境用データベースに接続す る設定になってはいないことを確認する必要があります。

  4. JIRA の添付ファイル ディレクトリを同期します。
    1. Locate the JIRA home directory. You can find information about the location of the directory by navigating to the <jira-application-dir>/WEB-INF/classes/jira-application.properties file in your JIRA application installation directory. Alternatively, you can open the JIRA configuration tool to see the directory that is set as your JIRA home.
    2. 設定ファイルに記録されているディレクトリに移動して、別のディレクトリにそのバックアップを作成します。
    3. 添付ファイルおよびインデックスのディレクトリがJIRA ホームディレクトリ外にある場合は、この2つのディレクトリのバックアップをそれぞれ別に作成する必要があります。(これらのファイルを見つける方法はこのタスクの最初に説明されています。)

      JIRA の添付ファイルのバックアップに関する詳細については、「データのバックアップ」も参照してください。

    4. 新しい JIRA 本番環境の JIRA ホームディレクトリ (添付ファイルおよびインデックスのディレクトリが JIRA ホームディレクトリ外にある場合はそれらも) を、上で作成した元の JIRA 本番環境のディレクトリのバックアップで置き換えます。
  5. 新しい本番環境における新しいバージョンの JIRA を起動します。起動すると JIRA はデータをアップグレードし、必要ならばインデックスの再構築を行います。再構築完了後、データが存在し、システムに何の問題もないことを確認します。

     

    JIRA インスタンスのサイズによっては、インデックスの再構築に数時間かかることがあります。お客様のインスタンスにおいてインデックス構築時間が長いことが分かっている場合は、ダウンタイムの予定にそれを反映させてください。

  6. 新しい JIRA バージョンが本番環境のインスタンスになるように、ステップ 2 で設定したプロキシサーバーを再設定します。新しいインスタンスの情報 (新しいドメイン名を含む) およびユーザーに影響のある変更が行われている場合はその変更内容に関する情報を必ずユーザーに知らせてください。

新しい本番環境において何らかの問題が発生した場合は、それが解決されるまで単にプロキシサーバー設定を元に戻して元の本番環境のインスタンスを再度使用できるようにします。

4. ポストアップグレードのチェックおよびタスク

新しい JIRA を起動したあとに以下の確認をすることを推奨します。

  1. JIRA が正常に稼働しているように見えても、 サーバー ログにエラーメッセージがないか確認します。自己解決できないエラーがある場合、サポート ケースを作成し、ログファイルを添付してください。当社がエラーの対処方法をご案内致します。
  2. 前に外部ユーザー管理機能を使用していた場合は、新しい JIRA インスタンスでも有効にします。
  3. アップグレード時にマシンも変更した場合は、JIRA の管理セクション内でインデックス、添付ファイル、バックアップのディレクトリのパスを変更します。
  4. テストの間に E メール機能を無効にしていた場合は、これを有効に戻します。
  5. 古い JIRA から新しい JIRA へカスタマイズしたものを移行した場合は、それを入念にテストします。
    1. 新しい JIRA バージョンのためにプラグインをダウンロードした場合は、新しい JIRA バージョンにダウンロードした JAR ファイルをインストールして、そのプラグインが必要とするその他のすべてのインストールを実行します。
    2. もしプラグインにプロパティファイルがある場合は、古い JIRA で実施したものと同じ変更を適用します(古いプロパティファイルをコピーしないようにしてください)。
  6. 新しい JIRA が正しく動いていることが確認できたら、以下の方法で新しいサーバーIDをライセンスに登録します。
    1. Log in to https://my.atlassian.com.
    2. 利用したいライセンスを選択します。
    3. 新しいサーバー ID に変更して、保存します。
    4. 新しいサーバー上でライセンスを更新します。

バージョン間の互換性を確認してから、JIRA のアップグレード完了後にプラグインのアップグレードを実行してください。これは、管理コンソールから「プラグインリポジトリ」を介して実行できます。プラグインをアップグレードした後、JIRA のインデックスを再作成することをお勧めします。

おめでとうございます!JIRA の移行/アップグレードが完了しました。

最終更新日: 2016 年 12 月 11 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.