1、python3中ansible安装模块

在Python3中安装模块需要带上python版本、需要安装模块的版本,默认是安装最新的版本

python3 -m pip install Django==1.10.7

python3 -m pip install ansible

2、ansible切换目录并且创建文件

1.1、使用shell模块操作

[root@master ~]# ansible k8s -m shell -a "chdir=/rubbish touch test.conf"

1.2、使用command操作

[root@master ~]# ansible k8s -m command -a "chdir=/rubbish touch test.conf"

3、replace模块(查找替换)

ansible master -m replace -a "path=/etc/systemd/system/etcd.service regexp='master=' replace='$ECTD_CLUSTER' backup=yes"

path参数 :必须参数,指定要操作的文件

regexp参数 : 必须参数,指定一个 python 正则表达式,文件中与正则匹配的字符串将会被替换

replace参数 : 指定最终要替换成的字符串

backup参数 :是否在修改文件之前对文件进行备份,最好设置为yes

4、追加一行:

ansible master -m lineinfile -a "dest=/roota.sh line='--listen'"

5、带有反斜杠无法追加

下面报错

 ansible master -m lineinfile -a "dest=/roota.sh line='--listen-admin \'"

6、copy模块使用

拷贝文件到所有节点并且备份

time ansible test2 -m copy -a "src=/script/test2_hostname.py dest=/root/ backup=yes"

拷贝文件到所有节点,强制覆盖

ansible k8s -m copy -a 'src=/k8s/profile/kube-controller-manager.service.template.py  dest=/k8s/profile/ force=yes'

src 源目录以/结尾,拷贝了目录下的所有内容

time ansible k8s -m copy -a 'src=/root/ssl/ dest=/etc/kubernetes/cert/

源目录未以/结尾,直接将src目录本身拷贝到目的地

time ansible k8s -m copy -a 'src=/root/ssl dest=/etc/kubernetes/cert/

7、script模块使用

直接执行脚本

time ansible tes2 -m script -a "python test2_hostname.py"

8、shell模块使用

直接执行linux命令

time ansible tes2 -m shell -a "ls /home"

9、file模块使用

注意:使用file模块创建文件夹,父目录和子目录都会创建出来

创建目录并授权方式一
time ansible test2 -m file -a "path=/rubbish/test/ state=directory mode=0755" 创建目录并授权方式二 time ansible test2 -m file -a "dest=/rubbish/test/ state=directory mode=0755" 删除文件
time ansible k8s -m file -a 'path=/root/.kube/config state=absent'
修改文件的所有者 说明:不是修改目录下所有的文件,不能用/var/log/kubernetes/* 不管用,只能用shown ansible test4 -m file -a 'path=/var/log/kubernetes/log.file owner=k8s group=k8s mode=0777' 修改文件的权限方式一 ansible test4 -m file -a 'path=/var/log/kubernetes/log.file state=touch mode="u=rw,g=r.o=r"' 说明:state=touch,如果文件存在不会再次创建 改变文件权限方式二 如果目录下有文件可以用下面来给目录下所有文件加权限,如果目录下面没有文件,执行下面会报错 ansible k8s -m shell -a 'chmod +x /opt/k8s/bin/*' 修改文件夹的权限 ansible test4 -m file -a 'path=/var/log/kubernetes/ state=directory mode="u=rw,g=r.o=r"' 说明:state取值可以是directory、file、touch、link、hard、absent 10、service模块 重启服务
time ansible k8s -m service -a 'name=nginx state=restarted' 停止服务
time ansible k8s -m service -a 'name=nginx state=stopped' 加载服务
time ansible k8s -m service -a 'name=nginx state=reloaded' 查看服务状态
time ansible k8s -m service -a 'name=nginx state=status' 设置开机自启 time ansible k8s -m service -a 'name=nginx enabled=yes' 11、unarchive使用 解压安装包到指点目录下 time ansible test1 -m unarchive -a 'src=/server/software/k8s/flannel-v0.10.0-linux-amd64.tar.gz dest=/rubbish/' 解压安装包到所有主机上 注意:不需要把安装包提前拷贝到其他节点, time ansible test1 -m unarchive -a 'src=/server/software/k8s/flannel-v0.10.0-linux-amd64.tar.gz dest=/rubbish/' 13、ansible使用sudo ansible k8s -m shell -a 'chmod +x /opt/k8s/bin/*' -become 参考: https://www.jianshu.com/p/3a67ba27ba20
https://www.cnblogs.com/xiexiaoxiao/p/7147920.html
https://blog.csdn.net/bruce_6/article/details/79043529

ansible常用操作的更多相关文章

  1. ansible常用模块用法

    ansible常用模块用法 2015-07-21 10:25 24458人阅读 评论(1) 收藏 举报  分类: Linux(44)   ansible 版权声明:本文为博主原创文章,未经博主允许不得 ...

  2. Ansible常用模块介绍及使用(week5_day1_part2)--技术流ken

    Ansible模块 在上一篇博客<Ansible基础认识及安装使用详解(一)--技术流ken>中以及简单的介绍了一下ansible的模块.ansible是基于模块工作的,所以我们必须掌握几 ...

  3. Ansible常用模块命令

    Ansible常用模块命令 一.安装ansible yum install epel-release yum install ansible 二.配置文件配置 vi /etc/ansible/ansi ...

  4. Ansible常用功能

    Ansible 是近几年十分流行的DevOps工具架构什么的我就不在这里赘述了,网上一找一堆 这里写点我在ansible常用功能 1.命令串 #copy文件 #ansible host文件中的主机组 ...

  5. Docker镜像与容器的常用操作

    Docker镜像加速配置:Docker镜像常用操作:Dcoker容器常用操作. 镜像加速器 国内从 Docker Hub 拉取镜像有时会遇到困难,此时可以配置镜像加速器.国内很多云服务商都提供了国内加 ...

  6. Ansible常用模块介绍及使用(2)

    Ansible模块 在上一篇博客<Ansible基础认识及安装使用详解(一)–技术流ken>中以及简单的介绍了一下ansible的模块.ansible是基于模块工作的,所以我们必须掌握几个 ...

  7. centos ansible常用命令

    ansible在日常运维中经常使用,特别是批量执行多台服务器的时候,有效减小重复的操作成本,以下从安装到使用仅讲解工作中常用的几种方式,模块很多功能很强大,但不做全面讨论. ansible安装 在ce ...

  8. 【三】用Markdown写blog的常用操作

    本系列有五篇:分别是 [一]Ubuntu14.04+Jekyll+Github Pages搭建静态博客:主要是安装方面 [二]jekyll 的使用 :主要是jekyll的配置 [三]Markdown+ ...

  9. php模拟数据库常用操作效果

    test.php <?php header("Content-type:text/html;charset='utf8'"); error_reporting(E_ALL); ...

随机推荐

  1. Python数据驱动DDT的应用

    在开始之前,我们先来明确一下什么是数据驱动,在百度百科中数据驱动的解释是:数据驱动测试,即黑盒测试(Black-box Testing),又称为功能测试,是把测试对象看作一个黑盒子.利用黑盒测试法进行 ...

  2. 快读代码level.2

    long long read() { long long ans=0; char last=' ',ch=getchar();//last用来存正负号,并消去那些换行符,空格 ') { last=ch ...

  3. Gym - 102040B Counting Inversion (数位dp)

    题意:求[a,b]区间内的数字中正序对的个数. 具体思路参考: https://blog.csdn.net/weixin_43135318/article/details/88061396 https ...

  4. feign请求远程接口时报Caused by: java.net.UnknownHostException

    报错全文如下 feign.RetryableException: host10.local executing POST http://TIBMAS2-WEBAPI/tibmas2-webapi/ap ...

  5. MAC下安装Homebrew和GDB,并解决无法调试问题

    Homebrew官网 http://brew.sh/index_zh-cn.html Homebrew是神马 linux系统有个让人蛋疼的通病,软件包依赖,好在当前主流的两大发行版本都自带了解决方案, ...

  6. Session中的方法

    Session 管理一个数据库的任务单元,即管理数据库中的增删改查操作,提交事务. 方法CRUD:save(),delete(),load(),get(),update(),saveOrUpdate( ...

  7. web前端_js

    在HTML中可以将JavaScript/JS的代码写在head中,被script标签所包裹,当浏览器解释HTML时,遇到style标签时,按照CSS规则解释,遇到Script标签时,按照JavaScr ...

  8. docker部署war+tomcat8

    注意:本文只是将jenkins.war作为一个war包来操作,实际上要使用jenkins还要同时安装git.maven等. 1.购买阿里云服务器(Ubuntu 18.04), 设置密码,root+pa ...

  9. java支持断点续传文件上传和下载组件

    java两台服务器之间,大文件上传(续传),采用了Socket通信机制以及JavaIO流两个技术点,具体思路如下: 实现思路: 1.服:利用ServerSocket搭建服务器,开启相应端口,进行长连接 ...

  10. 报错:没有与参数列表匹配的构造函数 "CFileDialog::CFileDialog" 实例

    如果是在解决方案管理器窗口内,右击你的项目“项目”,然后选“属性”(最后一项),再点“配置属性”,是个“+”号,把它展开,然后选“常规”选项卡,倒数第三项“字符集”,选择“使用多字节字符集”.再编译应 ...