云计算day28

一、ansible模块
script模块

root@localhost \~\]# vim test000.sh #!/bin/bash mkdir /tmp/three touch /tmp/three/test echo 'i am echo,at mttt' \> /tmp/three/test echo 'well done' \[root@localhost \~\]# source test000.sh well done \[root@localhost \~\]# ansible group02 -m script -a './test000.sh' copy模块 \[root@localhost \~\]# ansible s -m copy -a 'src=./mysql_master.sh dest=\~' 使用command模块下载 nfs-utils rpcbind \[root@localhost \~\]# ansible s -m command -a 'yum -y install nfs-utils' \[root@localhost \~\]# ansible s -m command -a 'yum -y install rpcbind' \[root@localhost \~\]# vim /etc/exports /static \*(ro,sync) 在被控制的主机上添加static目录,并创建test文件 \[root@localhost \~\]# ansible s -m file -a 'path=/static state=directory' \[root@localhost \~\]# ansible s -m file -a 'path=/static/test state=touch \[root@localhost \~\]# ansible s -m copy -a 'src=/etc/exports dest=/etc/exports' command模块 \[root@localhost \~\]# ansible s -m command -a 'systemctl start nfs' \[root@localhost \~\]# ansible s -m command -a 'systemctl enable nfs' service模块 \[root@localhost \~\]# ansible s -m service -a 'name=rpcbind state=started enabled=yes' \[root@localhost \~\]# yum -y install nfs-utils \[root@localhost \~\]# mkdir /nfs \[root@localhost \~\]# mount -t nfs 192.168.8.157:/static /nfs/ \[root@localhost \~\]# ls /nfs/ test 二、playbook playbook(剧本):是ansible用于配置,部署,和管理被控节点的剧本。用于ansible操作的编排。 一般使用ymal格式 playbook 剧本是保存在控制机的yml文件 YMAL格式 ■ 以.yaml或xyml结尾 ■ 文件的第一行以" --- "开始,表明YMAL文件的开始(可选的) ■ 以#号开头为注释 ■ 列表中的所有成员都开始于相同的缩进级别,并且使用一个"-"作为开头(一个横杠和一个空格) ■ 一个字典是由一个简单的 键:值 的形式组成(这个冒号后面必须是一个空格) ■ 注意:写这种文件可以使用tab键和空格 Playbook常⻅语法 hosts: ⽤于指定要执⾏任务的主机,其可以是⼀个或多个由冒号分 隔主机组. remote_user: ⽤于指定远程主机上的执行任务的⽤户. tasks:任务列表,按顺序执行任务. ■ 如果一个host执行task失败,整个tasks都会回滚,修正playbook中的错误,然后重新执行即可. --- - hosts: 组名/别名/ip/域名 remote_user: root tasks: - name: 任务说明 模块: key0=value0 service: name=vsftpd state=started anabled=yes - name: 修改配置文件 command: sed... notify: - ancdef handler: - name: abcdef service name=vsftpd stste=restared ... 三、playbook编排vsftpd 1、安装 \[root@localhost \~\]# vim test001.yml --- - hosts: s #使用tab键对齐 指定组 remote_user: root # tasks: - name: 安装vsftpd yum: name=vsftpd state=latest \[root@localhost \~\]# ansible-playbook ./test001.yml 2、卸载 \[root@localhost \~\]# vim test001.yml --- - hosts: s remote_user: root tasks: - name: 卸载vsftp yum: name=vsftpd state=absent - name: 安装vsftpd yum: name=vsftpd state=latest \[root@localhost \~\]# ansible-playbook ./test001.yml 3、启动服务 \[root@localhost \~\]# vim test001.yml --- - hosts: s remote_user: root tasks: - name: 卸载vsftp yum: name=vsftpd state=absent - name: 安装vsftpd yum: name=vsftpd state=latest - name: 启动服务 service: name=vsftpd state=started e nabled=yes \[root@localhost \~\]# ansible-playbook ./test001.yml 4、修改配置文件设置不允许匿名访问并重启 handlers:类似task,但需要使用notify通知调用。 ■ 不管有多少个通知者进行了notify,等到play中的所有task执行完成之后,handlers也只会被执行一次. ■ handlers最佳的应用场景是用来重启服务,或者触发系统重启操作.除此以外很少用到了. \[root@localhost \~\]# yum -y install lftp \[root@localhost \~\]# lftp 192.168.8.157 lftp 192.168.8.157:\~\> ls drwxr-xr-x 2 0 0 6 Jun 09 2021 pub \[root@s0 \~\]# sed -n '/\^anonymous_enable=YES/s/YES/NO/g' /etc/vsftpd/vsftpd.conf \[root@localhost \~\]# vim test001.yml --- - hosts: s remote_user: root tasks: - name: 卸载vsftp yum: name=vsftpd state=absent - name: 安装vsftpd yum: name=vsftpd state=latest - name: 启动服务 service: name=vsftpd state=started enabled=yes - name: 修改配置文件 command: sed -i '/\^anonymous_enable=YES/s/YES/NO/g' /etc/vsftpd/vsftpd.conf notify: #调用 - abcdefg handlers: - name: abcdefg service: name=vsftpd state=res tarted \[root@localhost \~\]# ansible-playbook ./test001.yml \[root@localhost \~\]# lftp 192.168.8.157 lftp 192.168.8.157:\~\> exit \[root@localhost \~\]# lftp 192.168.8.157 lftp 192.168.8.157:\~\> ls 中断

相关推荐
云老大TG:@yunlaoda3603 小时前
开通华为云国际站代理商的UCS服务需要哪些资质?
大数据·数据库·华为云·云计算
TG:@yunlaoda360 云老大4 小时前
如何评估华为云国际站代理商跨境合规要求?
大数据·数据库·华为云·云计算
@HNUSTer4 小时前
基于 GEE 的 Landsat 9 数据实现 11 种植被指数批量计算与导出
云计算·数据集·遥感大数据·gee·云平台·植被指数·landsat 9
TG:@yunlaoda360 云老大4 小时前
如何了解华为云国际站代理商的GACS主要有什么作用呢?
大数据·华为云·云计算
咕噜企业分发小米5 小时前
阿里云基因测序数据分析平台有哪些成功案例?
阿里云·数据分析·云计算
Zhou-XueLin5 小时前
虚拟环境(云主机)下使用多显示器环境连接RDP远程桌面提示协议错误0x112f需禁用WDDM驱动
windows·云计算
wanhengidc5 小时前
巨 椰 云手机 性能稳定
运维·服务器·arm开发·智能手机·云计算
翼龙云_cloud5 小时前
阿里云渠道商:阿里云GPU怎么搭建部署个人作品集博客?
运维·服务器·阿里云·云计算
Elastic 中国社区官方博客5 小时前
Elastic 在 AWS re:Invent:总结一年在 agentic AI 创新中的合作
大数据·人工智能·elasticsearch·搜索引擎·云计算·全文检索·aws
TG:@yunlaoda360 云老大6 小时前
华为云国际站代理商的CCE主要有什么作用呢?
大数据·华为云·云计算·产品运营