自动化运维工具-ansible详解

一、ansible简介

ansible是一种基于python开发的自动化运维工具,它只需要在服务端安装ansible,无需在每个客户端安装客户端程序,通过ssh的方式来进行客户端服务器的管理,基于模块来实现批量数据配置、批量设备部署以及批量命令执行。

ansible大致模块工作原理见下图:

 大致工作原理就是ansible程序调用读取/etc/ansible/ansible.cfg配置文件获取主机列表清单/etc/ansible/hosts文件,获取所要处理的主机列表,然后查看剧本任务,在根据剧本中一系列任务生成一个临时的脚本文件,然后将该脚本文件发送给所管理的主机,脚本文件在远程主机上执行完成后返回结果,然后删除本地临时文件

二、ansible的安装部署及免密设置

ansible安装比较简单,只要安装第三方源后,使用包管理工具dnf一键安装即可,步骤如下:

dnf install -y epel-release

dnf install -y ansible

安装完成后,为了方便管理可以配置ssh免密,命令如下:

ssh-keygen -t rsa //在/root/.ssh/目录下生产公钥(id_rsa.pub)和私钥(id_rsa)两个文件

ssh-copy-id root@<ip> //分发秘钥至需要免密登录的目标设备

三、ansible工作模式

ansible分为两种工作模式:

一是adhoc(点对点模式):此模式相当于对管理主机执行单个的shell命令

二是playbook(剧本模式):该模式应用较多,该模式是指将一系列任务整合形成一个剧本,以此来达成某种功能(譬如部署某个服务,数据库备份等)的目的。

上述两种模式可类比于一个是执行单个shell命令,一个是shell脚本。

四、ansible配置文件关键配置介绍

4.1、ansible.cfg配置文件

inventory :管理的主机清单文件路径

library:ansible的模块存放的目录

remote_tmp:上述工作原理中提到的将脚本发送至对端的临时目录

local_tmp:上述工作原理中提到本地生成脚本存放的临时目录

forks:并发连接数,默认为5

sudo_user :命令执行用户

remote_port :访问管理主机的端口        

host_key_checking:设置是否检查SSH主机的密钥,默认为false

timeout :ssh连接被管理主机的超时时间

log_path:ansilbe日志文件路径

4.2、hosts配置文件

hosts配置文件是ansible管理的主机列表文件,里面记载着管理主机的ip、端口等信息

其有两种方式:

一是单个主机名或主机ip记录

二是将某一类主机分组记录,譬如数据库主句:

[dbserver]

192.168.1.1

192.168.1.2

192.168.1.3

........

当需要对该类主机进行操作时,只要调用dbserver即可调用该分组内所有主机,且此处可支持通配符

五、 ansible常用参数

ansible-doc -l :列出所有模块

ansible-doc -s <模块名> :查看模块的参数信息


ansible --version :查看ansible版本


ansible -v :输出详细详细;-vv:输出更详细的信息

ansible -m :指定调用的模块名称

ansible -a :调用模块的参数

ansilbe -c :测试命令执行结果,不实际执行

ansible -k :提示输入ssh的秘密,而不是基于ssh认证

ansible -u :指定执行命令的用户

ansilbe -i :指定访问的主机列表文件

ansilbe -f :指定并发进程数

六、ansible常用模块

以下模块举例主机组为client

1、ping模块连通性测试

[root@server ~]# ansible client -m ping                      //检测主机组主机连通性

192.168.91.128 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/libexec/platform-python"
    },
    "changed": false,
    "ping": "pong"
}

2、command模块


                
言一日记
关注 关注
  • 21
    点赞
  • 272
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
ansible从入门到精通(完整篇)
疑犯的博客
01-12 1512
Ansible是一款自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。Ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是Ansible所运行的模块,Ansible只是提供一种框架。主要包括:(1) 连接插件connection plugins:负责和被监控端实现通信;
Ansible的安装及部署
Gong_yz的博客
02-15 7274
常用配置参数 #[default] ##基本信息设定 inventory= ##指定清单路径 remote_user= ##在受管主机上登陆的用户名称,未指定使用当前用户 ask_pass= ##是否提示输入SSH密码,如果公钥登陆设定为false library= ##库文件存放目录 local_tmp= ##本机临时命令执行目录 remote_tmp= ##远程主机临时py命令文件存放目录 forks= ##默认并发数量 host_key_checking= ##第一次连接受管主机时是否要输入yes建立
自动化运维工具——ansible详解(一) - 珂儿吖 - 博客园.html
05-27
自动化运维工具——ansible详解(一) - 珂儿吖 - 博客园.html
推荐:使用Kubernetes-Ansible构建高可用性集群
最新发布
gitblog_00079的博客
06-18 325
推荐:使用Kubernetes-Ansible构建高可用性集群 项目地址:https://gitcode.com/pawankkamboj/kubernetes-ansible 在云原生时代,Kubernetes已成为容器编排的事实标准。然而,手动部署和管理Kubernetes集群是一项复杂的任务。为此,我们向您推荐一个强大的工具——kubernetes-ansible,这是一个基于Ansible...
自动化运维工具-Ansible详解
wuds_158的博客
06-22 3010
1、Ansible是一个配置管理和配置工具,它使用SSH 连接到服务器并运行配置好的任务,服务器上只需要开启ssh,所有工作都交给client 端的ansible 负责。2、当我们有批量部署的需求时,我们可以自己写脚本,但是更推荐使用 Ansible。使用 Ansible 无需编码只需要配置 yaml 文件,并且 Ansible 已经内置了幂等性、并发度控制等功能,大大减少了批量部署时的工作量。
Ansible入门——Ansible的命令及常用模块详解
不知道
05-27 7320
Ansible用命令管理主机 为什么要使用命令? Ansible命令案例 Ansible命令行工具 ansible-config命令 ansible-console命令 ansible-doc命令 ansible-galaxy命令 ansible-inventory命令 ansible-playbook命令 ansible-pull命令 ansible-vault命令 Ansible用脚本管理主机 执行脚本Playbook的方法 Playbook的例子 Play和Playbook Ansible模块 什么是
非常好的Ansible入门教程(超简单)
热门推荐
pushiqiang的博客
09-28 13万+
Ansible是一个配置管理和配置工具,类似于Chef,Puppet或Salt。这是一款很简单也很容易入门的部署工具,它使用SSH连接到服务器并运行配置的任务,服务器上不用安装任何多余的软件,只需要开启ssh,所有工作都交给client端的ansible负责。 关于Ansible的一个好处是,将bash脚本转换为可执行任务是非常容易的。我们可以编写自己的配置程序,但是Ansible更加干净,因为它
Ansible的简介及部署
Rainable
04-26 1万+
1. ansible简介 1.1 什么是ansible ansible是一款开源自动化平台,是一个配置管理工具自动化运维工具 1.2 ansible的优点 跨平台支持 人类可读自动化: ansible提供linux,Windows,unix和网络设备的无代理支持,适用于物理、虚拟、云和容器环境 完美描述应用:playbook 轻松管理版本控制:playbook是纯文本,可视作源代码...
ansible 详解
路人甲的博客
12-21 1万+
文章目录一、ansible 简介1.1 ansible 是什么?1.2 ansible 特点1.3 ansible 架构图二、ansible 任务执行2.1 ansible 任务执行模式2.2 ansible 执行流程2.3 ansible 命令执行过程三、ansible 配置详解3.1 ansible 安装方式3.1.1 使用 pip(python的包管理模块)安装3.1.2 使用 yum 安装3.2 ansible 程序结构3.3 ansible配置文件3.4 ansuble主机清单四、ansible
ansible入门详解---值得收藏
运维@小兵的博客
01-08 1万+
文章目录一、yum安装ansible二、相关文件介绍`2.1.配置文件`a、/etc/ansible/ansible.cfg解释b、/etc/ansible/hosts格式`2.2.可执行文件`三、配置基于root用户Key的验证四、ansible命令执行过程五、执行状态六、常用模块`指定远程主机用户,并sudo到root用户` 参考视频:https://edu.51cto.com/lesson/306549 一、yum安装ansible yum -y install epel-release yum
Ansible 简单粗暴入门篇
weixin_47252600的博客
01-14 2348
在这篇文章中你能学到Ansible中最常见的几个模块!
自动化运维工具ansible简介
su_use的博客
08-16 1610
自动化运维ansible配置,各模块的使用 地址:https://blog.csdn.net/su_use/article/details/81739207 自动化运维常用工具 安装系统 工具pxe/cobbler 用途:安装系统 虚拟化系统 KVM/xen/vmware 用途:虚拟机 应用部署 puppet/ansibl...
自动化运维工具Ansible
weixin_62399861的博客
06-20 839
又是努力的一天
ansible自动化运维工具使用详解
02-25
ansible是新出现的自动化运维工具,基于Python研发。糅合了众多老牌运维工具的优点实现了批量操作系统配置、批量程序的部署、批量运行命令等功能。仅需在管理工作站上安装ansible程序配置被管控主机的IP信息,被管控...
详解 Ansible自动化运维.doc
05-13
详解 Ansible自动化运维Ansible 是一款强大的开源运维自动化工具,它以其易用性和丰富的功能在 IT 行业中迅速普及。基于 Python 开发的 Ansible 提供了上千个内置模块,覆盖了几乎所有的运维管理任务,无论...
Python自动化运维Ansible定义主机与组规则操作详解
09-19
在Python自动化运维中,Ansible是一个强大的工具,它允许管理员以声明式的方式管理多台远程服务器,无需在目标机器上安装代理。本文将深入探讨如何在Ansible中定义主机与组规则,这对于实现自动化运维至关重要。 ...
运维自动化ansible工具
十七拾的博客
03-14 1700
本文主要介绍运维自动化工具ansible的使用方法,如ansible常用命令、ansible常用模块等,希望对你有帮助!
ansible常用模块
weixin_30299539的博客
08-17 749
copy模块 目的:把主控端/root目录下的a.sh文件拷贝到到指定节点上 命令:ansible 10.1.1.113 -m copy -a 'src=/root/a.sh dest=/tmp/' file模块 目的:更改指定节点上/tmp/t.sh的权限为755,属主和属组为root 命令:ansible all -m file -a "dest=/tmp/t.sh ...
自动化运维工具Ansible
Yuzhang2046的博客
06-14 2954
(1)Ansible其中一个比较鲜明的特性Agentless,即无Agent的存在,只需在某个作为控制节点的主机上安装一次Ansible即可,通常它基于ssh连接来控制远程主机,远程主机上不需要安装Ansible或其它额外的服务。(2)Ansible的另一个比较鲜明的特性是它的绝大多数模块都具备幂等性(idempotence)。所谓幂等性,指的是多次操作或多次执行对系统资源的影响是一致的。注意:script模块不具有幂等性。所以建议用剧本来执行。
ansible update
02-27
Ansible是一种自动化工具,可以用于配置管理、应用程序部署和任务自动化。在Ansible中,可以使用"ansible-playbook"命令来执行一系列的任务,这些任务定义在一个YAML格式的文件中,称为playbook。 要进行系统更新,可以使用Ansible的"apt"模块或"yum"模块,具体取决于你使用的操作系统。这些模块可以通过Ansible playbook来调用。 下面是一个使用Ansible playbook来更新系统的示例: ```yaml - name: Update system hosts: all become: true tasks: - name: Update apt cache (for Debian/Ubuntu) apt: update_cache: yes when: ansible_os_family == 'Debian' - name: Update yum cache (for Red Hat/CentOS) yum: name: '*' state: latest when: ansible_os_family == 'RedHat' - name: Upgrade all packages apt: upgrade: dist when: ansible_os_family == 'Debian' - name: Upgrade all packages yum: name: '*' state: latest when: ansible_os_family == 'RedHat' ``` 上述playbook中的任务会根据操作系统类型来选择使用"apt"模块或"yum"模块来更新系统。首先,会更新软件包缓存,然后再升级所有软件包。 你可以将上述内容保存为一个YAML文件(比如"update_system.yaml"),然后使用以下命令来执行该playbook: ``` ansible-playbook update_system.yaml ``` 这样,Ansible就会自动更新系统中的软件包。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • 自动化运维工具-ansible详解 23550
  • tcpdump抓包工具详解 11979
  • git命令详解 4897
  • docker容器添加ssh服务 4686
  • 杂记-2 时钟同步服务-chrony 4128

分类专栏

  • 运维 2篇

最新评论

  • 自动化运维工具-ansible详解

    运维点滴: 期待后续表情包

  • docker容器添加ssh服务

    后爸: 为啥docker镜像里下载不了软件,ssh服务,vim。gdb都下载不了????

  • git命令详解

    chenxianshengya: git创建分支

您愿意向朋友推荐“博客详情页”吗?

  • 强烈不推荐
  • 不推荐
  • 一般般
  • 推荐
  • 强烈推荐
提交

最新文章

  • docker容器添加ssh服务
  • 杂记-2 时钟同步服务-chrony
  • 杂记-selinux开关
2023年1篇
2022年9篇

目录

目录

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

PHP网站源码丹竹头网络推广盐田网站改版民治网站优化坑梓网站优化按天扣费坂田模板制作横岗SEO按天收费东莞网站优化布吉网站推广方案丹竹头网站seo优化南联百姓网标王横岗网站制作设计福永seo排名观澜网络推广坪地至尊标王塘坑模板推广广州百搜词包坪山关键词排名包年推广同乐网站优化按天扣费龙岗网络广告推广横岗seo东莞网站定制同乐设计公司网站大浪建网站光明网站推广荷坳网站改版深圳网络推广吉祥网站推广系统木棉湾优化松岗英文网站建设木棉湾网页设计歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化