Documentation

25. 设置 Insights 项目

Tower 支持与红帽 Insights 集成。一旦通过 Insights 注册主机,将持续扫描主机中的漏洞和已知配置冲突。每个发现的问题都可能有一个 Ansible playbook 形式的关联修复。Insights 用户需要创建一个维护计划来对修复进行分组,并最终创建一个 playbook 来缓解问题。Tower 通过 Tower 中的 Insights 项目来跟踪维护计划。要从 Tower 通过基本验证向 Insights 进行身份验证,需要使用特殊的 Insights 凭证,该凭证必须先在 Tower 中创建好。要最终在 Tower 中运行 Insights 维护计划,您需要一个 Insights 项目、一个清单和一个扫描作业模板。

25.1. 创建 Insights 凭证

要创建用于 Insights 的新凭证,请执行以下操作:

  1. 点击左侧导航栏中的 Credentials (credentials-icon) 图标访问 Credentials 页面。

  1. 点击 Credentials 屏幕右上角的 add 按钮。

  1. Name 字段中输入要使用的凭证名称。

  2. Description 字段输入此凭证的描述。

  3. Organization 字段中输入与凭证关联的可选机构名称,或者点击 search 按钮并从弹出窗口中选择它。

  4. Credential Type 字段中,输入 Insights 或者点击 search 按钮并从凭证类型弹出窗口中选择它。

_images/credential-types-popup-window-insights.png
  1. UsernamePassword 字段中输入一个有效的 Insights 凭证。Insights 凭证是用户的 Red Hat Customer Portal 帐户用户名和密码。

Credentials - create with demo insights credentials

  1. 完成后请点击 Save

25.2. 创建 Insights 项目

要创建新 Insights 项目,请执行以下操作:

  1. 点击左侧导航栏中的 Projects (projects-icon) 图标访问 Projects 页面。

  1. 点击 Projects 屏幕右上角的 add 按钮。

  2. 至少在必填字段中输入相关详情。请注意以下字段需要特定的 Insights 相关条目:

  • Name:输入 Insights 项目的名称。

  • Organization:输入与这个项目关联的机构名称,或者点击 search 按钮并从弹出窗口中选择它。

  • SCM Type:选择 Red Hat Insights

  • 选择 SCM 类型后,Source Details 字段会展开。

  1. Credential 字段已预先填充您之前创建的 Insights 凭证。如果没有预先填充,请输入凭证,或者点击 search 按钮并从弹出窗口中选择它。

  2. 点击以从 Options 字段中选择此项目的更新选项,并提供任何其他值(如果适用)。有关每个选项的信息,请点击选项旁边的 Help help 按钮。

Insights - create demo insights project form

  1. 完成后请点击 Save

所有 SCM/项目同步都会在您第一次保存新项目时自动进行。但是,如果您希望将其更新为 Insights 中当前的内容,请点击项目可用 Actions 下的 update 按钮手动更新基于 SCM 的项目。

此过程会将您的 Tower Insights 项目与 Insights 帐户解决方案同步。请注意,当同步运行后,项目名称旁的状态点便会更新。

Insights - demo insights project success

25.3. 创建 Insights 清单

Insights playbook 包含一个 hosts: 行,其中值是 Insights 本身所知的主机名,它可能与 Tower 所知的主机名不同。因此,请确保 Tower 清单中的主机名与红帽 Insights 门户网站中的系统匹配。

要创建用于 Insights 的新清单,请执行以下操作:

  1. 点击左侧导航栏中的 Inventories (inventories-icon) 图标访问 Inventories 页面。

  1. 点击 add options inventory 按钮并从下拉菜单中选择 Inventory 来启动一个 New Inventory 窗口。

  1. 在相应的字段中输入要使用的名称和机构。

  2. Insights Credential 字段中,输入您之前创建的 Insights 凭证的名称,或者点击 search 按钮并从弹出窗口中选择它。

Insights - example inventory

  1. 点击 Save 并开始添加主机。

注解

通常,您的清单已经包含 Insights 主机。Tower 尚不知道它们。Insights 凭证让 Tower 可以从 Insights 获取有关 Insights 主机的信息。借助 scan_facts.yml 文件,即使没有 Insights 凭证,Tower 也可将主机识别为 Insights 主机。有关说明请参阅 创建扫描作业模板 部分。

  1. 点击 Hosts 标签页,然后点击 add host button 按钮打开 Create Host 对话框。

  1. Host Name 字段中输入与将使用的 Insights 主机关联的名称。

  2. 完成后请点击 Save

25.4. 创建扫描项目

Insights 维护计划若要为 Tower 所利用,必须对其可见。使用库存手动扫描 playbook 创建并运行扫描作业。

  1. 点击左侧导航栏中的 Projects (projects-icon) 图标访问 Projects 页面。

  2. 点击 Projects 屏幕右上角的 add 按钮。

  3. 至少在必填字段中输入相关详情。请注意以下字段需要特定的 Insights 相关条目:

  • Name:输入扫描项目的名称。

  • Organization:机构名称已预先填充您在创建清单时选择的机构。

  • SCM Type:选择 Git

  • 选择 SCM 类型后,Source Details 字段会展开。

  1. SCM URL 字段中输入 https://github.com/ansible/awx-facts-playbooks。这是扫描作业模板的存储位置。

  2. 点击以从 Options 字段中选择此项目的更新选项,并提供任何其他值(如果适用)。有关每个选项的信息,请点击选项旁边的 Help help 按钮。

Insights - create insights project scan

  1. 完成后请点击 Save

所有 SCM/项目同步都会在您第一次保存新项目时自动进行。但是,如果您希望将其更新为 Insights 中当前的内容,请点击项目可用 Actions 下的 update 按钮手动更新基于 SCM 的项目。

同步操作会将的 Insights 帐户中所有具有 playbook 解决方案的维护计划导入到 Tower 中。它会使用默认的 Plan 解决方案。请注意,当同步运行后,项目名称旁的状态点便会更新。

25.5. 创建扫描作业模板

创建使用事实扫描 playbook 的扫描作业模板:

  1. 点击左侧导航栏中的 Templates (templates-icon) 图标访问 Templates 页面。

  1. 点击 add options template 按钮,从下拉菜单中选择 Job Template 来启动一个 New Job Template 窗口。

  1. 至少在必填字段中输入相关详情。请注意以下字段需要特定的 Insights 相关条目:

  • Name:输入扫描作业的名称。

  • Job Type:从下拉菜单中选择 Run

  • Inventory:输入 Insights 清单的名称,或者点击 search 按钮并从弹出窗口中选择它。

  • Project:输入您之前创建的扫描项目的名称,或者点击 search 按钮并从弹出窗口中选择它。

  • Playbook:从下拉菜单中选择 scan_facts.yml。这是与之前设置的扫描项目关联的 playbook。

  • Credential:输入要用于这个项目的凭证,或者点击 search 按钮并从弹出窗口中选择它。凭证不必是 Insights 凭证。

  • Verbosity:保持默认设置,或者从下拉菜单中选择所需详细程度。

  1. 点击 Options 字段中的 Enable Privilege EscalationEnable Fact Cache

应在启用了 Privilege Escalation 选项的情况下启动 Insights 的扫描作业模板,以允许该作业以 root 用户访问 /etc/redhat-access-insights/machine-id,以便从目标主机获得 system_id 的值。这会从主机激活 Insights 按钮,需要 remediate the Insights inventory。否则,在您的扫描作业的结果中,system_id 参数会被设置为 null,Insights 按钮将不会出现。

Insights - scan job template

  1. 完成后请点击 Save

  2. 点击 launch 图标启动扫描作业模板。

完成后,作业结果会显示在 Job Details 页面中。

Insights - scan job success

25.6. 修复 Insights 清单

对 Insights 清单进行修复后,只需点击一次,Tower 即可运行 Insights playbook。

  1. 点击左侧导航栏中的 Inventories (inventories-icon) 图标访问 Inventories 页面。

  2. 在清单列表中点击以打开您的 Insights 清单详情。

  3. 点击 Hosts 标签页访问从扫描过程中加载的 Insights 主机。

  4. 点击以打开从 Insights 加载的主机。

注意,Insights 标签页现在显示在 Hosts 页面上。这表示 Insights 和 Tower 已将清单协调一致,现在已设置为通过一次点击来运行 Insights playbook。

Insights - hosts tab

  1. 点击 Insights

以下屏幕填充了一个问题列表,并显示了这些问题是否可以通过 playbook 解决。

Insights - host insights tab

  1. 向下滚动到 Insights 清单页面的底部,然后点击 Remediate Inventory 按钮来更新清单中的主机。

Insights - remediate inventory

修复后,会打开 New Job Template 窗口。请注意,Inventory 和 Project 字段已预先填充。

Insights - maintenance plan template

使用这个新作业模板创建一个从 Insights 中拉取维护计划的作业模板。

  1. 至少在必填字段中输入相关详情。请注意以下字段需要特定的 Insights 相关条目:

  • Name:输入维护计划的名称。

  • Job Type:如果还没有填充,请从下拉菜单中选择 Run

  • Inventory:此字段已预先填充您之前创建的 Insights 清单。

  • Project:此字段已预先填充您之前创建的 Insights 项目。

  • Playbook:从下拉菜单中选择一个与您要运行的维护计划关联的 playbook。

  • Credential:输入要用于这个项目的凭证,或者点击 search 按钮并从弹出窗口中选择它。凭证不必是 Insights 凭证。

  • Verbosity:保持默认设置,或者从下拉菜单中选择所需详细程度。

Insights - maintenance plan template filled

  1. 完成后请点击 Save

  2. 点击 launch 图标启动作业模板。

完成后,作业结果会显示在 Job Details 页面中。