Skip to main content
NetApp Console setup and administration
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

在 AWS 中手动部署 Console 代理

贡献者 netapp-tonias

您可以在 AWS 中运行的 Linux 主机上手动部署 Console 代理。要在自己的 Linux 主机上手动部署 Console 代理,需要查看主机要求、设置网络、准备 AWS 权限、部署 Console 代理,然后提供准备的权限。

在 AWS 中部署代理将在您选择的 VPC 中启动运行 Linux 和 Console 代理软件的 EC2 实例。

开始之前

步骤 1:查看主机要求

确保运行控制台代理软件的主机满足操作系统、内存和端口要求。

备注 控制台代理保留 19000 到 19200 的 UID 和 GID 范围。这个范围是固定的,不能修改。如果主机上的任何第三方软件使用此范围内的 UID 或 GID,则代理安装将失败。 NetApp建议使用没有第三方软件的主机以避免冲突。
专用主机

控制台代理需要专用主机。只要满足以下尺寸要求,任何架构都受支持:

  • CPU:8 核或 8 个 vCPU

  • 内存:32 GB

  • 磁盘空间:建议主机预留165GB空间,分区要求如下:

    • /opt:必须有 120 GiB 可用空间

      代理使用 `/opt`安装 `/opt/application/netapp`目录及其内容。

    • /var:必须有 40 GiB 可用空间

      Console 代理需要此空间在 `/var`中,因为 Podman 或 Docker 的架构是在此目录中创建容器。具体来说,它们将在 `/var/lib/containers/storage`目录和 `/var/lib/docker`中为 Docker 创建容器。外部挂载或符号链接不适用于此空间。

AWS EC2 实例类型

满足 CPU 和 RAM 要求的实例类型。 NetApp推荐使用 t3.2xlarge。

虚拟机管理程序

需要经过认证可运行受支持的操作系统的裸机或托管虚拟机管理程序。

操作系统和容器要求

在标准模式或受限模式下使用控制台时,控制台代理支持以下操作系统。安装代理之前需要一个容器编排工具。

操作系统 支持的操作系统版本 支持的代理版本 所需的容器工具 SELinux

Red Hat Enterprise Linux

9.6

  • 仅限英语版本。

  • 主机必须在 Red Hat 订阅管理中注册。如果未注册,主机将无法在代理安装期间访问存储库来更新所需的第三方软件。

4.0.0 或更高版本,控制台处于标准模式或受限模式

Podman 版本 5.4.0,podman-compose 版本 1.5.0。

在强制模式或宽容模式下受支持

9.1 至 9.4

  • 仅限英语版本。

  • 主机必须在 Red Hat 订阅管理中注册。如果未注册,主机将无法在代理安装期间访问存储库来更新所需的第三方软件。

3.9.50 或更高版本,控制台处于标准模式或受限模式

Podman 版本 4.9.4,podman-compose 版本 1.5.0。

在强制模式或宽容模式下受支持

8.6 至 8.10

  • 仅限英语版本。

  • 主机必须在 Red Hat 订阅管理中注册。如果未注册,主机将无法在代理安装期间访问存储库来更新所需的第三方软件。

3.9.50 或更高版本,控制台处于标准模式或受限模式

Podman 版本 4.6.1 或 4.9.4,搭配 podman-compose 1.0.6。

在强制模式或宽容模式下受支持

Ubuntu

24.04 LTS

3.9.45 或更高版本, NetApp Console处于标准模式或受限模式

Docker Engine 23.0.6 至 28.0.0。

不支持

22.04 LTS

3.9.50 或更高版本

密钥对

创建控制台代理时,您需要选择一个 EC2 密钥对来与实例一起使用。

使用 IMDSv2 时的 PUT 响应跳数限制

如果启用了 IMDSv2(新 EC2 实例的默认设置),请将 PUT 响应跳数限制设置为 3。否则,系统会在代理设置期间显示 UI 初始化错误。

步骤 2:安装 Podman 或 Docker Engine

根据您的操作系统,安装代理之前需要 Podman 或 Docker Engine。

示例 1. 步骤
Podman

按照以下步骤安装和配置 Podman:

  • 启用并启动 podman.socket 服务

  • 安装python3

  • 安装 podman-compose 包(因 Red Hat 版本而异)

  • 将 podman-compose 添加到 PATH 环境变量

  • 如果使用 Red Hat Enterprise Linux,请验证您的 Podman 版本使用的是 Netavark Aardvark DNS 而不是 CNI

备注 安装代理后调整 aardvark-dns 端口(默认值:53),以避免 DNS 端口冲突。按照说明配置端口。
步骤
  1. 如果主机上安装了 podman-docker 包,请将其删除。

    dnf remove podman-docker
    rm /var/run/docker.sock
  2. 安装 Podman。

    您可以从官方 Red Hat Enterprise Linux 存储库获取 Podman。

    1. 对于 Red Hat Enterprise Linux 9.6:

      sudo dnf install podman-5:<version>

      其中 <version> 是您正在安装的 Podman 支持的版本。查看支持的 Podman 版本

    2. 适用于 Red Hat Enterprise Linux 9.1 至 9.4:

      sudo dnf install podman-4:<version>

      其中 <version> 是您正在安装的 Podman 支持的版本。查看支持的 Podman 版本

    3. 对于 Red Hat Enterprise Linux 8:

      sudo dnf install podman-4:<version>

      其中 <version> 是您正在安装的 Podman 支持的版本。查看支持的 Podman 版本

  3. 启用并启动 podman.socket 服务。

    sudo systemctl enable --now podman.socket
  4. 安装 python3。

    sudo dnf install python3
  5. 如果您的系统上还没有 EPEL 存储库包,请安装它。

    此步骤是必需的,因为 podman-compose 可从 Extra Packages for Enterprise Linux (EPEL) 存储库中获得。

  6. 如果使用 Red Hat Enterprise 9:

    1. 安装EPEL存储库软件包。

    sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm

    +

    1. 安装 podman-compose 包 1.5.0。

      sudo dnf install podman-compose-1.5.0
  7. 如果使用的是 Red Hat Enterprise Linux 8:

    1. 安装EPEL存储库软件包。

      sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
    2. 安装 podman-compose 包 1.0.6。

      sudo dnf install podman-compose-1.0.6
      备注 使用 `dnf install`命令满足将 podman-compose 添加到 PATH 环境变量的要求。安装命令将 podman-compose 添加到 /usr/bin,它已经包含在 `secure_path`主机上的选项。
    3. 如果使用 Red Hat Enterprise Linux 8,请验证您的 Podman 版本是否使用带有 Aardvark DNS 的 NetAvark 而不是 CNI。

      1. 通过运行以下命令检查您的 networkBackend 是否设置为 CNI:

        podman info | grep networkBackend
      2. 如果 networkBackend 设置为 CNI,你需要将其更改为 netavark

      3. 安装 `netavark`和 `aardvark-dns`使用以下命令:

        dnf install aardvark-dns netavark
      4. 打开 `/etc/containers/containers.conf`文件并修改 network_backend 选项以使用“netavark”而不是“cni”。

        如果 /etc/containers/containers.conf`不存在,请将配置更改为 `/usr/share/containers/containers.conf

      5. 重新启动 podman。

        systemctl restart podman
      6. 使用以下命令确认 networkBackend 现在已更改为“netavark”:

        podman info | grep networkBackend
Docker 引擎

按照 Docker 的文档安装 Docker Engine。

步骤
  1. "查看 Docker 的安装说明"

    按照步骤安装受支持的 Docker Engine 版本。请勿安装最新版本,因为控制台不支持它。

  2. 验证 Docker 是否已启用并正在运行。

    sudo systemctl enable docker && sudo systemctl start docker

步骤 3:设置网络

请确保网络位置满足以下要求,以便控制台代理能够管理混合云中的资源。

连接到目标网络

控制台代理需要与您计划创建和管理系统的位置建立网络连接。例如,您计划在本地环境中创建Cloud Volumes ONTAP系统或存储系统的网络。

出站互联网访问

部署控制台代理的网络位置必须具有出站互联网连接才能联系特定端点。

使用基于 Web 的NetApp Console时从计算机联系的端点

从 Web 浏览器访问 NetApp Console 的计算机必须能够联系多个端点。

从控制台代理联系的端点

控制台代理需要出站互联网访问来联系以下端点,以管理公共云环境中的资源和流程以进行日常操作。

下面列出的端点都是 CNAME 条目。

端点 目的

AWS 服务(amazonaws.com):

  • 云形成

  • 弹性计算云(EC2)

  • 身份和访问管理 (IAM)

  • 密钥管理服务(KMS)

  • 安全令牌服务 (STS)

  • 简单存储服务(S3)

管理 AWS 资源。端点取决于您的 AWS 区域。 "有关详细信息,请参阅 AWS 文档"

Amazon FSx for NetApp ONTAP:

  • api.workloads.netapp.com

基于 Web 的控制台通过与 Workload Factory API 交互来管理和操作基于ONTAP 的FSx 工作负载。

获取许可信息并将 AutoSupport 消息发送到 NetApp 支持。

更新NetApp支持站点 (NSS) 凭据或将新的 NSS 凭据添加到NetApp Console。

获取许可信息并向 NetApp 支持发送 AutoSupport 消息,以及接收 Cloud Volumes ONTAP 的软件更新。

https://api.bluexp.netapp.com https://netapp-cloud-account.auth0.com https://netapp-cloud-account.us.auth0.com https://console.netapp.com https://components.console.netapp.com https://cdn.auth0.com

在NetApp Console中提供功能和服务。

https://bluexpinfraprod.eastus2.data.azurecr.io https://bluexpinfraprod.azurecr.io https://occmclientinfragov.azurecr.us (部署受限模式时需要)

获取控制台代理升级的图像。

代理服务器

NetApp支持显式和透明代理配置。如果您使用透明代理,则只需要提供代理服务器的证书。如果您使用显式代理,您还需要 IP 地址和凭据。

  • IP 地址

  • 凭据

  • HTTPS 证书

端口

除非由您发起,或者用作代理将 AutoSupport 消息从 Cloud Volumes ONTAP 发送到 NetApp Support,否则不会有流向 Console agent 的入站流量。

  • HTTP(80)和 HTTPS(443)提供对本地 UI 的访问,您会在极少数情况下使用它们。

  • 仅当需要连接到主机进行故障排除时才需要 SSH(22)。

  • 如果您在没有出站互联网连接的子网中部署Cloud Volumes ONTAP系统,则需要通过端口 3128 建立入站连接。

    如果Cloud Volumes ONTAP系统没有出站互联网连接来发送AutoSupport消息,控制台会自动配置这些系统以使用控制台代理附带的代理服务器。唯一的要求是确保控制台代理的安全组允许通过端口 3128 进行入站连接。部署控制台代理后,您需要打开此端口。

启用 NTP

如果您计划使用 NetApp Data Classification 扫描公司数据源,则应在 Console 代理和 NetApp Data Classification 系统上启用网络时间协议 (NTP) 服务,以便在系统之间同步时间 "详细了解 NetApp Data Classification"

步骤 4:设置控制台的 AWS 权限

请使用以下选项之一为NetApp Console提供 AWS 权限:

  • 选项 1:创建 IAM 策略并将策略附加到可与 EC2 实例关联的 IAM 角色。

  • 选项 2:向控制台提供具有所需权限的 IAM 用户的 AWS 访问密钥。

按照步骤准备控制台的权限。

IAM 角色
步骤
  1. 登录 AWS 控制台并导航到 IAM 服务。

  2. 创建策略:

    1. 选择“策略”>“创建策略”。

    2. 选择 JSON 并复制并粘贴内容"控制台代理的 IAM 策略"

    3. 完成剩余步骤以创建策略。

      根据您计划使用的 NetApp 数据服务,您可能需要创建第二个策略。对于标准区域,权限分布在两个策略中。由于 AWS 中托管策略的最大字符大小限制,需要两个策略。"了解有关控制台代理的 IAM 策略的更多信息"

  3. 创建 IAM 角色:

    1. 选择*角色 > 创建角色*。

    2. 选择 AWS 服务 > EC2

    3. 通过附加刚刚创建的策略来添加权限。

    4. 完成剩余步骤以创建角色。

结果

安装控制台代理后,您现在拥有一个可以与 EC2 实例关联的 IAM 角色。

AWS 访问密钥
步骤
  1. 登录 AWS 控制台并导航到 IAM 服务。

  2. 创建策略:

    1. 选择“策略”>“创建策略”。

    2. 选择 JSON 并复制并粘贴内容"控制台代理的 IAM 策略"

    3. 完成剩余步骤以创建策略。

      根据您计划使用的NetApp数据服务,您可能需要创建第二个策略。

    对于标准区域,权限分布在两个策略中。由于 AWS 中托管策略的最大字符大小限制,因此需要两个策略。"了解有关控制台代理的 IAM 策略的更多信息"

  3. 将策略附加到 IAM 用户。

  4. 确保用户拥有访问密钥,您可以在安装控制台代理后将其添加到NetApp Console。

结果

现在,您拥有一个具有所需权限的 IAM 用户和一个可以提供给控制台的访问密钥。

步骤 5:安装控制台代理

完成所有先决条件后,请在您的 Linux 主机上手动安装该软件。

开始之前

您应该具有以下内容:

  • 安装控制台代理的 root 权限。

  • 如果控制台代理需要代理才能访问互联网,则提供有关代理服务器的详细信息。

    您可以选择在安装后配置代理服务器,但这样做需要重新启动 Console 代理。

  • 如果代理服务器使用 HTTPS 或代理是拦截代理,则需要 CA 签名的证书。

备注 手动安装控制台代理时,无法为透明代理服务器设置证书。如果需要为透明代理服务器设置证书,则必须在安装后使用维护控制台。详细了解"代理维护控制台"
关于此任务

安装后,如果有新版本可用,控制台代理会自动更新。

步骤
  1. 如果主机上设置了 http_proxyhttps_proxy 系统变量,请将其删除:

    unset http_proxy
    unset https_proxy

    如果不删除这些系统变量,安装将失败。

  2. 下载控制台代理软件,然后将其复制到 Linux 主机。您可以从NetApp Console或NetApp支持网站下载。

    • NetApp Console:转到 Agents > Management > Deploy agent > On-prem > Manual install

      选择下载代理安装程序文件或文件的 URL。

    • "NetApp 支持站点" (如果您还没有 Console 的访问权限,则需要此选项)。

      备注 下载适用于您的网络或云端的"在线"代理安装程序。Console 代理可使用单独的"脱机"安装程序,但它仅受专用模式部署支持。
    • NetApp 支持站点(如果您还没有 Console 的访问权限,则需要该站点) "NetApp 支持站点"

  3. 分配运行脚本的权限。

    chmod +x NetApp_Console_Agent_Cloud_<version>

    其中 <version> 是您下载的控制台代理的版本。

  4. 如果在政府云环境中安装,请禁用配置检查。"了解如何禁用手动安装的配置检查。"

  5. 运行安装脚本。

    ./NetApp_Console_Agent_Cloud_<version> --proxy <HTTP or HTTPS proxy server> --cacert <path and file name of a CA-signed certificate>

    如果您的网络需要代理才能访问互联网,则需要添加代理信息。您可以在安装过程中添加显式代理。 --proxy--cacert 参数是可选的,系统不会提示您添加它们。如果您有显式代理服务器,则需要输入如图所示的参数。

    备注 如果要配置透明代理,可以在安装后进行此操作。"了解代理维护控制台".

    以下是使用 CA 签名证书配置显式代理服务器的示例:

    ./NetApp_Console_Agent_Cloud_v4.0.0 --proxy https://user:password@10.0.0.30:8080/ --cacert /tmp/cacert/certificate.cer
    ./NetApp_Console_Agent_Cloud_v4.0.0 --proxy https://user:password@10.0.0.30:8080/ --cacert /tmp/cacert/certificate.cer

    --proxy 使用以下格式之一将 Console 代理配置为使用 HTTP 或 HTTPS 代理服务器:

    • http://地址:端口

    • http://用户名:密码@地址:端口

    • http://域名%92用户名:密码@地址:端口

    • https://地址:端口

    • https://用户名:密码@地址:端口

    • https://域名%92用户名:密码@地址:端口

      请注意以下事项:

      • 用户可以是本地用户或域用户。

      • 对于域用户,您必须使用 \ 的 ASCII 代码,如上所示。

      • Console 代理不支持包含 @ 字符的用户名或密码。

      • 如果密码包含以下任何特殊字符,则必须在该特殊字符前面加上反斜杠来转义该特殊字符:& 或 !

        例如:

    http://bxpproxyuser:netapp1\!@地址:3128

  6. 如果您使用 Podman,则需要调整 aardvark-dns 端口。

    1. 通过 SSH 连接到控制台代理虚拟机。

    2. 打开 podman /usr/share/containers/containers.conf 文件并修改 Aardvark DNS 服务的选定端口。例如,将其更改为54。

      vi /usr/share/containers/containers.conf

      例如:

    # Port to use for dns forwarding daemon with netavark in rootful bridge
    # mode and dns enabled.
    # Using an alternate port might be useful if other DNS services should
    # run on the machine.
    #
    dns_bind_port = 54
    1. 重新启动控制台代理虚拟机。

  7. 等待安装完成。

    安装结束时,如果您指定了代理服务器,控制台代理服务 (occm) 将重新启动两次。

    备注 如果安装失败,您可以查看安装报告和日志来帮助您解决问题。"了解如何解决安装问题。"
  8. 从连接到控制台代理虚拟机的主机打开 Web 浏览器并输入以下 URL:

  9. 登录后,设置控制台代理:

    1. 指定与控制台代理关联的组织。

    2. 输入系统的名称。

    3. 在*您是否在安全环境中运行?*下保持限制模式处于禁用状态。

      您应该保持限制模式处于禁用状态,因为这些步骤描述了如何在标准模式下使用控制台。仅当您拥有安全的环境并希望断开此帐户与后端服务的连接时,才应启用受限模式。如果真是这样的话,"按照步骤在受限模式下开始使用NetApp Console"

    4. 选择*让我们开始吧*。

如果您在创建 Console 代理的同一 AWS 帐户中有 Amazon S3 存储桶,您将看到 Amazon S3 存储系统自动显示在 Systems 页面上。 "了解如何从NetApp Console管理 S3 存储桶"

步骤 6:提供对NetApp Console的权限

安装控制台代理后,提供您设置的 AWS 权限,以便控制台代理可以管理您在 AWS 中的数据和存储基础设施。

IAM 角色

将创建的 IAM 角色附加到控制台代理 EC2 实例。

步骤
  1. 转到 Amazon EC2 控制台。

  2. 选择*实例*。

  3. 选择控制台代理实例。

  4. 选择*操作 > 安全 > 修改 IAM 角色*。

  5. 选择 IAM 角色并选择 更新 IAM 角色

前往 "NetApp Console"开始使用控制台代理。

AWS 访问密钥

向控制台提供具有所需权限的 IAM 用户的 AWS 访问密钥。

步骤
  1. 确保当前在控制台中选择了正确的控制台代理。

  2. 选择“管理 > 凭证”。

  3. 选择*组织凭证*。

  4. 选择“添加凭据”并按照向导中的步骤操作。

    1. 凭证位置:选择*Amazon Web Services > 代理*。

    2. 定义凭证:输入 AWS 访问密钥和密钥。

    3. 市场订阅:通过立即订阅或选择现有订阅将市场订阅与这些凭证关联。

    4. 审核:确认有关新凭证的详细信息并选择*添加*。

前往 "NetApp Console"开始使用控制台代理。