Citrix Virtual Apps and Desktops

Red Hat OpenShift 虚拟化环境

Citrix® 通过 Citrix 管理的 OpenShift 插件管理您的 Red Hat OpenShift 工作负载。借助此插件,您可以创建到 OpenShift 群集的主机连接和主机单元、创建目录以及对目录中的计算机进行电源管理。

支持以下配置:

  • 网络选项:
    • Linux Bridge 和 OVS Bridge:可用于群集网络。
  • 存储选项:
    • 本地存储:支持节点上的持久性存储。
    • NetApp 存储:支持企业级外部存储集成。

关键步骤

  • 设置您的 Red Hat OpenShift 环境。
  • 创建到 OpenShift 群集的连接和资源。
  • 创建计算机目录。
  • 创建交付组。

设置您的 Red Hat OpenShift 环境

  1. 创建 OpenShift 群集并获取群集 API 地址:在 OpenShift 控制台中,设置群集后,导航到 Home > Overview > Details,然后获取群集 API 地址。
  2. 使用 OpenShift 命令行界面 (CLI) (oc 命令) 创建服务帐户并获取服务帐户令牌:服务帐户令牌是与服务帐户关联的身份验证凭据。服务帐户用于使用 OpenShift 对 OpenShift 插件进行身份验证。每个服务帐户都与一个命名空间关联。
  3. 配置服务帐户的权限:一个服务帐户可以有多个角色,每个角色都包含定义 OpenShift 插件可以在哪些资源上执行哪些操作的权限。这些角色通过角色绑定进行绑定,角色绑定有两种类型:

    1. 群集范围的角色绑定:用于从 OpenShift 接收事件。
    2. 命名空间绑定的角色绑定:用于管理特定命名空间中的 VM。
  4. 创建命名空间(项目):OpenShift 中的命名空间是一个隔离环境,它将 VM 或网络等资源分组,从而实现更好的组织和访问控制。命名空间是 Kubernetes 术语,而项目是 OpenShift 术语。从 OpenShift 插件的角度来看,它们是相同的。部署 VM 需要命名空间。使用 OpenShift 控制台或 OpenShift Container Platform CLI 创建命名空间。
  5. 在目标命名空间下创建一个网络附件定义:网络附件定义指定在 OpenShift 中运行的 VM 的网络配置。在 Networking > NetworkAttachmentDefinitions 下,您可以查看每个命名空间的网络附件定义。
  6. 配置存储类:存储类定义 VM 存储的分配方式。在 Storage > StorageClass 下,您可以配置和查看存储提供程序列表。

创建服务帐户

  1. 下载并解压缩 oc 命令行工具。
  2. 使用您的登录 ID 访问 OpenShift 控制台。
  3. 单击您的用户配置文件,然后单击复制登录命令
  4. 单击显示令牌并复制令牌。
  5. 使用 oc 命令行运行登录命令。示例:

    .\oc.exe login --token=<token> --server=<server address>
    <!--NeedCopy-->
    
  6. 创建服务帐户。

    • 如果要在默认命名空间下创建服务帐户,请运行:

       .\oc.exe create sa <service account name>
       <!--NeedCopy-->
      
    • 如果要在您自己的命名空间下创建服务帐户,请运行:

       .\oc.exe create sa <service account name> -n mynamespace
       <!--NeedCopy-->
      
  7. 为机密创建 YAML 文件。示例:

    • 如果在默认命名空间下创建服务帐户:

       apiVersion: v1
       kind: Secret
       metadata:
       name: service account name
       annotations:
       kubernetes.io/service-account.name: service account name
       type: kubernetes.io/service-account-token
       <!--NeedCopy-->
      
    • 如果在您自己的命名空间下创建服务帐户:

      apiVersion: v1
      kind: Secret
      metadata:
      name: service account name
      namespace: mynamespace
      annotations:
      kubernetes.io/service-account.name: service account name
       type: kubernetes.io/service-account-token
       <!--NeedCopy-->
      
  8. 应用 YAML。

    .\oc.exe apply -f <yamlFile.yaml>
    <!--NeedCopy-->
    

    注意:

    oc 描述了用于获取令牌的机密。该令牌用作密码。

为服务帐户创建角色和角色绑定

借助群集范围的角色绑定,服务帐户拥有读取群集中所有 VM 事件的权限,从而允许 OpenShift 插件为所有 VM 相关事件维护单个事件观察程序。 借助命名空间角色绑定,服务帐户拥有管理目标命名空间中 VM 的权限。 您可以使用脚本创建角色并将其绑定到服务帐户。请参阅 https://github.com/citrix/citrix-mcs-sdk-samples/tree/main/OpenShift/Hosting%20Connection/Role/

后续步骤

更多信息

Red Hat OpenShift 虚拟化环境