自动化运维-ansible入门篇
1.ansible配置
什么是Ansible
- IT自动化工具
- 依赖于现有的操作系统凭证来访问控制远程机器
- 简单易用、安全可靠
Ansible可以完成哪些任务
- 配置系统
- 开发软件
- 编排高级的IT任务
Ansible特点
- 轻量级
- 易学习
- 操作灵活
Ansible执行流程
Ansible安装配置
Ansible安装方式
- python pip
- 软件源
- Ansible源码
python pip安装
- sudo pip install ansible
优点
- 简单、快速、跨平台
软件源安装
- sudo yum install peel-release && sudo yum install ansible
优点
- 简单、快捷、跨平台
软件源安装(ubuntu)
- $ sudo apt-get install software-properties-common
- $ sudo apt-add-repository spa:ansible/ansible
- $ sudo apt-get update
- $ sudo apt-get install ansible
优点
- 不会出现编译或者依赖问题
Ansible配置
host配置
host文件: /etc/ansible/hosts
配置内容:
[test]
192.168.1.1
配置远程登录
添加公钥:
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.1
连通测试
运行Ansible命令:
ansible all -m ping
正确的运行结果:
192.168.1.1 | SUCCESS => {
"changed": false,
"ping": "pong"
}
2.Ansible基本使用
Ad-hoc是什么
- 命令行工具
- 适用于业务变更
- 所见即所得
Ad-hoc怎么用
举例说明:
列出目标主机目录
ansible test -m shell -a "ls /root" --user=root
Ansible help message
- 普通可选参数
- 链接目标主机相关参数
- 权限控制相关参数
Ansible Inventory
Inventory是什么
- 定义主机关系的文件
- 默认路径为/etc/ansible/hosts
- 文件内容格式为ini
Inventory主机组
[组名]
192.168.1.1
192.168.1.2
Inventory主机别名
jumper ansible_ssh_port = 22
ansible_ssh_host = 192.168.1.1
Inventory链接参数
ansible_ssh_host
#将要连接的远程主机名,与你想要设定的主机别名不同的话,可通过此变量设置
ansible_ssh_port
#ssh端口号,如果不是默认的端口号,通过此变量设置
ansible_ssh_user
#默认的ssh用户吗
ansible_ssh_pass
#ssh密码(这种方式并不安全,我们强烈建议使用 --ask-pass或SSH)
ansible_sudo_pass
#sudo密码(这种方式并不安全,我们强烈建议使用 --ask-sudo-pass)
Inventory批量主机组
[websevers]
www[01:50].example.com
[databases]
db-[a:f].example.com
Ansible基本使用
- 了解Ansible使用
- 了解Ansible模块查找使用方法
实战
安装mysql
ansible test -m yum -a "name=mariadb-server state=latest"
#安装使用yum模块 name参数是必须的,服务名称, state参数是可选的,latest表示安装
启动服务/暂停服务
ansible test -m systemd -a "name=mariadb state=started"
#启动mariadb服务
ansible test -m systemd -a "name=mariadb state=stopped"
#关闭mariadb服务
查看mysql服务是否启动
ansible test -m shell -a "ps -ef|grep mysql"
自动化运维-ansible入门篇的更多相关文章
- 自动化运维Ansible安装篇
Ansible自动化工具之--部署篇 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了 ...
- 自动化运维 Ansible
自动化运维 Ansible 特性 (1).no agents:不需要在被管控主机上安装任何客户端: (2).no server:无服务器端,使用时直接运行命令即可: (3).modules in an ...
- saltstack自动化运维快速入门
saltstack自动化运维快速入门 关于saltstack 这个软件是干啥的 我这里就不介绍了 只是简单的说下是干啥的 网上的说法是 它是func的强化版本+ puppet的精简版 关于puppet ...
- python自动化运维之CMDB篇-大米哥
python自动化运维之CMDB篇 视频地址:复制这段内容后打开百度网盘手机App,操作更方便哦 链接:https://pan.baidu.com/s/1Oj_sglTi2P1CMjfMkYKwCQ ...
- 自动化运维Shell入门
运维shell 作用 项目部署 项目监控 什么是shell shell是一个程序,/bin/bash/,是一个命令解释器所有linux命令都由他来执行,打开终端就进入了 shell的交互式命令 运行方 ...
- Python自动化运维ansible从入门到精通
1. 下载安装 在windows下安装ansible:
- 服务器/网络/虚拟化/云平台自动化运维-ansible
ansible与netconf的对比 首先明确一个概念,netconf是协议,ansible是python编写的工具 netconf 使用YANG建模,XML进行数据填充,使用netconf协议进行传 ...
- Linux centosVMware 自动化运维Ansible介绍、Ansible安装、远程执行命令、拷贝文件或者目录、远程执行脚本、管理任务计划、安装rpm包/管理服务、 playbook的使用、 playbook中的循环、 playbook中的条件判断、 playbook中的handlers、playbook实战-nginx安装、管理配置文件
一.Ansible介绍 不需要安装客户端,通过sshd去通信 基于模块工作,模块可以由任何语言开发 不仅支持命令行使用模块,也支持编写yaml格式的playbook,易于编写和阅读 安装十分简单,ce ...
- 自动化运维—Ansible(上)
一:为什么选择Ansible 相对于puppet和saltstack,ansible无需客户端,更轻量级 ansible甚至都不用启动服务,仅仅只是一个工具,可以很轻松的实现分布式扩展 更强的远程命令 ...
随机推荐
- jzy3D安装到弃坑
jzy3D从入门到弃坑 觉得有用的话,欢迎一起讨论相互学习~Follow Me 安装 http://www.jzy3d.org/ 官网 选择DL 选择0.9版使用,而不要使用其他版本 具体原因 高版本 ...
- shiro中anon配置不生效
再配置shiro的时候,如下代码要注意: 1.下述代码中必须是LinkedHashMap 而不能是HashMap. 2.anon定义必须在authc之前 否则anon定义不生效 @Bean ...
- WPF之图片处理系列(19/590)
https://www.cnblogs.com/Big-Head/p/12068230.html
- K8S使用入门-添加一个node
上一篇博客我们已经将K8S部署起来了,现在我们就来介绍一下如何简单使用K8S (1)添加节点 注意事项:不能和k8s master节点的主机名一样.否则会导致k8s无法正常识别出该节点 添加节点是比较 ...
- IIS部署FLASK网站
在 Windows 平台部署基于 Python 的网站是一件非常折腾的事情,Linux/Unix 平台下有很多选择,本文记录了 Flask 部署到 IIS 的主要步骤,希望对你有所帮助. 涉及工具和平 ...
- 【Spring Boot学习之五】切面日志管理
环境 eclipse 4.7 jdk 1.8 Spring Boot 1.5.2 一.log4j 常见方式:log4j.properties + org.apache.log4j.Logger比如:l ...
- Oracle Spatial分区应用研究之六:全局空间索引下按县分区与按省分区效率差异原因分析
1.实验结论 全局空间索引下,不同分区粒度之所有效率会有不同,差异并不在于SDO_FILTER操作本身,而在于对于数据字典表的访问次数上: 分区越多.表上的lob column越多,对数据字典表的访问 ...
- Ubuntu下载源码并编译
本文章将介绍如何在Ubunt下进行Linux源码下载,并进行简单的编译步骤. 1.下载linux源码 先查看对应的Ubuntu对应版本源码 $ sudo apt-cache search linux- ...
- 001 SringBoot基础知识及SpringBoot整合Mybatis
1.原有Spring优缺点分析 (1)优点 Spring是Java企业版(Java Enterprise Edition,JEE,也称J2EE)的轻量级代替品.无需开发重量级的Enterprise J ...
- Python2 和 Python3区别
字符串类型不同 py3: str bytes py2: unicode str 默认解释器编码 输入输出 int int long 除法 range和xrang 模块和包 字典 keys py2:列表 ...