![](https://img-blog.csdnimg.cn/20210617094237486.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
ansible
运维工具ansible
weshell_
花有重开日,人无再少年。
展开
-
ansible加密汇总
文件加解密ansible-vault加密ansible-vault encrypt file解密ansible-vault decrypt file查看加密文件ansible-vault view file读取密钥文件–vault-password-fileansible all -m ping --vault-password-file passwdfile原创 2021-08-04 18:33:34 · 66702 阅读 · 0 评论 -
cron任务不生效问题
问题背景之前写了个使用ansible收集服务器负载和磁盘空间的脚本,想着用crontab每天定时跑一下。但是发现无论怎么改,重启都没有生效,但是手动跑脚本就可以,后来就不了了之了。问题原因今天有时间查了下,发现有其他人也有类似的问题,在/var/spool/mail/root可以看到失败原因/var/spool/mail/root记录了一些系统信息,包括了crontab失败的信息之前也是因为提示太频繁把这个推送给关了vim /var/spool/mail/root解决现在问题原创 2021-06-16 09:57:37 · 80870 阅读 · 0 评论 -
ansible实战——synchronize模块的使用
synchronize模块介绍synchronize模块⽤于实现rsync的简单版常⽤功能,它⽆法实现完整版的rsync,毕竟rsync功能太多太细致。如果要使⽤rsync,还是应该使⽤command或shell模块来调⽤rsync命令。常用命令:ansible-doc -s synchronize- name: A wrapper around rsync to make common tasks in your playbooks quick and easy. action: sync原创 2021-05-27 12:20:07 · 91309 阅读 · 0 评论 -
使用ansible同步模块synchronize的坑
问题背景使用ansible的synchronize模块来同步大文件夹,并且使用了–cvs-exclude选项来排除版本控制文件ansible host -m synchronize -a "src=dir1 dest=dir2 compress=yes rsync_opts=--cvs-exclude" -vvvv问题现象目录下的.so文件没有被同步过去原因分析查看rsync的官方文档,可以看到–cvs-exclude和-C选项是有忽略so文件的解决方案指定忽略svn目录原创 2021-05-21 10:37:20 · 91441 阅读 · 0 评论 -
ubuntu更新ansible
因为jenkins安装在docker,环境为Ubuntu 18.04.5 LTS 之前直接使用apt-get installansible。安装的ansible版本为2.5太低了,这个版本使用synchronize模块有bug,需要服务器之间免密互信。而我又不想把所有公钥放到jenkins服务器上,网上查找资料发现高版本的ansible修复了此问题卸载旧版本的ansibleapt-get remove ansible安装pipapt-get install python-pip安装新版.原创 2021-04-30 15:27:56 · 97567 阅读 · 2 评论 -
使用ansible批量给服务器添加环境变量
因为服务器比较多,一个个添加比较麻烦,故写个shell脚本批量添加测试代码#!/bin/bashset -xwan=(wan1 wan2 ...)lan=(lan1 lan2 ...)domains=yxn=0 for i in ${wan[@]}do ansible $i -m shell -a 'echo \# sid >> ~/.bashrc' ansible $i -m shell -a 'echo "export domain='${domains[原创 2021-04-28 10:00:52 · 97235 阅读 · 0 评论 -
ansible踩坑——环境变量问题
问题现象使用ansible启动远程服务器的node服务,环境变量未被加载本地测试打印环境变量为空定位原因1、环境变量问题首先ansible使用的是ssh的方式下发命令,为no login shell的方式登陆在ubuntu的配置文件~/.bashrc中有以下注释第一行表明~/.bashrc这个文件会被no login shell加载第二个位置表明如果不是交互式运行则直接退出了,因此环境变量要写在这个return之前ansible命令格式可以看到使用双引号""和单引号''的结果原创 2021-04-25 18:55:45 · 98366 阅读 · 1 评论 -
ansible+jenkins部署新服务器
方案1、上传安装需要的配置文件和docker-compose到git2、jenkins以应用为维度创建job3、构建开始时git pull,jenkins调用shell脚本为每个新的服务器创建ansible inventory,将该服务器的ip和passwd写进去;4、根据不同的应用,jenkins将不同的配置文件拷贝到远端服务器...原创 2021-04-14 18:58:59 · 96666 阅读 · 0 评论 -
ansible安装
1、yum直接安装安装ansible依赖yum -y install epel-release安装ansibleyum -y install ansible2、安装后的目录安装目录如下(yum安装): 配置文件目录:/etc/ansible/ 执行文件目录:/usr/bin/ Lib库依赖目录:/usr/lib/pythonX.X/site-packages/ansible/ Help文档目录:/usr/share/doc/ansible-X.X.X/ Man文档目录:/原创 2021-04-10 10:41:00 · 96867 阅读 · 0 评论 -
shell+ansible汇总远程主机开销(hosts文件加解密)
ansible hosts 格式name1 ansible_ssh_host=*.*.*.* ansible_ssh_user=root ansible_ssh_pass=* ansible_ssh_port=22name2 ansible_ssh_host=*.*.*.* ansible_ssh_user=root ansible_ssh_pass=* ansible_ssh_port=22name1 :别名,可以写服务器名称ansible_ssh_user:登陆账号,默认值在ansible.原创 2021-03-19 15:57:15 · 96759 阅读 · 0 评论 -
ansible主机连通性测试报错
报错提示[root@yx01 site-packages]# ansible all -m ping[WARNING]: provided hosts list is empty, only localhost is available. Note that the implicitlocalhost does not match 'all'/usr/lib/python2.7/site-packages/requests/__init__.py:91: RequestsDependencyWarn原创 2021-03-04 17:43:22 · 102504 阅读 · 1 评论