第 30 章 术语表


临时(Ad Hoc)

临时命令 使用 Ansible 执行快速命令,使用 /usr/bin/ansible,而不是编配语言,即 /usr/bin/ansible-playbook。一个临时命令的示例可能会在您的基础架构中重新引导 50 个机器。您可以编写 Playbook 来完成任何操作。playbook 也可以将许多其他操作组合在一起。

回调插件(Callback Plugin)

是指用户编写的代码,这些代码可以从 Ansible 截获结果并对其执行操作。GitHub 项目中的一些示例执行自定义日志记录、发送电子邮件或播放声音效果。

控制组群

也称为 'cgroups',控制组是 Linux 内核中的一个功能,使资源可以被分组并分配以运行进程。除了将资源分配给进程外,cgroups 还可以报告 cgroup 内运行的所有进程使用资源。

检查模式

使用- check 选项运行 Ansible,该选项不会在远程系统上进行任何更改,而是仅输出命令在没有此标志的情况下运行时可能发生的更改。这与其它系统中所谓的"dry run"模式类似。但是,这不会考虑意外的命令故障或级联效果(在其它系统中有类似模式)。使用 Check 模式了解可能发生的情况,但它并不是一个好的暂存环境的替代品。

容器组

容器组是实例组的一种类型,用于指定在运行任务的 Kubernetes 或 OpenShift 集群中置备 pod 的配置。这些 pod 按需置备,且仅在 playbook 运行期间存在。

凭证

身份验证详情,供自动化控制器用于针对机器启动作业、与清单源同步以及从版本控制系统中导入项目内容。如需更多信息,请参阅 [Credentials]。

凭证插件

Python 代码,包含外部凭证类型、其元数据字段以及与 secret 管理系统交互所需代码的定义。

分布式作业

由作业模板、清单和分片大小组成的作业。执行后,分布式作业会将每个清单划分为多个"分片大小"块,然后用于运行较小的作业分片。

外部凭证类型

用于与 secret 管理系统进行身份验证的受管凭证类型。

事实

事实是发现与远程节点相关的内容。虽然它们可以像变量一样在 playbook 和模板中使用,但事实是推断出来的,而不是设置。通过在远程节点上执行内部设置模块,在运行 play 时自动发现事实。您不必显式调用 setup 模块:只需要运行。如果不需要,可以禁用它来节省时间。为方便从其他配置管理系统切换的用户,事实模块也会从 ohaifacter 工具中提取事实(如果分别安装了事实库)和 Puppet。

Forks

Ansible 和自动化控制器并行与远程节点通信。可以在创建或编辑作业模板的过程中通过传递- forks 或编辑配置文件中的默认设置,以多种方式设置并行级别。默认值为非常保守的五个 fork,但如果您有大量 RAM,您可以将它设置为更高的值,如 50,以增加并行性。

Group

Ansible 中的一组主机,可以作为集合进行寻址,其中很多主机可以存在于单个清单中。

组变量

group_vars/ 文件是存储在具有清单文件的目录中的文件,具有以每个组命名的可选文件名。这是放置为给定组提供的变量(特别是复杂的数据结构)的便捷位置,因此这些变量不必嵌入到清单文件或 playbook 中。

处理程序(handler)

处理程序类似于 Ansible playbook 中的常规任务(请参阅 任务),但只有任务包含"notify"指令并且指示它更改了内容时才运行。例如,如果更改了配置文件,则引用配置文件模板操作的任务可能会通知服务重启处理程序。这意味着,只有在需要重启服务时,才能退回服务。处理程序可用于服务重启以外的内容,但服务重启是最常见的用途。

主机

由自动化控制器管理的系统,可能包含物理、虚拟或基于云的服务器,或其他设备(通常是操作系统实例)。主机包含在清单中。有时被称为"节点"。

主机指定符

Ansible 中的每个 Play 将一系列任务(定义系统的角色、目的或顺序)映射到一组系统。每个 play 中的这个"hosts:"指令通常称为主机指定符。它可以选择一个系统、多个系统、一个或多个组,或者一个组中的主机,并且明确不在另一个组中。

实例组

包含用于在集群环境中使用的实例的组。实例组提供根据策略对实例进行分组的功能。

清单(Inventory)

可对其启动任务的主机集合。

清单脚本

查找主机、组成员资格以及来自外部资源的变量信息的程序,无论是 SQL 数据库、CMDB 解决方案还是 LDAP。这个概念由 Puppet (其中称为"外部节点分类器")调整,并以类似的方式工作。

清单源

有关要合并到当前清单组中的云或其他脚本的信息,从而自动填充组、主机以及有关这些组和主机的变量。

作业

自动化控制器启动的许多后台任务之一,这通常是实例化作业模板来启动 Ansible playbook。其他类型的作业包括清单导入、从源控制进行项目同步或管理清理操作。

作业详情

运行特定作业的历史记录,包括其输出和成功/失败状态。

作业分片

请参阅 分布式作业

任务模板

Ansible playbook 以及启动它所需的一组参数的组合。如需更多信息,请参阅 作业模板

JSON

JSON 是基于文本的格式,用于根据 JavaScript 对象语法表示结构化数据。Ansible 和自动化控制器使用 JSON 从远程模块返回数据。这可让使用任何语言编写的模块,而不只是 Python 编写的模块。

Mesh(网格)

描述由节点组成的网络。节点之间的通信通过 TCP、UDP 或 Unix 套接字等协议在传输层建立。

另请参阅 节点

元数据

身份验证后,用于在外部系统中查找 secret 的信息。用户在将外部凭证链接到目标凭证字段时提供此信息。

节点

节点对应于实例数据库模型或 /api/v2/instances/ 端点中的条目,是参与集群或网格的机器。统一作业 API 报告 controller_nodeexecution_node 字段。执行节点是作业运行的位置,以及作业和服务器功能之间的控制器节点接口。

节点类型描述

控制

运行持久服务的节点,并将作业委托给混合节点和执行节点。

混合

运行持久服务和执行作业的节点。

hop

仅用于跨网格转发。

执行

用于运行从控制节点交付的作业的节点(从用户的 Ansible 自动化提交的作业)

通知模板

通知类型的实例(电子邮件、Slack 、Webhook 等),其名称、描述和定义的配置。

通知

通知(如 Email、Slack 或 Webhook)在通知模板中定义名称、描述和配置。例如,当作业失败时,将使用通知模板定义的配置发送通知。

通知

任务注册更改事件并通知处理器任务在 play 结束时需要运行另一个操作。如果处理程序由多个任务通知,它仍然仅运行一次。处理程序按照列出的顺序运行,而不是按照通知的顺序运行。

机构(Organization)

用户、团队、项目和清单的逻辑集合。机构是对象层次结构中的最高级别。

Organization Administrator(机构管理员)

具有修改机构成员资格和设置权限的用户,包括在该机构中创建新用户和项目。机构管理员也可以向该机构内的其他用户授予权限。

权限

分配给用户和团队的权限集,它提供读取、修改和管理项目、清单和其他对象的能力。

Play

一个 play 在由主机指定符选择的一组主机(通常由组选择,但有时由主机名 glob 选择)与那些主机上运行的任务之间的映射最小,以定义这些系统执行的角色。playbook 是 play 的列表。playbook 中可以有一个或多个 play。

Playbook

一个 Ansible playbook。有关更多信息,请参阅 Ansible playbook

policy

策略指定实例组的行为方式以及任务的执行方式。

项目

自动化控制器中代表 Ansible playbook 的逻辑集合。

角色

角色是 Ansible 和自动化控制器中的机构单元。将角色分配给一组主机(或一组组或主机模式等)意味着它们实施特定的行为。角色可以包含应用变量值、任务和处理程序,或者这些因素的组合。由于与角色关联的文件结构,角色成为可重新分发的单元,允许您在 playbook 或其他用户之间共享行为。

Secret 管理系统

用于安全存储并控制对令牌、密码、证书、加密密钥和其他敏感数据的访问的服务器或服务。

调度

作业应自动运行的日期和时间日历。

分片作业

请参阅 分布式作业

源凭证

链接到目标凭证字段的外部凭证。

Sudo

Ansible 不需要 root 登录,因为它是无守护进程的,因此不需要 root 级别守护进程(可能是敏感环境中的安全问题)。Ansible 可以登录并执行嵌套在 sudo 命令中的许多操作,并可处理无密码和基于密码的 sudo。在以 sudo 模式运行时,可以使用 Ansible 复制模板获取 模块来实现一些通常无法使用 sudo 的操作(如 scp 文件传输)。

超级用户

具有编辑系统中任何对象权限的服务器的管理员,无论它是否与任何机构相关联。超级用户可以创建机构和其他超级用户。

问卷调查

在作业启动时由作业模板询问的问题,可在作业模板上配置。

目标凭证

一个非外部的凭证,它带有一个输入字段,用来链接到外部凭证。

Team

具有关联用户、项目、凭证和权限的机构子部门。团队提供了一种方式来实现基于角色的访问控制方案,并跨机构委派职责。

用户

具有相关权限和凭证的操作器。

Webhook

Webhook 支持应用程序之间的通信和信息共享。它们用于响应推送到 SCM 的提交以及启动作业模板或工作流模板。

工作流作业模板

由任何作业模板组合、项目同步和清单同步组成的集合,将它们链接在一起,以便以单个单元的形式执行。

YAML

人类可读的语言,通常用于编写配置文件。Ansible 和自动化控制器使用 YAML 定义 playbook 配置语言和变量文件。YAML 具有最小的语法,非常干净,用户可以轻松地。它是配置文件和人类的数据格式,但也是机器可读。YAML 在动态语言社区中很常见,格式具有可用于多种语言序列化的库。示例包括 Python、Perl 或 Ruby。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.