注意:
- 本教程需要访问 Oracle Cloud。要注册免费账户,请参阅开始使用 Oracle Cloud Infrastructure 免费套餐。
- 它对 Oracle Cloud Infrastructure 身份证明、租户和区间使用示例值。完成实验室后,请使用特定于云环境的那些值替换这些值。
在 Oracle OS Management Hub 中通过组进行大规模管理 Oracle Linux
简介
了解如何在 Oracle OS Management Hub 中将许多 OCI 计算实例的 Oracle Linux 更新作为一个统一的标准化组进行管理。通过组,可以使用 Oracle OS Management Hub 服务管理和监视实例集合。可以使用组向组的所有成员实例应用勘误表、更新软件以及为常见内容管理任务安排作业。
目标
在本教程中,您将学习如何:
- 在 Oracle OS Management Hub 中创建组
- 创建组配置文件以注册 OCI 计算实例
- 通过添加和删除计算实例来管理组成员
- 通过安装和删除 Oracle Linux 软件包和模块来管理组清单
- 将软件包和模块安装到单个组成员实例
- 查看组报告,了解操作系统增强功能、安全更新、bug 修复和实例活动
- 立即运行更新作业并为组安排重复更新
- 监视作业状态并查看关联的工作
先决条件
通过以下方式访问 Oracle Cloud Infrastructure 租户:
- 管理用户组、标识实例资源的动态组以及启用 OS Management Hub 的 IAM 策略。
- Oracle Linux 计算实例。
- 虚拟云网络 (Virtual Cloud Network,VCN) 或配置的支持 OS Management Hub 的网络访问。
配置 OCI 资源
注:如果在租户中运行,请阅读 linux-virt-labs
GitHub 项目 README.md ,并在部署实验室环境之前完成先决条件。
-
在 Luna 桌面上打开一个终端。
-
克隆
linux-virt-labs
GitHub 项目。git clone https://github.com/oracle-devrel/linux-virt-labs.git
-
转到工作目录。
cd linux-virt-labs/ol
-
安装所需的集合。
ansible-galaxy collection install -r requirements.yml
-
更新 Oracle Linux 实例配置。
cat << EOF | tee instances.yml > /dev/null compute_instances: 1: instance_name: "ol-host-02" type: "server" 2: instance_name: "ol-host-03" type: "server" instance_shape: "VM.Standard.E5.Flex" EOF
-
部署实验室环境。
ansible-playbook create_instance.yml -e localhost_python_interpreter="/usr/bin/python3.6" -e "@instances.yml"
空闲实验室环境需要额外的变量
localhost_python_interpreter
,该变量为在 localhost 上运行的播放设置ansible_python_interpreter
。此变量是必需的,因为环境为 Python 的 Oracle Cloud Infrastructure SDK 安装 RPM 程序包,该程序包位于 python3.6 模块下。默认部署配置使用 AMD CPU 和 Oracle Linux 8。要使用 Intel CPU 或 Oracle Linux 9,请将
-e instance_shape="VM.Standard3.Flex"
或-e os_version="9"
添加到部署命令。 -
等待剧本到达暂停任务。请勿按 Enter 键或关闭终端。该手册创建要与 OS Management Hub 一起使用的 OCI 计算实例。显示暂停任务时到下一步的进度。
重要提示:在练习期间,请勿按 Enter 键或关闭终端窗口。
访问 OCI Web 控制台上的 OS Management Hub 部分
-
单击 Luna 桌面上的 Luna Lab 图标。
一段时间后,OCI 的登录身份证明将显示在此页上。页面显示临时帐户用户名和密码后,继续执行下一步。
-
通过单击 OCI 控制台快速链接打开 OCI 控制台。
-
使用临时账户用户名和密码登录到 OCI 控制台。
-
使用 OCI 控制台登录页面的导航菜单导航到 Observability and Management ,然后单击 OS Management Hub 。
创建组
组标准化 OS 管理任务,例如为所有成员实例应用更新和安装软件包。该组的实例必须具有相同的操作系统供应商、操作系统版本、体系结构和位置,无论是在 OCI、内部部署还是第三方云中。
-
单击 OS Management Hub 导航部分下的组。
-
单击创建。
-
按以下方式输入组的标识信息:
- 名称:
Oracle_Linux_8_hosts
- 说明:(可选)输入组的说明。
- 名称:
-
将配置文件的实例位置设置为 Oracle Cloud Infrastructure 。
-
单击下一步
-
按以下方式选择 OS 和体系结构信息:
- 操作系统供应商:Oracle
- OS 版本:Oracle Linux 8
- 体系结构:x86_64
注:操作系统供应商、版本和体系结构必须与您要注册的计算实例匹配。
-
保留默认区间选择,因为它包含供应商软件源。
-
选择要分配给组的软件源。选择以下选项:
- ol8_baseos_latest-x86_64
- ol8_appstream-x86_64
- ol8_addons-x86_64
- ol8_uekr6-x86_64
当实例加入组时,这些软件源将自动附加到实例。
-
单击下一步。
-
单击下一步可跳过附加实例步骤。
注:您可以在此阶段将注册到 OS Management Hub 的 OCI 计算实例附加到该组的操作系统选择、位置和区间。
-
查看组详细信息,然后单击提交以创建组。
组页显示
Oracle_Linux_8_hosts
组。
创建组概要信息
组配置文件可以在 OS Management Hub 中注册计算实例并将这些实例附加到组。
-
在 OS Management Hub 导航部分下的 Groups(组)页面上,单击 Oracle_Linux_8_hosts 组的名称。
组的详细信息页包含组信息和对组资源的访问权限,如组成员、组清单、作业和报表。
-
单击创建概要文件。
-
按以下方式输入组概要的标识信息:
- 名称:
Oracle_Linux_8_hosts_profile
- 说明:(可选)输入配置文件的说明。
- 名称:
-
单击创建。
此配置文件现在可用于在 OS Management Hub 导航部分的配置文件页上查看,并且可用于向
Oracle_Linux_8_hosts
组注册计算实例。
使用组配置文件向组注册计算实例
要将 OCI 计算实例附加到组并在 OS Management Hub 中注册计算实例,请启用 Oracle Cloud Agent (OCA) 插件,并在创建计算实例时或从现有计算实例的详细信息页面设置组概要信息。
-
导航到计算部分,然后使用 OCI 主导航菜单选择实例。
向组注册现有计算实例
在 OS Management Hub 中注册两个名为 ol-host-02 和 ol-host-03 的实例,并使用组配置文件将其连接到组。
-
单击 ol-host-03 实例的名称。
-
单击计算实例详细信息页面上的 Oracle Cloud Agent 选项卡。
-
启用 OS Management Hub Agent 插件并将注册配置文件设置为 Oracle_Linux_8_hosts_profile 。
在某些情况下,OS Management Hub 代理在启用后显示为已停止。忽略此通知并继续执行下一步。
-
导航回计算部分下的实例。
-
单击 ol-host-02 实例的名称。
-
单击计算实例详细信息页面上的 Oracle Cloud Agent 选项卡。
-
启用 OS Management Hub Agent 插件并将注册配置文件设置为 Oracle_Linux_8_hosts_profile 。
在某些情况下,OS Management Hub 代理在启用后显示为已停止。
-
单击 OS Management Hub 导航部分下的 Groups(组),然后单击 Oracle_Linux_8_hosts 。
注:等待实例附加到组。此步骤可能需要几分钟时间。刷新页面并等待两个实例显示在组成员资源上。
当新 Oracle Linux 实例附加到该组时,该服务:
- 将实例的软件源替换为组清单中列出的软件源。
- 从组中的软件源安装组清单中软件包的最新可用版本。
- 从组中的软件源安装组清单中的模块和配置文件。
- 不删除 Oracle Linux 实例上的任何现有软件包或模块。
管理组成员
组成员是在组中注册的 OCI 计算实例,您可以从“组详细信息”页上找到的“组成员”资源进行管理。可以分离组成员,并且可以将与组的 OS 选择匹配的其他以前注册的实例附加到组。
从组中分离实例
-
单击 OS Management Hub 导航部分下的 Groups(组),然后单击 Oracle_Linux_8_hosts 。
-
单击“组详细信息”页上的“资源”下的组成员。
-
选中 ol_host_02 复选框。
-
单击分离实例。
-
单击对话框中的 detach 。
此操作会从组中删除实例,并且不再位于组成员资源列表中。实例不作为组的一部分进行管理,也不包括在任何重复组作业中。
注:实例上的软件与实例离开组时的软件保持不变。
将实例附加到组
-
单击附加实例。
-
保留默认区间选择。
-
选择 ol_host_02 ,然后单击选择要附加的实例。
如果适用,请重复上述步骤以选择要附加的多个实例。
注:可用实例与组的位置、OS 供应商、版本和体系结构匹配。
-
复查所做的选择。
-
单击附加。
可以快速高效地附加和删除与组匹配的已注册实例。
管理组清单
组清单定义要安装到一组 Oracle Linux 实例的软件包和模块集。组清单列出了软件源以及所需的最低软件包和模块。Oracle OS Management Hub 反映您对组当前成员上的组清单所做的任何更改。
将 Oracle Linux 内容添加到组清单
-
在 Oracle_Linux_8_hosts “组详细信息”页上的“资源”下单击组清单。
此页可用于在组中添加或删除软件源、软件包和模块。
-
单击 Group Packages(组程序包)选项卡。
-
单击添加程序包
-
输入以下职务详细信息:
- 名称:保留作业的默认名称。
- 说明:(可选)输入说明。
-
搜索并选择
tmux
程序包。可以在包表的右上角找到搜索工具。
注:选择程序包后,表将保存为所选程序包。您会注意到,该表将显示 1 selected
-
搜索和选择
dtrace
程序包。删除以前的软件包搜索并搜索
dtrace
。从表中选择它。您会注意到,该表将显示 2 selected 。 -
使用仅限最新选择。
默认情况下,该列表仅显示最新的软件包版本。
-
将作业调度为立即运行。
-
单击添加。
Group Packages(组软件包)选项卡列出了这两个软件包。
-
通过单击作业资源并选择进行中作业选项卡,查看将软件包安装到 Oracle_Linux_8_Hosts 作业状态。
继续之前,请等待此更新作业完成,然后移至已完成作业选项卡。此步骤可能需要几分钟时间。
从组清单中删除内容
-
单击 OS Management Hub 导航部分下的 Groups(组),然后单击 Oracle_Linux_8_hosts 。
-
单击“资源”下的组清单。
-
单击 Group Packages(组程序包)选项卡。
-
选择
dtrace
程序包,然后单击删除程序包。 -
输入以下职务详细信息:
- 名称:保留作业的默认名称。
- 说明:(可选)输入说明。
-
将作业调度为立即运行。
-
单击删除。
此步骤将从 Group Packages(组软件包)选项卡中删除软件包。
-
通过单击作业资源并选择进行中作业选项卡,查看从 Oracle_Linux_8_Hosts 中删除 dtrace 作业状态。
继续之前,请等待此更新作业完成,然后移至已完成作业选项卡。此步骤可能需要几分钟时间。
对组清单所做的任何更改(如添加或删除软件源、软件包和模块)都会反映在该组的当前成员上。
更新单个组成员实例
组成员无法根据组清单指定的内容更改其附加的软件源。组定义可供其成员使用的软件源集。
但是,组成员可以独立于清单安装和删除各个软件包和模块。
将单个软件包和模块安装到单个组成员实例
通过更新资源将单个更新安装到实例仅适用于指导中列出的关联更新。
-
单击 OS Management Hub 导航部分下的实例。
-
选择组中实例的名称以导航到实例的详细信息页。
-
单击资源下列出的程序包,然后单击可用程序包选项卡。
-
搜索并选择 x86_64 体系结构的最新
zsh
软件包。可以在包表的右上角找到搜索工具。
-
单击 Install。
-
按以下方式输入标识信息:
- 名称:保留默认作业名称。
- 说明:(可选)输入说明。
-
将作业调度为立即运行。
-
单击 Install。
查看单个组成员实例作业
只能从单个组成员实例的详细信息页上的作业资源查看在单个组成员实例上执行的作业。
实例的详细信息页上的作业资源按调度作业、组调度作业、进行中作业或已完成作业分隔作业。
-
通过单击作业资源并选择进行中的作业选项卡来查看安装作业状态。
更新完成后,作业将移至已完成作业选项卡。
注:控制台可能需要几分钟时间才能在正在进行的作业选项卡上显示更新作业,完成该作业将需要几分钟时间。如果作业未显示,请刷新页面。
-
在 Packages 资源上比较 ol-host-02 和 ol-host-03 的软件包计数以查看差异。
单个实例将包含组清单上未列出的软件包。包括:
- 实例加入组之前安装的软件包。
- 单个实例上安装的软件包。
- 在服务外部安装的软件包(例如,通过使用 dnf 安装)。
在以下情况下,组清单上可能存在不在实例上的软件包:
- 已从单个实例中删除程序包。
- 软件包已从服务外部删除(例如,通过使用 dnf remove)。
查看组的操作系统报告和监视实例活动
报表资源显示与组关联的实例的安全更新、bug 更新和实例活动的实时汇总。
检查漏洞报告和建议有助于确定可用增强功能、安全更新和 bug 更新,以作为组的更新作业运行。
查看组报表资源
组详细信息页上的 Reports(报表)资源显示以下资源:
- 安全更新报告:显示安全补丁程序上最新实例的数量和百分比。
- 错误更新报告:显示 bug 补丁程序上最新实例的数量和百分比。
- 实例活动报告:显示使用 OS Management Hub 服务检入的实例的数量和百分比。
-
单击 OS Management Hub 导航部分下的 Groups(组),然后单击 Oracle_Linux_8_hosts 。
-
单击 Oracle_Linux_8_hosts “组详细信息”页上的“资源”下的报表。
-
单击安全更新报告可转到安全更新报告资源。
此详细信息页包含组的所有成员实例上安全更新状态的详细信息。记下安全更新报告资源上列出的任何指导或更新。您稍后将在教程中运行更新作业以解决这些问题。
-
单击错误更新报告资源。
此详细信息页显示组中所有成员实例的 bug 更新。记下 Bug reports 资源上列出的任何指导或更新。您稍后将在教程中运行更新作业以解决这些问题。
-
单击实例活动报表资源。
此详细信息页显示所有成员实例的连接状态。两个成员实例应显示活动状态。
运行组的更新作业和监视作业
现在,您已查看报告并确定了组的指导和可用更新,您将运行作业以将组更新到最新的补丁程序和内容。
作业是 OS Management Hub 对一个或多个实例(例如安装更新)执行的操作。作业运行时,它将执行完成该作业所需的工作,将工作分派给实例,并将结果报告回服务。
您可以立即运行更新作业,也可以将它们安排在不同的时间。在调度更新作业时,您甚至可以将它们设置为具有设置频率的循环事件。更新作业可能需要一些时间才能应用并在服务中显示。
为组创建更新作业
要将所有更新应用于与所有或某些更新类型(如安全性、bug 修复或增强功能)匹配的实例,请创建一个更新作业。
-
单击 OS Management Hub 导航部分下的 Groups(组),然后单击 Oracle_Linux_8_hosts 。
-
单击创建更新作业。
-
输入以下职务详细信息:
- 名称:保留作业的默认名称。
- 说明:(可选)输入说明。
-
从要应用的更新选项中选择全部。
-
将作业调度为立即运行。
-
单击提交。
监视组的作业
可以使用作业资源监视作业根据组成员完成工作时的状态。
-
通过单击作业资源并选择进行中的作业选项卡来查看更新作业状态。
注:更新作业需要几分钟才能完成,并且可能需要几分钟时间才能显示在控制台的进行中作业选项卡上。如果作业未显示,请刷新页面。
-
单击正在进行的作业选项卡上的将更新应用于 Oracle_Linux_8_hosts 作业。
“作业工作详细信息”页提供有关作业将完成的所有工作的信息。关联的工作资源列出对每个组成员执行的较小任务。对于影响多个实例的作业,您可以轻松确定作业中哪些关联的工作成功或失败。
-
返回到组的详细信息页和作业资源,然后单击已完成的作业选项卡可查看所有已完成的作业。
您会注意到前面教程步骤中的其他作业,例如 assign software sources 和 install package 作业。作业是 OS Management Hub 对组和组成员执行的任何操作。
为组计划循环更新任务
您可以为组计划循环更新作业,创建这些循环作业后,可以从作业资源的调度作业选项卡管理和修改这些作业。
-
单击 OS Management Hub 导航部分下的 Groups(组),然后单击 Oracle_Linux_8_hosts 。
-
单击创建更新作业。
-
输入以下职务详细信息:
- 名称:保留作业的默认名称。
- 说明:(可选)输入说明。
-
从要应用的更新选项中选择全部。
-
选择调度。
-
单击日历图标,选择今天的日期,并将作业计划为 30 分钟。
-
选择周作为频率。
-
将 Interval (Weeks) 设置为 1 。
此步骤将在每周的工作日和从计划选择设置的时间安排重复更新作业。
-
保持启用自动重试。
如果作业的初始执行失败,则服务最多重试三次作业。每次重试间隔五分钟。
-
单击提交。
-
在 OS Management Hub 部分的 Jobs 页面上的 Scheduled Jobs 选项卡中查看更新作业的状态。
如果未显示调度的作业,请等待一段时间并刷新页面。
此调度的更新作业将确保所有组成员定期更新到组清单中定义的内容的最新版本。
后续步骤
通过完成本教程,您已经学会了使用 OS Management Hub 中的组来管理 Oracle Linux OS 内容、调度和运行 Oracle Linux OS 更新以及监视更新作业。通过在所有组成员中快速高效地应用所需的更新,组可以简化大型 Oracle Linux 部署的维护。
相关链接
更多学习资源
浏览 docs.oracle.com/learn 上的其他实验室,或者访问 Oracle Learning YouTube 渠道上的更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 成为 Oracle Learning Explorer。
有关产品文档,请访问 Oracle 帮助中心。
Manage Oracle Linux at Scale with Groups in Oracle OS Management Hub
G33363-01
Copyright ©2024, Oracle and/or its affiliates.