Ansible自动化运维
ansible入门
人保雷佳音
91后,硕士研究生,阿里云云计算高级架构师。
展开
-
十一、ansible-playbook变量传递以及基本的循环
剧本中有时task之间需要相互传递变量,比如以下例子第二个task需要第一个task运行后的结果。 新建register.yum 通过register注册---- hosts: all gather_facts: no tasks: - name: register vars shell: hostname register: info - name: display vars debug: msg="{{info...原创 2020-09-01 09:30:04 · 924 阅读 · 0 评论 -
十、ansible-playbook-roles角色及变量的引用
新建入口文件site.yml在/root/ansible_test/tomcat中新建site.yml---- hosts: all gather_facts: no roles: - tomcat ##在下面可建立多个平行任务新建tomcat任务目录及文件 新建/root/ansible_test/tomcat/roles/tomcat目录,对应上面的入口文件,在该目录下新建tasts目录,并在其中新建main.yml文件。---- name: inst..原创 2020-08-31 09:51:50 · 1658 阅读 · 0 评论 -
九、ansibleplaybook简单示例
本篇演示通过playbook远程安装tomcat创建yml文件---- hosts: all tasks: - name: Install tomcat yum: name=tomcat state=latest - name: template tomcat.conf template: src=c.txt dest=/etc/tomcat/c.txt owner=root group=root mode=0644 notify:..原创 2020-08-28 10:24:29 · 172 阅读 · 0 评论 -
八、ansible常用模块(三)cron、yum、get_url
cron模块 客户端每次重启后,将c.txt文件中内容复制到d.txt中ansible all -m cron -a "name='a job for reboot' special_time=reboot job='cat /root/ansible_test/c.txt>/root/ansible_test/d.txt'"客户端中重启前重启后,新创建了d.txt文件 yum模块 客户端下载tomcat之前 在主机端给客户端下载tomcat...原创 2020-08-27 16:25:23 · 174 阅读 · 0 评论 -
七、ansible常用模块(二)file、copy、service
file模块1、给目标端创建软链接ansible all -m file -a "src=/root/ansible_test/a.txt dest=/root/ansible_test/link/a.txt state=link"2、删除软链接、删除文件ansible all -m file -a "path=/root/ansible_test/link/a.txt state=absent" ansible all -m file -a "path=/root/ans原创 2020-08-27 15:25:24 · 224 阅读 · 0 评论 -
六、ansible常用模块(一)ping、setup
根据官方的分类,将模块分类为:云模块、命令模块、数据库模块、文件模块、资产模块、消息模块、监控模块、网络模块、通知模块、包管理模块、源码控制模块、系统模块、单元模块、web设置模块、windows模块。ping模块 测试主机是否是通的,不涉及参数,切换到/tmp/ansible_tmp目录ansible -i hosts1 all -m pingsetup模块 该模块主要用户获取主机信息,setup模块下经常使用的一个参数是filter。ansible -...原创 2020-08-26 14:19:26 · 872 阅读 · 0 评论 -
五、组件inventory动态获取主机清单
除了静态获取主机清单外,ansible也支持自定义文件动态获取主机清单。修改ansible.cfg文件 指定inventory文件的路径inventory =/tmp/ansible_tmp/inventory.py新建inventory.py文件 输入主机信息#!/usr/bin/env python# coding=utf-8import jsonhost1ip = ['192.168.1.6']host2ip = ['192.168.1.3...原创 2020-08-26 10:44:26 · 233 阅读 · 0 评论 -
四、组件inventory主机清单静态
ansible除了在默认的hosts文件中指定主机清单,也可以在自定义的文件中指定主机清单。利用文件指定主机清单 在自定义文件中输入以下代码,建立两个测试组主机[ceshi]192.168.1.3[ceshi:vars]ansible_ssh_pass='root'[ceshi1]192.168.1.6 对hosts文件执行以下操作,由于ceshi1组没有设置密码,所以访问不到ansible -i hosts all -a 'date'利用文件夹进行...原创 2020-08-26 09:11:19 · 137 阅读 · 0 评论 -
三、Ansible免密码登录其他主机
在Ansible的server主机登录其他主机时,可以通过密钥的形式免去每次输入其他主机密码的麻烦。生成密钥 在server端,通过执行如下语句生成密钥ssh-keygen -t rsa 密钥保存在/root/.ssh/id_rsa文件中拷贝密钥到被监控主机ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.1.6测试ssh 192.168.1.6 ansible al...原创 2020-08-25 14:46:47 · 423 阅读 · 0 评论 -
二、Ansible的七个命令
序号 命令 用途 1 ansible 基础命令 2 ansible-doc 用于查看模块信息 3 ansible-galaxy 下载第三方扩展模块 4 ansible-lint 对playbook的语法进行检查的一个工具 5 ansible-playbook 通过读取playbook文件后,执行相应的动作 6 ansible-pull 7 ansible-vault 用来加密...原创 2020-08-25 10:48:58 · 154 阅读 · 0 评论 -
一、Ansible安装
主机准备主机类型 主机ip ansible server 192.168.1.5 client1 192.168.1.6 client2 192.168.1.7 检测python版本python -V配置yum源cd /etc/yum.repos.dvim yum.repo[ansible]name=ansiblebaseurl=https://mirror.tuna.tsinghua.edu.cn/epel/7/x8...原创 2020-08-25 08:59:15 · 97 阅读 · 0 评论