Ansible脚本— playbook剧本(进阶篇)

文章目录

  • 一、Templates模板 模块
    • 1.1 简介
    • 1.2 用法示例
      • 通过模板配置节点设备设置
  • 二、tags标签模块
    • 2.1 简介
    • 2.2 用法示例
      • 2.2.1 单标签任务
      • 2.2.2 多标签任务
      • 8.2.3 always定义
  • 三、roles(角色)模块
    • 3.1 简介
    • 3.2 变量目录类型
    • 3.3 roles内各目录含义解释
    • 3.4 配置安装LAMP在节点设备上
      • 3.4.1 配置流程
        • 3.4.2 创建递归在模块中创建main.yml文件
        • 3.4.3 编写httpd模块
        • 3.4.4 编写mysql模块
        • 3.4.5 编写php模块
        • 3.4.6 编写roles模块

一、Templates模板 模块

1.1 简介

Jinja是基于Python的模板引擎。template类是Jinja的另一个重要组件,可以看作一个编译过的模块文件,用来生产目标文本,传递Python的变量给模板去替换模板中的标记。

1.2 用法示例

通过模板配置节点设备设置

在node1,2上查看

[root@node1 ~]# rpm -q httpd
httpd-2.4.6-67.el7.centos.x86_64
[root@node1 ~]# vi /etc/httpd/conf/httpd.conf 
修改添加:
Listen 80          主机变量
ServerName www.example.com:80   域名
MaxClients 300     最大连接数

在master上

1.拷贝文件到管理端当前目录下

[root@master ~]# scp [email protected]:/etc/httpd/conf/httpd.conf ./
[root@master ~]# mkdir demo	#创建目录,方便管理
[root@master ~]# mv httpd.conf demo/	#移动
[root@master ~]# cd demo/

[root@master demo]# vim httpd.conf	#编辑配置文件
修改添加变量
Listen {
  {http_port}}        监听端口,ip
ServerName {
  {server_name}}  域名
MaxClients {
  {access_num}}   最大连接数

[root@master demo]# mv httpd.conf httpd.conf.j2	将文件转变为模板

Ansible脚本— playbook剧本(进阶篇)_第1张图片
jinja2 是基于python的模板引擎,功能比较类似于PHP的smarty,J2ee的Freemark和velocity。它能完全支持unicode,并具有集成的沙盒执行环境,应用广泛。jinja2使用BSD授权

2.编辑配置文件

[root@master ~]# v

你可能感兴趣的:(ansible,playbook)