📜  Ansible-剧本

📅  最后修改于: 2020-11-02 03:12:53             🧑  作者: Mango


在本章中,我们将学习Ansible中的Playbook。

剧本是用于编写Ansible代码的文件。剧本以YAML格式编写。 YAML代表另一种标记语言。剧本是Ansible的核心功能之一,它告诉Ansible执行什么。它们就像Ansible的待办事项列表,其中包含任务列表。

剧本包含用户希望在特定计算机上执行的步骤。剧本按顺序运行。剧本是Ansible所有用例的基础。

剧本结构

每个剧本是其中一个或多个剧本的集合。剧本是使用剧本来组织的。一本剧本中可以有多个剧本。

戏剧的函数是针对特定主机映射定义的一组指令。

YAML是一种严格的类型化语言;因此,在编写YAML文件时需要格外小心。 YAML编辑器不同,但我们更喜欢使用记事本++之类的简单编辑器。只需打开notepad ++,然后复制并粘贴以下yaml,然后将语言更改为YAML(语言→YAML)即可。

YAML以—开头(3个连字符)

创建剧本

让我们从编写示例YAML文件开始。我们将遍历以yaml文件编写的每个部分。

--- 
   name: install and configure DB
   hosts: testServer
   become: yes

   vars: 
      oracle_db_port_value : 1521
   
   tasks:
   -name: Install the Oracle DB
      yum: 
    
   -name: Ensure the installed service is enabled and running
   service:
      name: 

上面是一个示例Playbook,我们尝试涵盖该Playbook的基本语法。将以上内容另存为文件test.yml 。 YAML语法需要遵循正确的缩进,并且在编写语法时需要稍微小心一点。

不同的YAML标签

现在让我们浏览不同的YAML标签。不同的标签如下所述-

名称

该标签指定Ansible剧本的名称。就像这本剧本一样。任何逻辑名称都可以赋予该剧本。

主机

此标记指定我们要针对其运行任务的主机或主机组的列表。主机字段/标签是必填项。它告诉Ansible在哪些主机上运行列出的任务。这些任务可以在同一台计算机上或在远程计算机上运行。一个人可以在多台机器上运行任务,因此hosts标签也可以具有一组主机条目。

瓦斯

Vars标签可让您定义可在剧本中使用的变量。用法类似于任何编程语言中的变量。

任务

所有剧本都应包含任务或要执行的任务列表。任务是一个人需要执行的动作的列表。任务字段包含任务的名称。这用作用户的帮助文本。它不是强制性的,但在调试剧本时很有用。每个任务在内部链接到一段称为模块的代码。应该执行的模块,以及要执行的模块所需的参数。