第 3 章 启用 JBoss Web 服务器的自动部署
JBoss Web 服务器集合提供一组全面的变量和默认值,您可以手动更新以匹配您的设置要求。这些变量设置提供 JBoss Web Server 集合在目标主机上完成 Red Hat JBoss Web Server 的自动化和自定义安装所需的所有信息。
有关 JBoss Web 服务器集合提供的变量的完整列表,请参阅 Ansible Automation Hub 中 jws 角色的信息页面。jws 角色的信息页面列出了您可以定义的所有变量的名称、描述和默认值。
您可以通过多种方法定义变量。默认情况下,JBoss Web 服务器集合包含一个示例 playbook.yml 文件,该文件链接到同一 playbook 文件夹中的 vars.yml 文件。为了说明这一点,本节中的说明描述了如何在集合提供的 vars.yml 文件中定义变量。如果您愿意,您可以使用其他方法定义变量。
您可以定义变量来自动化以下任务:
您还可以通过在 playbook 中添加自定义任务来自动部署 Web 应用程序,如在目标主机上 启用 JBoss Web Server 应用程序自动部署 中所述。
3.1. 启用从存档文件中自动安装 JBoss Web Server 复制链接链接已复制到粘贴板!
默认情况下,JBoss Web 服务器集合配置为在产品存档文件的每个目标主机上安装 Red Hat JBoss Web Server。根据您的设置要求,您可以启用 JBoss Web Server 集合从存档文件同时安装基本产品版本、产品补丁更新或两者。您可以选择从红帽客户门户手动下载存档文件,或者启用 JBoss Web 服务器集合来自动下载存档文件。
3.1.1. 启用 JBoss Web Server 基础版本的自动安装 复制链接链接已复制到粘贴板!
您可以启用 JBoss Web Server 集合,从产品存档文件安装指定 JBoss Web Server 版本的基本版本。基本版本是 特定产品版本的初始版本(如 6.1.0 是版本 6.1 的基础版本)。
JBoss Web 服务器集合要求您的 Ansible 控制节点上提供了适当存档文件的本地副本。如果您的系统中没有存档文件的副本,您可以设置变量来指定红帽服务帐户凭证,以允许从红帽客户门户网站下载文件。或者,您可以手动下载存档文件。
先决条件
- 您已安装了 JBoss Web 服务器集合。
- 如果系统上已有 JBoss Web 服务器存档文件的副本,您已将这些存档文件复制到 Ansible 控制节点上。
如果您希望 JBoss Web 服务器集合从红帽客户门户网站自动下载存档文件,您已创建了一个红帽服务帐户。
注意服务帐户允许您在不需要最终用户凭证或直接交互的情况下安全地自动连接和自动连接和验证服务或应用程序。要创建服务帐户,请登录 Red Hat Hybrid Cloud Console 中的 Service Accounts 页面,然后单击 Create service account。
如果您希望手动下载存档文件,请将适当的存档文件下载到 Ansible 控制节点。如需更多信息,请参阅 Red Hat JBoss Web Server 安装指南。
注意如果手动下载存档文件,则不需要在 Ansible 控制节点上提取这些文件。在这种情况下,JBoss Web 服务器集合会自动提取存档文件。
流程
-
在 Ansible 控制节点上,打开
vars.yml文件。 要指定要安装的 JBoss Web Server 版本,请将
jws_version变量设置为适当的基本版本。例如:
[...] jws_version: 6.1.0
[...] jws_version: 6.1.0Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意确保您为
jws_version变量指定的值与您要安装的产品存档文件的版本匹配。例如,若要为 JBoss Web Server 6.1 安装存档文件,可指定值6.1.0。默认情况下,JBoss Web 服务器集合配置为同时安装主应用服务器存档和您指定的产品版本的原生存档。如果将
jws_native变量设置为False,JBoss Web Server 集合无法安装原生存档,这会导致需要安装原生存档文件的功能(如 SELinux 策略)出现问题。如果您没有指定自动文件下载的凭证,如 第 3 步 所述,请确保已将指定产品版本的存档文件复制到 Ansible 控制节点。在这种情况下,请确保复制的原生存档文件与目标主机上安装的操作系统版本匹配。
如果您的 Ansible 控制中没有 JBoss Web Server 归档文件的副本,则集合默认联系红帽客户门户网站来自动下载存档文件。要确保使用红帽客户门户网站成功联系,请设置
rhn_username和rhn_password变量来指定您的红帽服务帐户凭证。例如:
[...] rhn_username: <client_ID> rhn_password: <client_secret>
[...] rhn_username: <client_ID> rhn_password: <client_secret>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在上例中,将 < ;client_ID& gt ; 和 <client_secret > 替换为与您的红帽服务帐户关联的客户端 ID 和 secret。
注意默认情况下,集合会自动决定与目标主机上安装的操作系统版本匹配的原生存档文件。如果 Ansible 控制节点上已存在相应存档文件的副本,则集合不会再次下载这些存档文件。
如果您希望手动下载存档文件,或者您已经以其他方式获取这些文件,则可以强制进行完全离线安装。有关强制离线安装的更多信息,请参阅启用 JBoss Web Server 产品补丁更新的自动化安装。
如果您更改了 Ansible 控制节点上下载的存档文件的名称,请设置
zipfile_name和jws_native_zipfile变量,以指定您要安装的文件。例如:
[...] zipfile_name: <application_server_file> jws_native_zipfile: <native_file>
[...] zipfile_name: <application_server_file> jws_native_zipfile: <native_file>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在前面的示例中,将 < application_server_file> 和 <native_file > 替换为适当的归档文件名。
注意如果您没有更改文件名,则不需要设置
zipfile_name和jws_native_zipfile变量。JBoss Web 服务器集合使用jws_version变量的值自动确定默认的文件名。-
将更改保存到
vars.yml文件。
通过根据情况设置这些变量,您可以启用 JBoss Web Server 集合,以便在您随后运行 playbook 时在目标主机上自动安装基础产品版本。
3.1.2. 启用 JBoss Web 服务器补丁更新的自动安装 复制链接链接已复制到粘贴板!
如果产品补丁更新适用于正在安装的 JBoss Web Server 版本,您也可以启用 JBoss Web Server 集合来从存档文件安装这些补丁更新。根据您的要求,您可以启用 JBoss Web Server 集合来安装最新的可用补丁或指定的补丁版本。您可以使用相同的步骤启用补丁更新的自动安装,无论是否要在基础版本同时安装这些更新。
JBoss Web 服务器集合要求您的 Ansible 控制节点上提供了适当存档文件的本地副本。如果您的系统中没有存档文件的副本,您可以设置变量来指定红帽服务帐户凭证,以允许从红帽客户门户网站下载文件。或者,您可以手动下载存档文件。
补丁更新是累积的,这意味着每个补丁更新都自动包含可用于同一产品版本的任何早期补丁版本。例如,6.1.2 补丁更新包含 6.1.1 版本,6.1.3 补丁更新会包括 6.1.1 和 6.1.2 版本,以此类推。
您不能使用 累积补丁更新来安装产品版本的基本版本(X.X.0)版本。例如,6.1.2 补丁会包含 6.1.1 版本,但不能安装基础 6.1.0 版本。在这种情况下,您必须确保同时或之前会安装适当产品版本(如 6.1.0)的基本版本。
先决条件
- 您已安装了 JBoss Web 服务器集合。
- 如果要安装的补丁更新的副本已在您的系统上,则您已将这些存档文件复制到 Ansible 控制节点。
如果您希望 JBoss Web 服务器集合从红帽客户门户网站自动下载存档文件,您已创建了一个红帽服务帐户。
注意服务帐户允许您在不需要最终用户凭证或直接交互的情况下安全地自动连接和自动连接和验证服务或应用程序。要创建服务帐户,请登录 Red Hat Hybrid Cloud Console 中的 Service Accounts 页面,然后单击 Create service account。
如果您希望手动下载存档文件,请将适当的存档文件下载到 Ansible 控制节点。如需更多信息,请参阅 Red Hat JBoss Web Server 安装指南。
注意因为补丁更新是累积的,因此您只需要为要安装的补丁版本下载存档文件。您不需要下载任何以前的补丁更新。
如果手动下载存档文件,则不需要在 Ansible 控制节点上提取这些文件。在这种情况下,JBoss Web 服务器集合会自动提取存档文件。
流程
-
在 Ansible 控制节点上,打开
vars.yml文件。 将
jws_apply_patches变量设置为True。例如:
[...] jws_version: 6.1.0 [...] jws_apply_patches: True
[...] jws_version: 6.1.0 [...] jws_apply_patches: TrueCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注意确保将
jws_version变量设置为适当的产品版本(如6.1.0)的基础发行版本。JBoss Web 服务器集合配置为默认安装最新的补丁更新。集合联系红帽客户门户网站以确定要安装的正确补丁。
如果您希望集合安装指定的补丁版本,而不是最新的补丁更新,请将
jws_patch_version变量设置为您要安装的补丁版本。例如:
[...] jws_apply_patches: True jws_patch_version: 6.1.2
[...] jws_apply_patches: True jws_patch_version: 6.1.2Copy to Clipboard Copied! Toggle word wrap Toggle overflow 根据前面的示例,集合仅安装累积 6.1.2 补丁,即使后续补丁也可用。
当
jws_apply_patches变量设为True时,JBoss Web 服务器集合默认联系红帽客户门户网站,以检查是否有新的补丁更新。如果需要,集合还会下载补丁更新。要确保使用红帽客户门户网站成功联系,请设置rhn_username和rhn_password变量来指定您的红帽服务帐户凭证。例如:
[...] rhn_username: <client_ID> rhn_password: <client_secret>
[...] rhn_username: <client_ID> rhn_password: <client_secret>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在上例中,将 < ;client_ID& gt ; 和 <client_secret > 替换为与您的红帽服务帐户关联的客户端 ID 和 secret。
注意默认情况下,集合会自动决定与目标主机上安装的操作系统版本匹配的原生存档文件。如果 Ansible 控制节点上已存在相应存档文件的副本,则集合不会再次下载这些存档文件。
如果
jws_patch_version变量设为特定的补丁版本,则集合将仅下载指定的补丁版本,即使后续补丁也可用。如果您希望手动下载存档文件,或者您已经以其他方式获取这些文件,则可以强制进行完全离线安装,如 第 5 步 所述。
如果要强制完全离线安装,并防止集合联系红帽客户门户网站,将
jws_offline_install变量设置为True。例如:
[...] jws_offline_install: True
[...] jws_offline_install: TrueCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注意如果您的 Ansible 控制节点无法访问互联网,或者您希望集合以避免联系红帽客户门户网站以进行文件下载,则
jws_offline_install变量很有用。在这种情况下,您必须将jws_patch_version变量设置为您要安装的补丁版本。确保您已将用于适当补丁更新的存档文件复制到 Ansible 控制节点。在这种情况下,请确保复制的原生存档文件与目标主机上安装的操作系统版本匹配。
如果将
jws_offline_install变量设置为True,则集合不会尝试联系红帽客户门户网站,即使您还设置了rhn_username和rhn_password变量来允许自动下载文件。-
将更改保存到
vars.yml文件。
通过根据情况设置这些变量,您可以启用 JBoss Web Server 集合,以便在您随后运行 playbook 时在目标主机上自动安装产品补丁更新。