写在playbook之前
经过前2个模块的锻炼,我相信只要会使用shell的人都发现ansible强大之处了。
这里要引入真正强大的地方–playbook。让你摆脱执行shell的困境。
Playbook定义
Playbook的定义,用中文我很难准确的说明它的意思。还是引用官方的吧:
Playbooks are Ansible’s configuration, deployment, and orchestration language. They can describe a policy you want your remote systems to enforce, or a set of steps in a general IT process.
大概意思就是说,playbook是集ansible的配置管理、部署动作执行、编排能力于一身的语言文本。它用来编排并执行你想远程节点执行的常规步骤、流程。很拗口,大概大家明白意思就行了。
另外有个简单点的说法,也是来自官方:
If Ansible modules are the tools in your workshop, playbooks are your design plans.
意思就是ansible模块是你工作的伙伴,那么Playbook就是你工作计划。 
一个负责执行,一个负责计划,Nice。
一个简单的playbook
一个简单的playbook应该如下:
---    <---playbook的开头
- hosts: webservers   <--- 声明这个Playbook运行在哪个节点群组
  vars:   <--- 声明 变量
    http_port: 80  <--- 变量http_port 值为80
    max_clients: 200
  remote_user: root  <---声明远程执行的用户为root
  tasks:  <---声明远程执行的任务
  - name: ensure apache is at the latest version <---ansible name模块,用于当文字说明
    yum: pkg=httpd state=latest <---ansible yum模块,以后会讲到
  - name: write the apache config file
    template: src=/srv/httpd.j2 dest=/etc/httpd.conf <---ansible template模块,以后会讲到
    notify:   <---ansible handler用法以后会讲到
    - restart apache
  - name: ensure apache is running (and enable it at boot)
    service: name=httpd state=started enabled=yes <---ansible service模块,以后会讲到
  handlers: <---ansible handler用法以后会讲到
    - name: restart apache
      service: name=httpd state=restarted
上面这个playbook干了什么事,讲解下task部分,可能熟悉Linux的人也能猜个78成: 
1. 使用yum安装了最新版apache 
2. 将httpd.conf配置文件从ansible执行节点的/srv/httpd.j2覆盖到了/etc/httpd.conf 
3. 调用Handler重启apache 
4. 调用service确认apache已经重启过并且设置为开机就启动apache 
5. 定义handler
上面这么多事,如果用传统的shell来执行会很麻烦,有多麻烦,玩过shell的都明白。 
能明白点它事做啥的了吧?
它的格式是YAML语法,可以下来自己看看,很简单的东西。
再次声明
从本章后的新模块,将采取playbook中的调用方法做介绍。不再用ansible来做案例了。
                  
                  
                  
                  
                            
                            
本文详细介绍了Ansible Playbook的概念、定义及其在自动化部署和编排过程中的应用。通过一个简单的Playbook示例,解释了如何使用Playbook来执行远程节点上的常规步骤和流程,包括安装软件、配置文件操作、服务管理等任务,并强调了Playbook相对于传统shell脚本的优势。
          
      
          
                
                
                
                
              
                
                
                
                
                
              
                
                
              
            
                  
					1110
					
被折叠的  条评论
		 为什么被折叠?
		 
		 
		
    
  
    
  
            


            