你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure 上的 Red Hat Enterprise Linux 的管理和监视注意事项

本文介绍如何使用各种服务和工具在 Azure 上管理和监视 Red Hat Enterprise Linux (RHEL)。

如果执行绿地部署,可以使用 Azure 更改跟踪 功能轻松识别更改。 还可以使用Azure 自动化更新管理功能来管理 RHEL 虚拟机(VM)的操作系统更新。

对于现有的棕色地带部署,可以使用 Red Hat Satellite,并将服务从本地环境扩展到 Azure,以利用现有的技能集。

内容流

借助 Red Hat Satellite,可以在所有生命周期阶段系统地向主机提供内容并应用修补程序。 Red Hat Satellite 中的内容流涉及从外部源到主机的内容管理和分发。

卫星中的内容从外部内容源流向 Satellite Server。 胶囊服务器将内容从附属服务器镜像到主机。 内容流由以下步骤组成:

  1. 配置外部内容源。 可以使用 Satellite 配置许多内容源。 支持的内容源包括 Red Hat 客户门户、Git 存储库、Ansible 集合、Docker 中心、安全内容自动化协议 (SCAP) 存储库或组织中的内部数据存储。

  2. 管理内容生命周期。 可以使用 Satellite Server 来规划和管理内容生命周期。

  3. 建立内容源。 创建胶囊服务器,以根据需求在各种位置建立内容源。 例如,可以为各个地理位置建立内容源,或者为具有单独网络的数据中心建立多个内容源。

  4. 分配主机系统。 将主机系统分配给 Capsule Server 或直接分配到 Satellite Server 时,请确保主机接收它们提供的内容。 可以有物理主机或虚拟主机。

显示 Red Hat Satellite 体系结构的关系图。

部署策略

建议使用自动化软件更新管理解决方案,而不是手动更新安装过程。 使用布朗菲尔德安装时,请考虑与本地解决方案的集成。 在 Azure 上部署 net-new 工作负载时,请使用云原生工具(例如 更新管理Azure 上的 Ansible),以显著减少与其他合作伙伴开源软件相比的价值。

注意事项

部署任何自动更新管理解决方案时,请考虑 Linux 软件包存储库的位置。

Microsoft提供了一个公共存储库,以编程方式更新支持的 Linux 分发版的包。 Red Hat 为已注册系统的软件包提供自己的存储库。 Red Hat 使用 Red Hat 内容分发网络和用于 RHEL 9 的 Red Hat 订阅管理器。

内容分发网络结构

Red Hat 内容分发网络是一系列地理分布的静态 Web 服务器,其中包含供系统使用的内容和错误。 系统可以直接使用此内容,例如通过注册到 Red Hat 订阅管理的系统,或通过本地解决方案(如 Red Hat Satellite 6)进行镜像。 可以通过 .. 访问 Red Hat 内容分发网络 cdn.redhat.com。 x.509 证书身份验证保护 Red Hat 内容分发网络,以确保只有有效的用户可以访问它。

如果将系统注册到 Red Hat 订阅管理,则附加的订阅将控制系统可以访问的内容分发网络的子集。 如果将系统注册到 Satellite 6,则附加到订阅清单的订阅将控制系统可以访问的内容传送系统的子集。

建议

实施以下建议来帮助管理和监视环境。

使用自定义映像而不是Azure 市场映像

可以使用预定义的Azure 市场映像来生成 Azure VM。 或者, 可以使用自定义 Linux 映像 来生成和控制特定的符合性和安全性需求。 如果使用支持的 Linux 分发版(如 RHEL),请遵循生成客户映像的特定指南,例如 RHEL 8 指南。 如果使用自定义 Linux 映像,请按照更新管理器最佳做法指南进行操作

在非生产环境中执行更新测试

将测试环境与生产环境分开,以帮助最大程度地减少对生产工作负荷的潜在负面影响。 使用Azure 开发测试实验室提供隔离并降低云订阅成本,同时加速新的更新测试。 使用 Azure DevOps 或类似的工具实现持续集成和持续交付(CI/CD)管道。

如果新的更新引入了关键问题,请制定明确的已测试回滚策略。 这些策略应包括数据库备份、快照和快速部署逆转机制。

考虑计划和维护时段

可以使用 自动化 帐户来帮助协调云环境中软件更新的计划。

使用蓝绿部署模型或Azure App 服务部署槽位来帮助最大程度地减少任何给定软件更新维护时段内所需的总时间。 请记住,Azure 服务会更新底层基础结构,并可能会影响活动 VM。 有关详细信息,请参阅Azure 门户中的 Azure 服务运行状况

配置安全性和符合性

使用 Azure Policy 确保环境符合组织的安全性和合规性标准。 有关详细信息, 请参阅 Azure Policy 概述

可以使用 Azure Policy 来:

  • 强制实施合规性和治理标准,例如审核和合规性报告。
  • 提供资源管理和成本控制,例如资源一致性和成本管理。
  • 提供安全性和访问控制,例如安全基线和基于角色的访问控制(RBAC)。

管理依赖项和兼容性

正确记录应用程序依赖的库、框架和任何合作伙伴服务。 使用基础结构(如 Azure 资源管理器 模板(ARM 模板)或 Terraform 来定义和管理具有一致配置的云资源。 使用此方法可降低环境偏移的风险。

Azure Artifacts 用于专用包存储库,以帮助确保环境中一致地安装了正确的软件。 使用 GitHub Dependabot 等工具来帮助查找存储库中的软件依赖项。

配置备份和恢复

对于关键应用程序,请考虑使用应用程序一致性快照。 对于不太复杂的方案,请使用文件一致性快照。

Azure 备份提供的快照类型包括:

  • VM 快照。
  • 附加到给定 VM 的磁盘的磁盘快照。

若要管理快照,请使用:

  • 自动备份计划:可以定期拍摄快照,以确保数据备份一致,而无需手动干预。

  • 保留策略:使用备份设置保留策略,以便保留快照的时间。 使用此方法符合数据保留要求并有效管理存储成本。

使用时间点还原将 VM 或磁盘还原到快照捕获的状态。 确保环境能够快速从数据损坏、意外删除或类似事件中恢复。

配置管理和更改管理

对于 Red Hat 基础结构,可以使用 Ansible 自动化平台 执行 配置管理

Red Hat Ansible 自动化平台概述

Red Hat Ansible 自动化平台简化了自动化工作负载的开发和操作,用于管理企业应用程序基础结构生命周期。 Ansible 自动化平台跨多个 IT 域工作,包括操作、网络、安全性和开发,以及跨各种混合环境。 可以在自动化旅程中的任何步骤中使用 Ansible 自动化平台快速实现企业范围的自动化。

可以使用自动化更新管理功能和 Azure 更新管理器在 Azure 环境中跟踪和实施更改管理。 自动化更新管理功能将于 2024 年 8 月 31 日停用。 建议今后使用更新管理器。

有关详细信息,请参阅:

用于管理更新的 Azure 本机工具

与自动化更新管理功能不同,更新管理器不依赖于自动化或 Azure Monitor 日志。 与自动化中的原始版本相比,更新管理器提供了 许多额外的功能 ,并提供增强的功能。

下图显示了更新管理器混合连接配置。

显示更新管理器混合连接的关系图。

有关详细信息,请参阅:

VM 监视和报告

RHEL 提供了一组 可靠的命令行工具 ,用于在单个 VM 上提供操作系统、正在运行的进程和基础结构组件的深度性能和优化。

可以使用 Azure Monitor 收集数据、分析数据,以及为云和本地环境创建报表。 下图显示了可以使用的工具。

显示 Azure Monitor 工具的关系图。

Azure 监视具有合并客户数据源的功能,如下图所示。

显示 Azure Monitor 数据源的关系图。

Azure Linux VM 监视

Azure Monitor 使用代理从 Azure VM 收集启动数据和性能数据。 它将此数据存储在 Azure 存储中,并通过 Azure 门户、Azure PowerShell 模块和 Azure CLI 进行访问。 为了为 VM 提供高级监视,Azure Monitor 收集性能指标并发现安装在 VM 上的应用程序组件。 还可以使用性能图表和依赖项映射。

本机 Azure VM 支持启动诊断。 对于本地 Linux VM,建议 使用 Azure Arc 提供全面的混合解决方案。 了解如何 在 Linux VM 上启用 Azure Arc。

在 Azure Linux VM 上启用启动诊断

Linux VM 启动时,启动诊断扩展将捕获启动输出并将其存储在 Azure 存储中。 可以使用此数据来排查 VM 启动问题。 使用 Azure CLI 创建 Linux VM 时,不会自动启用启动诊断。

在启用启动诊断之前,请创建用于存储启动日志的存储帐户。 使用 az storage account create 命令创建帐户。 确保存储帐户具有介于 3 到 24 个字符之间的全局唯一名称,并且仅包含数字和小写字母。

启用启动诊断后,每次停止和启动 VM 时,启动过程的相关信息都会写入日志文件。

查看主机指标

Linux VM 在 Azure 中有一个与它交互的专用主机。 会自动收集主机的指标,可以在Azure 门户中查看指标。

  1. 在Azure 门户中,选择资源组,选择 myResourceGroupMonitor,然后在资源列表中选择 myVM

  2. 若要查看主机 VM 的执行方式,请在“监视”部分选择指标”,然后在“可用”指标选择任何[主机]指标。

    显示Azure 门户中的“指标”页的屏幕截图。

启用高级监视

若要在 用于 VM 的 Azure Monitor 中启用高级监视,请:

  1. 在Azure 门户中,选择资源组,选择 myResourceGroupMonitor,然后在资源列表中选择 myVM

  2. 在“监视”部分中选择“见解”。

  3. 选择启用

    显示见解页面的屏幕截图。

  4. Azure Monitor Insights 载入 页上,如果同一订阅中已有 Log Analytics 工作区,请在下拉列表中选择它。

    该列表预先选择了默认工作区和 VM 在订阅中部署的位置。

    注意

    若要创建新的 Log Analytics 工作区以存储 VM 中的监视数据,请参阅创建 Log Analytics 工作区。 该工作区必须属于支持的区域之一。

    启用监视后,可能需要等待几分钟才能查看 VM 的性能指标。

    显示等待页的屏幕截图。

查看 VM 性能指标

用于 VM 的 Azure Monitor包括一组性能图表,这些图表面向多个关键性能指标,以帮助确定 VM 的性能。 若要从 VM 访问图表,请执行以下步骤。

  1. 在Azure 门户中,选择资源组,选择 myResourceGroupMonitor,然后在资源列表中选择 myVM
  2. 在“监视”部分中选择“见解”。
  3. 选择“性能”选项卡。此页包括性能使用情况图表,并为每个发现的逻辑磁盘、其容量、使用情况和每个度量的总平均值提供表。

创建警报

可以根据特定的性能指标创建警报。 使用警报在发生某些事件时获取通知。 例如,当平均 CPU 使用率超过特定阈值或可用可用磁盘空间低于特定量时,可以收到警报。 可以在Azure 门户中查看警报,也可以通过电子邮件接收警报。 还可以在生成警报时触发自动化 Runbook 或Azure 逻辑应用。

以下示例针对平均 CPU 使用率创建警报。

  1. 在Azure 门户中,选择资源组,选择 myResourceGroupMonitor,然后在资源列表中选择 myVM
  2. 在 VM 窗格中选择 “警报规则 ”。 然后选择“警报”窗格顶部的“ 添加指标警报 ”。
  3. 为警报提供名称,例如 myAlertRule
  4. 若要在 CPU 百分比超过 1.0 5 分钟时触发警报,请将所有其他默认值保留为选定状态。
  5. (可选)选择要发送电子邮件通知的电子邮件所有者、参与者和读者。 默认操作在其门户中显示通知。
  6. 选择“确定”

后续步骤