Ansible2.0

本文详细介绍了如何使用Ansible进行自动化配置管理,包括YAML语法的应用、任务执行、变量使用、文件导入及权限设置等,展示了从配置文件到实际应用的全过程,涉及Web服务器、数据库的配置和安全控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

列表中的所有成员都是以相同的缩进级别开头的行,并以(破折号和空格)开头:"- "
A list of tasty fruits

  • Apple
  • Orange
  • Strawberry
  • Mango

字典以简单的形式表示(冒号后面必须有一个空格):key: value
An employee record
martin:
name: Martin D’vloper
job: Developer
skill: Elite

可能存在更复杂的数据结构,例如字典列表,值是列表的字典或两者的混合:
Employee records

  • martin:
    name: Martin D’vloper
    job: Developer
    skills:
    • python
    • perl
    • pascal
  • tabitha:
    name: Tabitha Bitumen
    job: Developer
    skills:
    • lisp
    • fortran
    • erlang

vim ~/.vimrc ##将yaml文件中的tab转换为两个空格
在这里插入图片描述
编写palybook.yml
cd /mnt/ansible
在这里插入图片描述
进行语法检测
在这里插入图片描述
列出主机
在这里插入图片描述
列出所有任务
在这里插入图片描述
开始执行任务
在这里插入图片描述
将playbook.yml文件中hosts: test改为hosts: all,然后重新测试
在这里插入图片描述
当执行多个任务时,一个任务出现错误后,就会跳过。

编写playbook.yml
在这里插入图片描述
在这里插入图片描述
然后执行
在这里插入图片描述
vim playbook.yml
在这里插入图片描述
在这里插入图片描述
然后执行
ansible-playbook playbook.yml
此时在server3中就安装好数据库并且创建了用户
在这里插入图片描述
当重复执行后会报错
在这里插入图片描述
此时在登陆时给予用户密码即可
在这里插入图片描述
再次执行就不会报错(-t表示只执行某个模块,使用时要给模块定义名字[tags:xxx])
在这里插入图片描述

分块调用

在这里插入图片描述
vim playbook.yml
在这里插入图片描述
vim playbook.yml
在这里插入图片描述
然后执行
ansible-playbook playbook.yml
当输出结果不想看到一堆代码时,可自定义
vim playbook.yml在这里插入图片描述
此时就可以在输出界面看到自定义的test ok
在这里插入图片描述
vim webserver.yml
在这里插入图片描述

vim database.yml
在这里插入图片描述
在这里插入图片描述
将webserver文件导入playbook文件
在这里插入图片描述
然后执行
ansible-playbook playbook.yml
此时文件就导入成功

将playook复制为task并编辑task
在这里插入图片描述
将task中的任务导入webserver中
在这里插入图片描述
此时可以看到task的任务已经导入到了webserver中
在这里插入图片描述

变量

scp 172.25.254.2:/etc/httpd/conf/httpd.conf .
编辑文件将端口修改为8080
vim webserver.yml
在这里插入图片描述
然后执行
ansible-playbook webserver.yml
在server2中查看端口,看到端口为8080
netstat -antlp

引入变量
cp httpd.conf httpd.conf.j2
vim httpd.conf.j2
在这里插入图片描述
vim webserver.yml
在这里插入图片描述
然后执行
ansible-playbook webserver.yml
再次将端口修改为8000运行后会报错,原因是server2中selinux
在这里插入图片描述
修改server2中selinux状态,将其改为警告模式
在这里插入图片描述
然后再次执行
ansible-playbook webserver.yml

也可以在命令行中直接传参
ansible-playbook -e “http_port=80” webserver.yml

也可以在hosts文件中添加
在这里插入图片描述
此时要注释webserver.yml文件中的
在这里插入图片描述

vim hosts
在这里插入图片描述
vim webserver.yml
在这里插入图片描述
然后执行
ansible-playbook webserver.yml

添加端口变量
vim webserver.yml
在这里插入图片描述
然后执行
ansible-playbook webserver.yml

加入task任务
将webserver.yml中注释打开
编写task.yml
在这里插入图片描述
然后执行
ansible-playbook webserver.yml

加入判断和认证
在server2中,cd /var/www/html
vim .htaccess
在这里插入图片描述
htpasswd -c /etc/httpd/conf/htpasswd wxh ##生成用户
在这里插入图片描述
注:再次生成用户时不能加-c,如果加了会覆盖之前的
vim /etc/httpd/conf/httpd.conf
在这里插入图片描述
systemctl restart httpd
在网页中访问172.25.254.2:8080
在这里插入图片描述
输入用户名和密码即可访问

将上述动作部署为自动化
在server2中
scp .htaccess 172.25.254.1:/mnt/ansible/
scp /etc/httpd/conf/htpasswd 172.25.254.1:/mnt/ansible
在server1中
mkdir apache
mv htpasswd .htaccess apache/
mv httpd.conf.j2 webserver.yml httpd.conf index.html apache/
mv task.yml apache/
此时调用命令需要跟路径
如:ansible-playbook apache/webserver.yml

vim apache/webserver.yml
在这里插入图片描述
在这里插入图片描述
然后执行
ansible-playbook apache/webserver.yml

vim apache/task.yml
在这里插入图片描述
vim apache/webserver.yml
在这里插入图片描述
ansible-playbook --start-at-task “Check webserver” apache/webserver.yml ##从Check webserver开始执行

交互式输入
vim apache/task.yml
在这里插入图片描述
ansible-playbook apache/task.yml ##执行后就可以得到交互式界面
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值