2.3. 定义自动化网格节点类型


要扩展作业容量,请创建一个可以添加的独立 执行节点,与自动化控制器部署一起运行。这些执行节点不是自动化控制器 Kubernetes 集群的一部分。控制节点在集群连接中运行,并通过 Receptor 向执行节点提交工作。这些执行节点在自动化控制器中注册为类型 执行 实例,这意味着它们仅用于运行作业,而不是分配工作或作为控制节点处理 Web 请求。

跃点节点 可以添加到自动化控制器和独立执行节点的 control plane 之间。这些跃点节点不是 Kubernetes 集群的一部分,并在自动化控制器中注册,作为类型跃点( hop )的实例,这意味着它们只会处理不同或更严格的网络中的入站和出站流量。

以下流程演示了如何为主机设置节点类型。

流程

  1. 在导航面板中,选择 Administration Instances
  2. Instances 列表页面中,单击 AddCreate new Instance 窗口将打开。

    创建新实例

    实例需要以下属性:

    • 主机名 :(必需)为您的实例输入完全限定域名(公共 DNS)或 IP 地址。此字段等同于基于安装程序部署 的主机名

      注意

      如果实例使用无法从控制集群解析的私有 DNS,DNS 查找路由会失败,并且生成的 SSL 证书无效。改为使用 IP 地址。

    • 可选: 描述 :输入实例的描述。
    • Instance State :此字段已自动填充,表示它正在安装,且无法修改。
    • 侦听器 端口 :此端口用于 receptor 侦听进入的连接。您可以将端口设置为适合您的配置的端口。此字段等同于 API 中的 listener_port。默认值为 27199,但您可以设置自己的端口值。
    • 实例类型 :只能创建 executionhop 节点。基于 Operator 的部署不支持控制或混合节点。

      选项:

      • 启用实例 :选中此框,使它可用于在执行节点上运行。
      • 选中 Managed by Policy 复选框,以启用策略来确定如何分配实例。
      • 从控制节点框中选中 Peers,以启用控制节点自动到此实例的对等点。对于连接到自动化控制器的节点,请选中 Peers from Control nodes 复选框,以在该节点和自动化控制器之间创建直接通信链接。对于所有其他节点:

        • 如果您没有添加跃点节点,请确保 检查来自 Control 的 Peers
        • 如果要添加跃点节点,请确保没有 检查来自 Control 的 Peers
        • 对于与跃点节点通信的执行节点,请不要选中此框。
      • 要将执行节点与跃点节点对等,点 Peers 字段旁边的 Search 图标。

        此时会显示 Select Peers 窗口。

        将执行节点与跃点节点对等。

  3. 点击 Save

    创建实例详情
  4. 要查看更新拓扑的图形表示,请参阅 Topology viewer

    注意

    从任何可通过 SSH 访问新创建的实例的计算机执行以下步骤。

  5. Install Bundle 旁边的 Download 图标下载包含这个新实例的 tar 文件,以及将创建的节点安装到自动化网格中所需的文件。

    安装实例

    安装捆绑包包含 TLS 证书和密钥、证书颁发机构和正确的 Receptor 配置文件。

    receptor-ca.crt
    work-public-key.pem
    receptor.key
    install_receptor.yml
    inventory.yml
    group_vars/all.yml
    requirements.yml
  6. 从您下载的位置中提取下载的 tar.gz Install Bundle。为确保这些文件位于远程机器上的正确位置,安装捆绑包包含 install_receptor.yml playbook。playbook 需要 Receptor 集合。运行以下命令以下载集合:

    ansible-galaxy collection install -r requirements.yml
  7. 在运行 ansible-playbook 命令前,请编辑 inventory.yml 文件中的以下字段:

    all:
      hosts:
        remote-execution:
          ansible_host: 10.0.0.6
          ansible_user: <username> # user provided
      ansible_ssh_private_key_file: ~/.ssh/<id_rsa>
    • 确保 ansible_host 设置为节点的 IP 地址或 DNS。
    • ansible_user 设置为运行安装的用户名。
    • ansible_ssh_private_key_file 设置为包含用于连接实例的私钥的文件名。
    • inventory.yml 文件的内容充当模板,其中包含在网格拓扑中安装和配置 receptor 节点期间应用的角色的变量。您可以修改一些其他字段,或者在高级场景中完全替换该文件。如需更多信息,请参阅 角色变量
  8. 对于使用私有 DNS 的节点,请将以下行添加到 inventory.yml 中:

     ansible_ssh_common_args: <your ssh ProxyCommand setting>

    这指示 install-receptor.yml playbook 使用 proxy 命令通过本地 DNS 节点连接到私有节点。

  9. 配置属性后,单击 Save。所创建的实例的 Details 页面将打开。
  10. 保存文件以继续。
  11. 运行安装捆绑包的系统来设置远程节点并运行 ansible-playbook 需要安装 ansible.receptor 集合:

    ansible-galaxy collection install ansible.receptor

    or

    ansible-galaxy install -r requirements.yml
    • requirements.yml 文件安装 receptor 集合依赖项会持续检索指定的 receptor 版本。另外,它会检索将来可能需要的任何其他集合依赖项。
    • 在运行 playbook 的所有节点上安装 receptor 集合,否则会出现错误。
  12. 如果定义了 receptor_listener_port,机器还需要一个可用的开放端口来建立入站 TCP 连接,例如 27199。运行以下命令,为 receptor 通讯打开端口 27199 :

    sudo firewall-cmd --permanent --zone=public --add-port=27199/tcp
    注意

    可能是有些服务器没有侦听 receptor 端口(默认值为 27199)

    假设您有一个带有节点 A、B、C、D 的 Control plane

    RPM 安装程序使用最低特权方法在 control plane 节点之间创建高度连接的对等点,并仅在需要它的那些节点上打开 tcp 侦听器。所有 receptor 连接都是双向的,因此在创建连接后,receptor 可以在两个方向通信。

    以下是三个控制器节点的对等设置示例:

    Controller 节点 A -→ Controller 节点 B

    Controller 节点 A -→ Controller 节点 C

    Controller 节点 B -→ Controller 节点 C

    您可以通过设置强制监听程序

    receptor_listener=True

    但是,连接 Controller B -→ A 可能会被拒绝,因为连接已存在。

    这意味着没有连接到 Controller A,因为 Controller A 会创建与其他节点的连接,以下命令不会在 Controller A 上返回任何内容:

    [root@controller1 ~]# ss -ntlp | grep 27199 [root@controller1 ~]#

  13. 在您要更新自动化网格的机器上运行以下 playbook:

    ansible-playbook -i inventory.yml install_receptor.yml

    此 playbook 运行后,您的自动化网格会被配置。

    实例列表视图

要从网格中删除实例,请参阅 删除实例

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部