ansible--ansible基础
配置文件
ansible的配置文件只有一个,即ansible.cfg,它可以存在于多个地方,ansible读取配置文件的顺序依次是当前命令执行目录
->用户家目录下的.ansible.cfg
->/etc/ansible.cfg
,先找到哪个就使用哪个。
我这里使用docker作为测试工具,使用冻仁提供的镜像作为线上服务器使用,具体配置可以看链接内的介绍,这里贴出简单操作步骤
// 拉取镜像
docker pull chusiang/ansible-managed-node:centos-7
// 建立并执行容器
docker run --name server1 -d -P chusiang/ansible-managed-node:centos-7
// 查看容易绑定的端口,之后有用
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0a59028c1842 chusiang/ansible-managed-node:centos-7 "/usr/sbin/sshd -D" 2 hours ago Up 2 hours 0.0.0.0:32773->22/tcp server1
添加配置文件
首先建立一个新文件夹,然后创建ansible.cfg文件
mkdir ansible
cd ansible
vi ansible.cfg
// 输入内容
[defaults]
host_key_checking = False // 首次连接是否需要检查key认证
remote_user = docker // 此处为镜像配置好的,其他地方一般不需要指定
inventory = hosts // 存储目标主机分组列表,此处写hosts会从当前目录的hosts文件开始查找
ansible inventory配置
inventory是管理主机信息的配置文件
定义主机和组
inventory可以用一下方式配置
- 直接为ip地址
192.168.0.2
- ip + 端口号
192.168.0.2:22
- 分组,中括号内的内容标识一个分组的开始,气候的主机均属于该组成员,空行后的主机仍属于该组
// 此处例子为实际使用例子
vi hosts
// 输入
server1 ansible_ssh_host=127.0.0.1 ansible_ssh_port=32773 ansible_ssh_pass=docker
[local]
server1
// 如果有多台主机可以这么设置,[1:10]表示1~10之间的所有数字(字母同理)
server[1:10]
ansible正则
基本用法
ansible <pattern> -m <module_name> -a <arguments>
一些基本模式
All(全量)匹配
匹配所有主机,all
或*
号功能相同,如下例
// 检测所有主机存活情况
ansible all -m ping
ansible "*" -m ping
逻辑或(or)匹配
如果希望同时对多台主机或多个组执行,相互之间用“:”分隔。
ansible "server1:server2" -m ping
逻辑非(!)匹配
主要针对多重条件的匹配规则
webservers:!phoenix
逻辑与(&)匹配
也主要针对多重条件的匹配规则
webservers:&staging
模糊匹配
使用*通配符表示一个或多个字符
server*
域切割
可以直接使用python语法的切割
正则表达式
使用"~"开始标识正则匹配
参考书目:《Ansible权威指南》
ansible--ansible基础的更多相关文章
- ansible学习基础知识和模块(一)
基础知识补充: 常用自动化运维工具 Ansible:使用python来开发的,无需设置Agentless(代理),一般管理几百台.与ssh的方式也不一样,ssh是基于c/s模式(客户端+服务器)来使用 ...
- Ansible playbook基础组件介绍
本节内容: ansible playbook介绍 ansible playbook基础组件 playbook中使用变量 一.ansible playbook介绍 playbook是由一个或多个“pla ...
- ansible入门四(Ansible playbook基础组件介绍)
本节内容: ansible playbook介绍 ansible playbook基础组件 playbook中使用变量 一.ansible playbook介绍 playbook是由一个或多个“pla ...
- ansible入门三(Ansible的基础元素和YAML介绍)
Ansible的基础元素和YAML介绍 本节内容: YAML Ansible常用的数据类型 Ansible基础元素 一.YAML 1. YAML介绍 YAML是一个可读性高的用来表达资料序列的格式 ...
- ansible的基础使用(一)
ansible基础使用(一) ansible的主要功能 A:为什么是ansible B:ansible的安装 C:ansible的相关文件 D:ansible的基本使用 ansible的简单操作 A: ...
- Centos 7.2 Jenkins+Ansible+Gitlab 基础配置
注意:首先准备jenkins服务器 如何搭建jenkins 由于上篇文章中jenkins是采用war并部署在tomcat中来完成的安装,所以这里隆重介绍下启动tomcat的用户:tomcat,下面会 ...
- ansible之基础篇(一)
ansible简介 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了批量系统配置.批量 ...
- ansible的基础概念与部署(一)
- ansible Ansible Galaxy ansible-playbook 安装 使用 命令 笔记 生成密钥 管控机 被管控机 wget epel源
笔记 ansible 安装 与salt对比 相同 都是为了同时在多台机器上执行相同的命令 都是python开发 不同 agent(saltstack需要安装.ansible不需要) 配置(salt配置 ...
- Ansible的基础元素和YAML介绍
本节内容: YAML Ansible常用的数据类型 Ansible基础元素 一.YAML 1. YAML介绍 YAML是一个可读性高的用来表达资料序列的格式.YAML参考了其他多种语言,包括:XML. ...
随机推荐
- Java反射之对JavaBean的内省操作
上一篇我们说了Java反射之数组的反射应用 这篇我们来模拟实现那些javabean的框架(BeanUtils)的基本操作. [一] 什么是JavaBean JavaBean 是一种JAVA语言写成的可 ...
- vue+django+webpack搭建
一.前言 最近接手了一个项目,后端是django,前端是django自带的模板,用的是jinja2,写了一段时间发现用起来特别不顺手,于是想在保持现有的模板基础上,引入vue框架,这样同事可以继续用自 ...
- CSS3-3D技术
CSS3-3D技术 transform翻译成汉语具有"变换"或者"改变"的意思. 此属性具有非常强大的功能,比如可以实现元素的位移.拉伸或者旋转等效果, 最能体 ...
- Fiddler2 下断点修改HTTP报文
一 Fiddler中设置断点修改HTTP请求 方法1:全局断点.Rules-->Automatic BreakPoint-->Before Requests(或快捷键F11),这种方法会拦 ...
- Python-练习 while 和for 循环
# while 循环 age = 56count = 0 while count < 3 : guess_age=int(input('输入年龄:')) if guess_age == age: ...
- 故事:走进JVM的世界(图文并茂)
注意!本文较长,建议先收藏再阅读.更多文章可以关注作者公众号:码上实战 你也可以 star 我的 GitHub上本文所属仓库:https://github.com/flyhero/MarkNote 说 ...
- 曹工说Spring Boot源码(25)-- Spring注解扫描的瑞士军刀,ASM + Java Instrumentation,顺便提提Jar包破解
写在前面的话 相关背景及资源: 曹工说Spring Boot源码(1)-- Bean Definition到底是什么,附spring思维导图分享 曹工说Spring Boot源码(2)-- Bean ...
- python使用argparse 、paramiko实现服务器管理器
使用argparse,paramiko两个包去实现简易的服务器管理器,完成两种方式的连接( 密码和密钥 ),以及命令行交互,文件上传下载. 相比sys.argv的方式去判断传入的参数,如果参数较多那么 ...
- 安装sql server 2005时出现“安装汇编”错误的解决办法
今天安装sql server 2005 management studio到最后步骤的时候报“安装汇编”错误,卸载重装的几遍还是不行,最后将net framework 3.5删除后,终于安装成功了.
- 第四周java实验
实验四 类与对象的定义及使用 实验时间 2018-9-20 1.实验目的与要求 (1) 理解用户自定义类的定义: 类是具有相同属性和行为的一组对象的集合.java中,用构造器构造并初始化对象. 类是构 ...