(三)自动化运维架构实战之初识Ansible-Playbook
知识点:
Ansible Playbook的介绍
Playbook使用入门
Playbook实战
一、什么是Ansible Playbook
是一门编程语言,因为具备编程语言的定义变量顺序结构,选择结构,循环结构,是对Adhoc指令的编排。
功能列表:
- 声明配置
- 编排复杂任务,如批量安装MySQL,Tomcat等
- 控制任务的执行
二、Playbook使用入门
2.1 第一个Hello World程序
vim test.yml
--- - hosts: host2 #指定机器 remote_user: root #指定远程登录用户 become: true #其他用户切换到root tasks:#任务 - name: Hello World shell: ls /root
运行
[root@ansible ~]# ansible-playbook test.yml
2.2 数据结构
2.2.1变量定义 字母、数字以及下划线组成 ,始终应该以字母开头
--- - hosts: host2 #指定机器 remote_user: root #指定远程登录用户 vars: #定义变量 com: /root tasks:#任务 - name: Hello World shell: ls {{ com }}
注:开头不能以 { 开始,需要加 “ ”,
shell: "{{ com }}"
2.2.2 其他
三、Playbook实战
3.1 安装Python Flask 开发环境,具备数据库和缓存的功能。
vim install_python.yml
--- - hosts: host1 remote_user: root become: true #其他用户切换到root tasks: - name: install python for centos yum: #模块 name: "{{ item }}" state: installed with_items: - python-devel - python-setuptools when: ansible_distribution=='CentOS' #指定centos机器 - name: install pip shell: easy_install pip - name: pip install flask and redis pip: name: "{{ item }}" with_items: - flask - redis
执行
ansible-playbook install_python.yml
执行结果