Documentation

8. 既存の Tower インストールのアップグレード

既存の Tower インストールは最新バージョンに簡単にアップグレードできます。Tower は既存の設定ファイルを検索し、インストールではなくアップグレードが必要なタイミングを認識します。

インストールの場合と同様、アップグレードプロセスでは Tower サーバーがインターネットにアクセスできる必要があります。アップグレードのプロセスには、Tower のインストールとほぼ同様の時間がかかり、さらにデータ移行にも時間がかかります。

このアップグレード手順では、Ansible および Tower の作業用インストールがあることを前提としています。

注釈

Tower の組み込みデータベースを、アップグレードの一環として Active/Passive 冗長性モードのインストールに変換することはできません。Tower を冗長性設定でデプロイする必要のあるユーザーは、Tower データベースをバックアップし、新規の冗長性設定を異なる VM または物理ホストにインストールしてからデータベースを復元する必要があります。プライマリーまたはセカンダリーインスタンスは、すでに外部データベースで機能している場合は後で追加することができます。Ansible Tower Administration Guide の「Active/Passive Redundancy」の章を参照してください。

Tower が RHEL 7 以前のバージョンにインストールされており、RHEL 8 で Ansible Tower をアップグレードする場合には、以下の手順に従ってください。

  1. Tower インストーラーの取得」を参照し、RHEL 7 の Ansible Tower 3.7 にアップグレードします

  2. Tower 設定の Playbook に含まれている Tower のリストアを実行します。詳細については、Ansible Tower Administration Guide の「Backing Up and Restoring Tower」を参照してください。

  3. Tower インストーラーの取得」を参照し、RHEL 8 に新しいバージョンの Ansible Tower 3.7 をインストールします

  4. Tower 設定の Playbook に含まれている Tower のリストアを実行します。詳細については、Ansible Tower Administration Guide の「Backing Up and Restoring Tower」を参照してください。

このプロセスでは、データベースが組み込まれている Tower をアップグレードする場合に、PostgreSQL データベースが最新バージョンに正しく移行されるようにします。外部データベースを使用する Tower をアップグレードする場合には、クライアントライブラリーもアップグレードされますが、外部の PostgreSQL サーバーを手動でアップグレードする必要があります。上記が該当する場合には、アップグレード前に、リリースノートを確認するようにしてください。

8.1. 要件

Tower インストールをアップグレードする前に、「要件」を参照して十分なディスク領域およびメモリーがあることを確認し、ソフトウェアの要件を確認してください。たとえば、アップグレードを実行する前に Ansible の最新安定版をインストールしておく必要があります。

注釈

3 つ以上先のメジャーバージョンに対して、アップグレードはできません。たとえば、Ansible Tower 3.6.x にアップグレードする場合、3.3.x から直接アップグレードできないので、まず 3.4.x にアップグレードする必要があります。カスタマーポータルから「recommended upgrade path article」を参照してください。

また、RHEL 8 で Ansible Tower 3.5 を実行するには、Ansible 2.8 以降にインストールする必要があります。

8.2. Tower のインストール環境のバックアップ

システムをアップグレードする前にバックアップを作成することをお勧めします。バックアッププロセスが完了したら、OS/Ansible/Tower アップグレードに進みます。

Ansible Tower Administration Guide』の「Backing Up and Restoring Tower」を参照してください。

8.3. Tower インストーラーの取得

スタンドアロンの Tower をインストールするか、バンドルのインストーラーを使用できます。

  • 直接インターネットアクセスが可能な環境で Tower を設定する場合は、スタンドアロンの Tower インストーラーをダウンロードできます。

  • オンラインリポジトリーへ直接アクセスできない環境で、Tower を設定する場合や、お使いの環境でプロキシーが有効になっている場合には、バンドルのインストーラーを使用する必要があります。

Ansible Tower インストール/アップグレードツールをダウンロードして展開してください (http://releases.ansible.com/ansible-tower/setup/)。

root@localhost:~$ tar xvzf ansible-tower-setup-latest.tar.gz
root@localhost:~$ cd ansible-tower-setup-<tower_version>

インストールまたはアップグレードするには、ansible-tower-setup-<tower_version> ディレクトリーのインベントリーファイルを編集します。<tower_version>3.7.13.7.0 ディレクトリーなどのバージョン番号に置き換えてください。

注釈

アップグレードプロセスの一環として、データベーススキーマの移行を実行できます。Tower インストールのサイズによっては時間がかかる場合があります。

Tower のアップグレードに失敗した場合や、サポートが必要な場合には、Red Hat カスタマーポータル (https://access.redhat.com/) から Ansible までお問い合わせください。

8.4. 設定用の Playbook

注釈

Ansible Tower 3.0 はインストールが簡素化され、インストール設定の一部として ./configure/ を実行する必要性がなくなりました。以前のバージョンを使用している方は、http://docs.ansible.com/ に v.2.4.5 リリース (以前) の Tower ドキュメントに記載の説明に従うようにしてください。

Tower の設定 Playbook のスクリプトでは inventory ファイルが使用され、Tower インストーラーの tarball を展開したパスから ./setup.sh として呼び出されます。

root@localhost:~$ ./setup.sh

設定スクリプトでは以下の引数を指定できます。

  • -h: ヘルプメッセージを表示して終了します。

  • -i INVENTORY_FILE: Ansible インベントリーファイルへのパス (デフォルト値: inventory)

  • -e EXTRA_VARS: 追加の Ansible 変数を key=value または YAML/JSON (つまり -e bundle_install=false は強制的にオンラインインストールを実行します) として設定します。

  • -b: インストールの代わりにデータベースのバックアップを実行します。

  • -r: インストールの代わりにデータベースの復元を実行します (以下のコード例に記載されているように、EXTRA_VARS でデフォルト以外のパスを指定しない限り、デフォルトの復元パスが使用されます)。

./setup.sh -e 'restore_backup_file=/path/to/nondefault/location' -r

注釈

Tower 3.0.0 および 3.0.1 で、正常なシステムのバックアップと復元を阻止する問題が検出されている点に注意してください。

Tower v3.0.0 または v3.0.1 インストールをバックアップまたは復元する必要がある場合は v3.0.2 のインストーラーを使用してください。