第3章 JBoss EAP の自動デプロイメントの有効化
JBoss Web Server コレクションは、セットアップ要件に合わせて手動で更新できる変数とデフォルト値の包括的なセットを提供します。これらの変数設定は、ターゲットホストで Red Hat JBoss Enterprise Application Platform (JBoss EAP)の自動化およびカスタマイズされたインストールを完了するために JBoss EAP コレクションが必要とするすべての情報を提供します。
JBoss EAP コレクションが提供する変数の完全リストは、Ansible Automation Hub の redhat.eap ロール を参照してください。jws ロールの情報ページには、定義できるすべての変数の名前、説明、およびデフォルト値が一覧表示されます。
複数の方法で変数を定義できます。デフォルトでは、JBoss Web Server コレクションには、同じ playbooks フォルダー内の vars.yml ファイルにリンクするサンプルの playbook.yml ファイルが含まれています。説明のために、このセクションの手順では、コレクションが提供する vars.yml ファイルで変数を定義する方法について説明します。必要に応じて、別の方法で変数を定義することもできます。
変数を定義して、次のタスクを自動化できます。
次の自動化有効化タスクを実行することもできます。
3.1. アーカイブファイルからの JBoss EAP の自動インストールの有効化 リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、JBoss EAP コレクションは、製品アーカイブファイルから各ターゲットホストに Red Hat JBoss Enterprise Application Platform (JBoss EAP)をインストールするように設定されています。セットアップ要件に応じて、JBoss Web Server コレクションを有効にして、製品のベースリリース、製品パッチ更新、またはその両方をアーカイブファイルから同時にインストールできます。Red Hat カスタマーポータルからアーカイブファイルを手動でダウンロードするか、JBoss Web Server コレクションを有効にしてアーカイブファイルを自動的にダウンロードするかを選択できます。
3.1.1. JBoss EAP ベースリリースの自動インストールの有効化 リンクのコピーリンクがクリップボードにコピーされました!
JBoss EAP コレクションを有効にして、アーカイブファイルから指定された JBoss EAP 製品バージョンのベースリリースをインストールできます。ベースリリースは、特定の製品バージョンの最初のリリースです (例: 6.0.0 はバージョン 6.0 のベースリリースです)。
JBoss Web Server コレクションでは、適切なアーカイブファイルのローカルコピーが Ansible コントロールノードで利用できる必要があります。アーカイブファイルのコピーがまだシステム上にない場合は、変数を設定して Red Hat サービスアカウントの認証情報を指定し、Red Hat カスタマーポータルからのファイルの自動ダウンロードを許可できます。または、アーカイブファイルを手動でダウンロードすることもできます。
前提条件
- JBoss EAP コレクションがインストールされている。
- JBoss EAP アーカイブファイルのコピーがシステムにすでに存在する場合は、このアーカイブファイルを Ansible コントロールノードにコピーしている。この状況では、Ansible コントロールノードのカスタム Playbook と同じディレクトリーにアーカイブファイルをコピーする必要があります。
JBoss Web Server コレクションで Red Hat カスタマーポータルからアーカイブファイルを自動的にダウンロードする場合は、Red Hat サービスアカウントを作成済みである。
注記サービスアカウントを使用すると、エンドユーザーの認証情報や直接の操作を必要とせずに、サービスやアプリケーションにセキュアかつ自動的に接続して認証できます。サービスアカウントを作成するには、Red Hat Hybrid Cloud Console の Service Accounts ページ にログインし、Create service account をクリックします。
アーカイブファイルを手動でダウンロードする場合は、適切なアーカイブファイルが Ansible コントロールノードにダウンロードされている必要があります。この状況では、Ansible コントロールノード上のカスタム Playbook と同じディレクトリーにアーカイブファイルをダウンロードする必要があります。アーカイブファイルのダウンロードに関する詳細は、Red Hat JBoss Enterprise Application Platform インストールガイド を参照してください。
注記アーカイブファイルを手動でダウンロードする場合は、このファイルを Ansible コントロールノードで抽出する必要はありません。この場合、JBoss EAP コレクションはアーカイブファイルを自動的に抽出します。
手順
-
Ansible コントロールノードで、
vars.ymlファイルを開きます。 インストールする JBoss EAP のバージョンを指定するには、
eap_version変数を適切なベースリリースに設定します。以下に例を示します。
[...] eap_version: 7.4.0注記jws_version変数に指定する値が、インストールする製品アーカイブファイルのバージョンと一致していることを確認してください。たとえば、JBoss EAP 7.4 のアーカイブファイルをインストールするには、7.4.0 の値を指定します。ステップ 4 の説明に従って自動ファイルダウンロードの認証情報を指定しない場合は、指定した製品バージョンのアーカイブファイルが Ansible コントロールノードにコピーされていることを確認してください。
JBoss EAP アーカイブファイルのコピーが Ansible コントロールノードに存在しない場合は、コレクションはデフォルトで Red Hat カスタマーポータルに連絡してアーカイブファイルを自動的にダウンロードします。Red Hat カスタマーポータルとの接続を確実に成功させるには、
rhn_username変数とrhn_password変数を設定して、Red Hat サービスアカウントの認証情報を指定します。以下に例を示します。
[...] rhn_username: <client_ID> rhn_password: <client_secret>上記の例では、<client_ID> と <client_secret> を、Red Hat サービスアカウントに関連付けられているクライアント ID とシークレットに置き換えます。
注記適切なアーカイブファイルのコピーが Ansible コントロールノードにすでに存在する場合、コレクションはこのアーカイブファイルを再度ダウンロードしません。
アーカイブファイルを手動でダウンロードする場合や、これらのファイルを別の方法ですでに取得している場合は、完全なオフラインインストールを強制できます。オフラインインストールの強制の詳細は、JBoss EAP パッチ更新の自動インストールの有効化 を参照してください。
Ansible コントロールノードでダウンロードしたアーカイブファイルの名前を変更した場合は、
eap_archive_filename変数を設定して、インストールするファイルを指定します。以下に例を示します。
[...] eap_archive_filename: <application_server_file>前の例で、< application_server_file > を適切なアーカイブファイル名に置き換えます。
注記ファイル名を変更しない場合は、
eap_archive_filename変数を設定する必要はありません。JBoss EAP コレクションは、eap_version変数の値を使用して、デフォルトのファイル名を自動的に決定します。-
変更を
vars.ymlファイルに保存します。
これらの変数を必要に応じて設定すると、その後 Playbook を実行するときに、JBoss Web Server コレクションがターゲットホストに製品のベースリリースを自動的にインストールできるようになります。
3.1.2. JBoss EAP パッチ更新の自動インストールの有効化 リンクのコピーリンクがクリップボードにコピーされました!
インストールされているバージョンの JBoss EAP の製品パッチ更新が利用可能な場合、JBoss EAP コレクションを有効にして、これらのパッチ更新をアーカイブファイルからインストールすることもできます。要件に応じて、JBoss Web Server コレクションを有効にして、利用可能な最新のパッチまたは指定したパッチリリースをインストールできます。ベースリリース以降のバージョンと同時に更新をインストールするかどうかに関係なく、同じ手順を使用してパッチ更新の自動インストールを有効にできます。
JBoss Web Server コレクションでは、適切なアーカイブファイルのローカルコピーが Ansible コントロールノードで利用できる必要があります。アーカイブファイルのコピーがまだシステム上にない場合は、変数を設定して Red Hat サービスアカウントの認証情報を指定し、Red Hat カスタマーポータルからのファイルの自動ダウンロードを許可できます。または、アーカイブファイルを手動でダウンロードすることもできます。
パッチ更新は累積的です。つまり、各パッチ更新には、同じ製品バージョンで利用可能な以前のパッチリリースが自動的に含まれます。たとえば、6.0.2 パッチ更新には 6.0.1 リリースが含まれ、6.0.3 パッチ更新には 6.0.1 および 6.0.2 リリースが含まれます。
累積パッチ更新を使用して、製品バージョンのベース (X.X.0) リリースをインストールすることは できません。たとえば、6.0.2 パッチには 6.0.1 リリースが含まれますが、6.0.2 パッチでベース 6.0.0 リリースをインストールすることはできません。この状況では、適切な製品バージョンのベースリリース (6.0.0 など) も同時に、または事前にインストールされていることを確認する必要があります。
前提条件
- JBoss EAP コレクションがインストールされている。
- インストールするパッチ更新のアーカイブファイルのコピーがすでにシステムにある場合は、このアーカイブファイルを Ansible コントロールノードにコピーしている。この状況では、Ansible コントロールノードのカスタム Playbook と同じディレクトリーにアーカイブファイルをコピーする必要があります。
JBoss Web Server コレクションで Red Hat カスタマーポータルからアーカイブファイルを自動的にダウンロードする場合は、Red Hat サービスアカウントを作成済みである。
注記サービスアカウントを使用すると、エンドユーザーの認証情報や直接の操作を必要とせずに、サービスやアプリケーションにセキュアかつ自動的に接続して認証できます。サービスアカウントを作成するには、Red Hat Hybrid Cloud Console の Service Accounts ページ にログインし、Create service account をクリックします。
アーカイブファイルを手動でダウンロードする場合は、適切なアーカイブファイルが Ansible コントロールノードにダウンロードされている必要があります。この状況では、Ansible コントロールノード上のカスタム Playbook と同じディレクトリーにアーカイブファイルをダウンロードする必要があります。アーカイブファイルのダウンロードに関する詳細は、Red Hat JBoss Enterprise Application Platform インストールガイド を参照してください。
注記パッチ更新は累積的であるため、インストールするパッチリリースのアーカイブファイルをダウンロードするだけで済みます。以前のパッチ更新をダウンロードする必要はありません。
アーカイブファイルを手動でダウンロードする場合は、このファイルを Ansible コントロールノードで抽出する必要はありません。この場合、JBoss EAP コレクションはアーカイブファイルを自動的に抽出します。
手順
-
Ansible コントロールノードで、
vars.ymlファイルを開きます。 eap_apply_cp変数をTrueに設定します。以下に例を示します。
[...] eap_version: 7.4.0 [...] eap_apply_cp: True注記jws_version変数が適切な製品バージョンのベースリリース (例:6.0.0) に設定されていることを確認します。JBoss EAP コレクションは、デフォルトで最新のパッチ更新をインストールするように設定されています。コレクションは Red Hat カスタマーポータルに接続して、インストールする正しいパッチを決定します。
最新のパッチ更新ではなく、指定したパッチリリースをコレクションにインストールする場合は、
jws_patch_version変数を、インストールするパッチリリースに設定します。以下に例を示します。
[...] eap_apply_cp: True eap_patch_version: 7.4.2上記の例に基づくと、新しいパッチが利用可能な場合でも、コレクションは 6.0.2 累積パッチのみをインストールします。
eap_apply_cp変数がTrueに設定されている場合、JBoss EAP コレクションは Red Hat カスタマーポータルに接続して、新しいパッチ更新が利用可能かどうかを確認します。このコレクションは、必要に応じてパッチ更新もダウンロードします。Red Hat カスタマーポータルとの接続を確実に成功させるには、rhn_username変数とrhn_password変数を設定して、Red Hat サービスアカウントの認証情報を指定します。以下に例を示します。
[...] rhn_username: <client_ID> rhn_password: <client_secret>上記の例では、<client_ID> と <client_secret> を、Red Hat サービスアカウントに関連付けられているクライアント ID とシークレットに置き換えます。
注記適切なアーカイブファイルのコピーが Ansible コントロールノードにすでに存在する場合、コレクションはこのアーカイブファイルを再度ダウンロードしません。
jws_patch_version変数が特定のパッチリリースに設定されている場合、新しいパッチが利用可能な場合でも、コレクションは指定したパッチリリースのみをダウンロードします。アーカイブファイルを手動でダウンロードする場合や、これらのファイルを別の方法ですでに取得している場合は、ステップ 5 の説明に従って完全なオフラインインストールを強制できます。
完全なオフラインインストールを強制し、コレクションが Red Hat カスタマーポータルに接続しないようにするには、
jws_offline_install変数をTrueに設定します。以下に例を示します。
[...] eap_offline_install: True注記jws_offline_install変数は、Ansible コントロールノードがインターネットにアクセスできない場合や、コレクションがファイルのダウンロードのために Red Hat カスタマーポータルに接続することを回避したい場合に役立ちます。この場合は、jws_patch_version 変数を、インストールするパッチリリースに設定する必要があります。適切なパッチ更新のアーカイブファイルが Ansible コントロールノードにコピーされていることを確認してください。この状況では、Ansible コントロールノードのカスタム Playbook と同じディレクトリーにアーカイブファイルをコピーする必要があります。
jws_offline_install変数をTrueに設定した場合、ファイルの自動ダウンロードを許可するようにrhn_username変数とrhn_password変数を設定していても、コレクションは Red Hat カスタマーポータルに接続しようとしません。-
変更を
vars.ymlファイルに保存します。
これらの変数を必要に応じて設定すると、その後 Playbook を実行するときに、JBoss Web Server コレクションがターゲットホストに製品修正アップデートを自動的にインストールできるようになります。