1.2. 控制和执行平面
自动化网格利用唯一的节点类型来创建 control 和 execution plane。在设计自动化网格拓扑前,了解更多有关控制和执行平面及其节点类型的信息。
1.2.1. Control plane(控制平面)
control plane 由混合和控制节点组成。除了项目更新和管理作业外,控制平面中的实例还运行持久的自动化控制器服务,如 Web 服务器和任务分配程序。
-
混合节点 - 这是 control plane 节点的默认节点类型,负责项目更新、管理作业和
ansible-runner
任务操作等自动化控制器运行时功能。混合节点也用于自动化执行。 - 控制节点 - 控制节点运行项目和清单更新和系统作业,但不能控制常规作业。这些节点上禁用了执行功能。
1.2.2. 执行平面
执行平面由代表 control plane 执行自动化且没有控制功能执行的节点组成。hop 节点用于通信。执行平面中的节点仅运行用户空间作业,且可能在地理上将延迟较高的节点与控制平面分隔开。
-
执行节点 - 执行节点在
ansible-runner
下以podman
隔离运行作业。此节点类型与隔离的节点类似。这是 execution plane 节点的默认节点类型。 - hop 节点 与跳过主机类似,hop 节点会将流量路由到其他执行节点。hop 节点无法执行自动化。
1.2.3. Peers
对等关系定义节点到节点的连接。您可以在 [automationcontroller]
和 [execution_nodes]
组内定义对等点,或者使用 [automationcontroller:vars]
或 [execution_nodes:vars]
组
1.2.4. 定义自动化网格节点类型
本节中的示例演示了如何为清单文件中的主机设置节点类型。
您可以为 control plane 或 execution plane 清单组中的单节点设置 node_type
。要为整个节点组定义节点类型,请在组的 vars
小节中设置 node_type
。
-
control plane
[automationcontroller]
组中的node_type
允许的值是hybrid
(默认)和控制
。 -
[execution_nodes]
组中的node_type
允许的值是execution
(default)和hop
。
混合节点
以下清单由 control plane 中的单个混合节点组成:
[automationcontroller] control-plane-1.example.com
控制节点
以下清单由 control plane 中的单个控制节点组成:
[automationcontroller] control-plane-1.example.com node_type=control
如果您在 control plane 节点的 vars
小节中将 node_type
设置为 control
,则 control plane 中的所有节点都是控制节点。
[automationcontroller] control-plane-1.example.com [automationcontroller:vars] node_type=control
执行节点
以下片段在 execution plane 中定义一个执行节点:
[execution_nodes] execution-plane-1.example.com
hop 节点
以下片段在 execution plane 中定义一个跃点节点和一个执行节点。为每个单独节点设置 node_type
变量。
[execution_nodes] execution-plane-1.example.com node_type=hop execution-plane-2.example.com
如果要在组级别上设置 node-type
,您必须为执行节点和跃点节点创建单独的组。
[execution_nodes] execution-plane-1.example.com execution-plane-2.example.com [execution_group] execution-plane-2.example.com [execution_group:vars] node_type=execution [hop_group] execution-plane-1.example.com [hop_group:vars] node_type=hop
对等连接
使用 peers=
主机变量创建节点对节点连接。以下示例将 control-plane-1.example.com
连接到 execution-node-1.example.com
,execution-node-1.example.com
连接到 execution-node-2.example.com
:
[automationcontroller] control-plane-1.example.com peers=execution-node-1.example.com [automationcontroller:vars] node_type=control [execution_nodes] execution-node-1.example.com peers=execution-node-2.example.com execution-node-2.example.com
其他资源
- 有关如何实施网格节点的更多示例,请参阅本指南中的自动化网格拓扑示例。