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

使用 OpenShift OperatorHub 安装 Astra 控制中心

贡献者

如果您使用的是 Red Hat OpenShift ,则可以使用 Red Hat 认证操作员安装 Astra Control Center 。使用此操作步骤从安装 Astra 控制中心 "Red Hat 生态系统目录" 或使用 Red Hat OpenShift 容器平台。

完成此操作步骤后,您必须返回到安装操作步骤以完成 "剩余步骤" 以验证安装是否成功并登录。

开始之前
  • 满足环境前提条件"开始安装之前,请为 Astra Control Center 部署准备您的环境"

    提示 在第三个容错域或二级站点中部署A作用 力控制中心。对于应用程序复制和无缝灾难恢复、建议执行此操作。
  • 确保集群操作员和API服务运行正常

    • 在OpenShift集群中、确保所有集群操作员均处于运行状况良好的状态:

      oc get clusteroperators
    • 在OpenShift集群中、确保所有API服务均处于运行状况良好的状态:

      oc get apiservices
  • 确保具有可路由的FQDN:您计划使用的Astra FQDN可以路由到集群。这意味着您的内部 DNS 服务器中有一个 DNS 条目,或者您正在使用已注册的核心 URL 路由。

  • 获取OpenShift权限:要执行所述的安装步骤、您需要拥有对Red Hat OpenShift容器平台的所有必要权限和访问权限。

  • 配置证书管理器:如果集群中已存在证书管理器,则需要执行某些操作 "前提条件步骤" 这样、Astra控制中心就不会安装自己的证书管理器。默认情况下、Astra控制中心会在安装期间安装自己的证书管理器。

  • 设置Kubernetes入口控制器:如果您有一个Kubernetes入口控制器来管理对服务的外部访问、例如集群中的负载平衡、则需要将其设置为与Astra Control Center配合使用:

    1. 创建操作员命名空间:

      oc create namespace netapp-acc-operator
    2. "完成设置" 适用于您的入口控制器类型。

  • (仅限ONTAP SAN驱动程序)启用多路径:如果使用的是ONTAP SAN驱动程序、请确保在所有Kubernetes集群上启用了多路径。

您还应考虑以下事项:

  • 获取NetApp Astra控件映像注册表的访问权限

    您可以选择从NetApp映像注册表中获取Astra控件的安装映像和增强功能、例如Astra控件配置程序。

    1. 记录您登录注册表所需的Astra Control帐户ID。

      您可以在Astra Control Service Web UI中查看您的帐户ID。选择页面右上角的图图标,选择*API access*并记下您的帐户ID。

    2. 在同一页面中,选择*Generate API t令牌*并将API令牌字符串复制到剪贴板,然后将其保存在编辑器中。

    3. 登录到Asta Control注册表:

      docker login cr.astra.netapp.io -u <account-id> -p <api-token>
  • 安装用于安全通信的服务网格:强烈建议使用保护Astra Control主机集群通信通道的安全 "支持的服务网格"

    重要说明 只能在Astra Control Center期间将Astra Control Center与服务网格集成 "安装" 而不是独立于此过程。不支持从网格化环境切换回非网格化环境。

    要使用Isio服务网格、您需要执行以下操作:

    • 添加 istio-injection:enabled 在部署Asta Control Center之前、请标记Asta命名空间。

    • 使用 Generic 入口设置 并为提供备用入口 "外部负载平衡"

    • 对于Red Hat OpenShift集群、您需要进行定义 NetworkAttachmentDefinition 在所有关联的Astra Control Center名空间上 (netapp-acc-operatornetapp-accnetapp-monitoring 或任何已替换的自定义卷)。

      cat <<EOF | oc -n netapp-acc-operator create -f -
      apiVersion: "k8s.cni.cncf.io/v1"
      kind: NetworkAttachmentDefinition
      metadata:
        name: istio-cni
      EOF
      
      cat <<EOF | oc -n netapp-acc create -f -
      apiVersion: "k8s.cni.cncf.io/v1"
      kind: NetworkAttachmentDefinition
      metadata:
        name: istio-cni
      EOF
      
      cat <<EOF | oc -n netapp-monitoring create -f -
      apiVersion: "k8s.cni.cncf.io/v1"
      kind: NetworkAttachmentDefinition
      metadata:
        name: istio-cni
      EOF
重要说明 请勿删除Astra Control Center运算符(例如、 kubectl delete -f astra_control_center_operator_deploy.yaml)、以避免删除Pod。

下载并提取Astra控制中心

从以下位置之一下载Astra Control Center映像:

  • Astra控制服务映像注册表:如果您不对Astra控制中心映像使用本地注册表,或者如果您更喜欢使用此方法从NetApp 支持站点 下载捆绑包,请使用此选项。

  • Astra:如果将本地注册表与NetApp 支持站点 控制中心映像一起使用,请使用此选项。

Astra Control图像注册表
  1. 登录Asta Control Service。

  2. 在信息板上,选择*Deploy a self-managed instance* of Asta Control*。

  3. 按照说明登录到Astra Control映像注册表、提取Astra Control Center安装映像并提取该映像。

NetApp 支持站点
  1. 下载包含Astra Control Center的软件包 (astra-control-center-[version].tar.gz) "Astra Control Center下载页面"

  2. (建议但可选)下载Astra控制中心的证书和签名包 (astra-control-center-certs-[version].tar.gz)以验证分发包的签名。

    tar -vxzf astra-control-center-certs-[version].tar.gz
    openssl dgst -sha256 -verify certs/AstraControlCenter-public.pub -signature certs/astra-control-center-[version].tar.gz.sig astra-control-center-[version].tar.gz

    此时将显示输出 Verified OK 验证成功后。

  3. 从Astra Control Center捆绑包中提取映像:

    tar -vxzf astra-control-center-[version].tar.gz

如果使用本地注册表、请完成其他步骤

如果您计划将Astra控制中心捆绑包推送到本地注册表、则需要使用NetApp Astra kubect命令行插件。

安装NetApp Astra kubectl插件

要安装最新的NetApp Astra kubecl命令行插件、请完成以下步骤。

开始之前

NetApp可为不同的CPU架构和操作系统提供插件二进制文件。在执行此任务之前、您需要了解您的CPU和操作系统。

如果您已从先前安装中安装了插件、 "确保您已安装最新版本" 在完成这些步骤之前。

步骤
  1. 列出可用的NetApp Astra kubectl插件二进制文件、并记下操作系统和CPU架构所需的文件名称:

    备注 kubectl插件库是tar包的一部分、并会解压缩到文件夹中 kubectl-astra
    ls kubectl-astra/
  2. 将正确的二进制文件移动到当前路径并重命名为 kubectl-astra

    cp kubectl-astra/<binary-name> /usr/local/bin/kubectl-astra

将映像添加到注册表

  1. 如果您计划将Astra Control Center捆绑包推送到本地注册表、请为容器引擎完成相应的步骤顺序:

    Docker
    1. 更改为tarball的根目录。您应看到 acc.manifest.bundle.yaml 文件和以下目录:

      acc/
      kubectl-astra/
      acc.manifest.bundle.yaml

    2. 将Astra Control Center映像目录中的软件包映像推送到本地注册表。在运行之前、请进行以下替换 push-images 命令:

      • 将<BUNDLE_FILE> 替换为Astra Control捆绑包文件的名称 (acc.manifest.bundle.yaml)。

      • 将<MY_FULL_REGISTRY_PATH> 替换为Docker存储库的URL;例如 "https://<docker-registry>"

      • 将<MY_REGISTRY_USER> 替换为用户名。

      • 将<MY_REGISTRY_TOKEN> 替换为注册表的授权令牌。

        kubectl astra packages push-images -m <BUNDLE_FILE> -r <MY_FULL_REGISTRY_PATH> -u <MY_REGISTRY_USER> -p <MY_REGISTRY_TOKEN>
    Podman
    1. 更改为tarball的根目录。您应看到此文件和目录:

      acc/
      kubectl-astra/
      acc.manifest.bundle.yaml

    2. 登录到注册表:

      podman login <YOUR_REGISTRY>
    3. 准备并运行以下针对您使用的Podman版本自定义的脚本之一。将<MY_FULL_REGISTRY_PATH> 替换为包含任何子目录的存储库的URL。

      Podman 4
      export REGISTRY=<MY_FULL_REGISTRY_PATH>
      export PACKAGENAME=acc
      export PACKAGEVERSION=24.02.0-69
      export DIRECTORYNAME=acc
      for astraImageFile in $(ls ${DIRECTORYNAME}/images/*.tar) ; do
      astraImage=$(podman load --input ${astraImageFile} | sed 's/Loaded image: //')
      astraImageNoPath=$(echo ${astraImage} | sed 's:.*/::')
      podman tag ${astraImageNoPath} ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
      podman push ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
      done
      Podman 3
      export REGISTRY=<MY_FULL_REGISTRY_PATH>
      export PACKAGENAME=acc
      export PACKAGEVERSION=24.02.0-69
      export DIRECTORYNAME=acc
      for astraImageFile in $(ls ${DIRECTORYNAME}/images/*.tar) ; do
      astraImage=$(podman load --input ${astraImageFile} | sed 's/Loaded image: //')
      astraImageNoPath=$(echo ${astraImage} | sed 's:.*/::')
      podman tag ${astraImageNoPath} ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
      podman push ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
      done
      备注 根据您的注册表配置、此脚本创建的映像路径应类似于以下内容:
      https://downloads.example.io/docker-astra-control-prod/netapp/astra/acc/24.02.0-69/image:version
  2. 更改目录:

    cd manifests

找到操作员安装页面

  1. 要访问操作员安装页面,请完成以下过程之一:

    Red Hat OpenShift Web控制台
    1. 登录到 OpenShift 容器平台 UI 。

    2. 从侧面菜单中,选择 * 运算符 > OperatorHub * 。

      备注 使用此运算符只能升级到Astra Control Center的当前版本。
    3. 搜索 netapp-acc 并选择NetApp Asta控制中心操作员。

      此图显示了OpenShift容器平台UI中的Astra Control Center安装页面

    Red Hat 生态系统目录
    1. 选择 NetApp Astra 控制中心 "运算符"

    2. 选择*部署和使用*。

      此图显示了可从RedHat生态系统目录获取的Astra Control Center概述页面

安装操作员

  1. 完成 * 安装操作员 * 页面并安装操作员:

    备注 操作员将在所有集群命名空间中可用。
    1. 选择运算符命名空间或 netapp-ac-operator namespace will be created automatically as part of the operator install.

    2. 选择手动或自动批准策略。

      备注 建议手动批准。每个集群只能运行一个操作员实例。
    3. 选择 * 安装 * 。

      备注 如果您选择了手动批准策略、系统将提示您批准此操作员的手动安装计划。
  2. 从控制台中,转到 OperatorHub 菜单并确认操作员已成功安装。

安装 Astra 控制中心

  1. 从Astra Control Center操作员的* Astra Control Center*选项卡中的控制台中、选择*创建AstraControlCenter*。此图显示了已选择Astra控制中心选项卡的Astra控制中心操作员页面

  2. 填写 Create AstraControlCenter Form 字段:

    1. 保留或调整 Astra 控制中心名称。

    2. 为Astra控制中心添加标签。

    3. 启用或禁用自动支持。建议保留自动支持功能。

    4. 输入Astra控制中心FQDN或IP地址。请止步 http://https:// 在地址字段中。

    5. 输入Asta Control Center版本、例如24.02.0-69。

    6. 输入帐户名称,电子邮件地址和管理员姓氏。

    7. 选择的卷回收策略 RetainRecycle`或 `Delete。默认值为 Retain

    8. 选择安装的比例大小。

      备注 默认情况下、Astra将使用高可用性(HA) scaleSizeMedium,可在HA中部署大多数服务,并部署多个副本以实现冗余。使用 scaleSize 作为 `Small`A作用 是减少所有服务的副本数量,但主要服务除外,以减少使用量。
    9. 选择入口类型:

      • 通用 (ingressType: "Generic")(默认)

        如果您正在使用另一个入口控制器或希望使用您自己的入口控制器、请使用此选项。部署Astra Control Center后、您需要配置 "入口控制器" 以使用URL公开Astra控制中心。

      • * AccTraefik* (ingressType: "AccTraefik"

        如果您不希望配置入口控制器、请使用此选项。这将部署Astra控制中心 traefik 网关作为Kubernetes的"loadbalancer"类型服务。

      Astra控制中心使用类型为"loadbalancer"的服务 (svc/traefik )、并要求为其分配可访问的外部IP地址。如果您的环境允许使用负载平衡器、但您尚未配置一个平衡器、则可以使用MetalLB或其他外部服务负载平衡器为该服务分配外部IP地址。在内部 DNS 服务器配置中,您应将为 Astra 控制中心选择的 DNS 名称指向负载平衡的 IP 地址。

    备注 有关"负载平衡器"和传入服务类型的详细信息、请参见 "要求"
    1. 在*Image Registry*中,除非配置了本地注册表,否则请使用默认值。对于本地注册表、请将此值替换为您在上一步中推送映像的本地映像注册表路径。请止步 http://https:// 在地址字段中。

    2. 如果您使用的映像注册表需要身份验证、请输入映像密钥。

      备注 如果您使用的注册表需要身份验证、 在集群上创建密钥
    3. 输入管理员的名字。

    4. 配置资源扩展。

    5. 提供默认存储类。

      备注 如果配置了默认存储类、请确保它是唯一具有默认标注的存储类。
    6. 定义 CRD 处理首选项。

  3. 选择YAML视图以查看您选择的设置。

  4. 选择 Create

创建注册表密钥

如果您使用的注册表需要进行身份验证、请在OpenShift集群上创建一个密钥、然后在中输入该密钥名称 Create AstraControlCenter 表单字段。

  1. 为Astra控制中心操作员创建命名空间:

    oc create ns [netapp-acc-operator or custom namespace]
  2. 在此命名空间中创建密钥:

    oc create secret docker-registry astra-registry-cred -n [netapp-acc-operator or custom namespace] --docker-server=[your_registry_path] --docker username=[username] --docker-password=[token]
    备注 Astra Control仅支持Docker注册表机密。
  3. 完成中的其余字段 创建AstraControlCenter表单字段

下一步行动

完成 "剩余步骤" 要验证是否已成功安装Astra控制中心、请设置一个入口控制器(可选)并登录到UI。此外、您还需要执行 "设置任务" 完成安装后。