ansible笔记():常用模块之包管理模块

yum_repository模块
yum_repository模块可以帮助我们管理远程主机上的yum仓库。 此处我们介绍一些yum_repository模块的常用参数,你可以先对这些参数有一个大概了解,然后再看小示例。 name参数:必须参数,用于指定要操作的唯一的仓库ID,也就是".repo"配置文件中每个仓库对应的"中括号"内的仓库ID baseurl参数:此参数用于设置yum仓库的baseurl description参数:此参数用于设置仓库的注释信息,也就是".repo"配置文件中每个仓库对应的"name字段"对应的内容。 file参数:此参数用于设置仓库的配置文件名称,即设置".repo"配置文件的文件名前缀,在不使用此参数的情况下,默认以name参数的仓库ID作为".repo"配置文件的文件名前缀,同一个'.repo'配置文件中可以存在多个yum源 enabled参数:此参数用于设置是否激活对应的yum源,此参数默认值为yes,表示启用对应的yum源,设置为no表示不启用对应的yum源。 gpgcheck参数:此参数用于设置是否开启rpm包验证功能,默认值为no,表示不启用包验证,设置为yes表示开启包验证功能。 gpgcakey参数:当gpgcheck参数设置为yes时,需要使用此参数指定验证包所需的公钥 state参数:默认值为present,当值设置为absent时,表示删除对应的yum源 yum_repository模块的ad-hoc示例命令如下: 使用如下命令在test70主机上设置ID为aliEpel 的yum源,仓库配置文件路径为/etc/yum.repos.d/aliEpel.repo
[root@node1 data]# ansible test211 -m yum_repository -a 'name=aliEpel description="alibaba EPEL" baseurl=http://mirrors.aliyun.com/epel/7/$basearch' 使用如下命令在test70主机上设置ID为aliEpel 的yum源,仓库配置文件路径为/etc/yum.repos.d/alibaba.repo [root@node1 data]# ansible test211 -m yum_repository -a 'name=aliEpel description="alibaba EPEL" baseurl=http://mirrors.aliyun.com/epel/7/$basearch file=alibaba' 使用如下命令在test211主机上设置ID为local 的yum源,但是不启用它(local源使用系统光盘镜像作为本地yum源,以便测试举例,所以baseurl中的值以file:///开头) [root@node1 data]# ansible test211 -m yum_repository -a 'name=local baseurl=file:///media description="local cd yum" enabled=no' 使用如下命令在test211主机上设置ID为local的yum源,开启包验证功能,并指定验证包所需的公钥位置为/media/RPM-GPG-KEY-CentOS-
[root@node1 data]# ansible test211 -m yum_repository -a 'name=local baseurl=file:///media description="local cd yum" gpgcheck=yes gpgcackey=file:///media/RPM-GPG-KEY-CentOS-7' 删除/etc/yum.repos.d/alibaba.repo配置文件中的aliEpel源 [root@node1 data]# ansible test211 -m yum_repository -a 'file=alibaba name=aliEpel state=absent' yum模块
yum模块可以帮助我们在远程主机上通过yum源管理软件包。 此处我们介绍一些yum模块的常用参数,你可以先对这些参数有一个大概了解,然后再看小示例。 name参数:必须参数,用于指定需要管理的软件包,比如nginx state参数:用于指定软件包的状态 ,默认值为present,表示确保软件包已经安装,除了present,其他可用值有installed、latest、absent、removed,其中installed与present等效,latest表示安装yum中最新的版本,absent和removed等效,表示删除对应的软件包。 disable_gpg_check参数:用于禁用对rpm包的公钥gpg验证,默认值为no,表示不禁用验证,设置为yes表示禁用验证,即不验证包,直接安装,在对应的yum源没有开启gpg验证的情况下,需要将此参数的值设置为yes,否则会报错而无法进行安装。 enablerepo参数:用于指定安装软件包时临时启用的yum源,假如你想要从A源中安装软件,但是你不确定A源是否启用了,你可以在安装软件包时将此参数的值设置为yes,即使A源的设置是未启用,也可以在安装软件包时临时启用A源。 disablerepo参数:用于指定安装软件包时临时禁用的yum源,某些场景下需要此参数,比如,当多个yum源中同时存在要安装的软件包时,你可以使用此参数临时禁用某个源,这样设置后,在安装软件包时则不会从对应的源中选择安装包。 enablerepo参数和disablerepo参数可以同时使用 yum模块的ad-hoc示例命令如下: 确保test211主机上通过yum源安装了nginx(对应yum源未开启gpg验证,所以需要设置disable_gpg_check=yes),如下三条命令的效果相同 [root@node1 data]# ansible test211 -m yum -a "name=nginx disable_gpg_check=yes"
[root@node1 data]# ansible test211 -m yum -a "name=nginx state=present disable_gpg_check=yes"
[root@node1 data]# ansible test211 -m yum -a "name=nginx state=installed disable_gpg_check=yes" 确保test211主机上安装了yum源中最新版本的nginx [root@node1 data]# ansible test211 -m yum -a 'name=nginx state=latest disable_gpg_check=yes' 确保test211主机上通过yum源安装的nginx被卸载了 [root@node1 data]# ansible test211 -m yum -a 'name=nginx state=absent'
[root@node1 data]# ansible test211 -m yum -a 'name=nginx state=removed' 在test211主机上安装telnet时不确定local源是否启用,使用enablerepo=local确保临时启用local源 [root@node1 data]# ansible test211 -m yum -a 'name=telnet disable_gpg_check=yes enablerepo=epel' 在test211主机上安装telnet时,确定多个源中都有telnet,但是不想从local源中安装,所以在安装时临时禁用epel源 [root@node1 data]# ansible test211 -m yum -a 'name=telnet disable_gpg_check=yes disablerepo=epel'

ansible笔记(9):常用模块之包管理模块的更多相关文章

  1. ansible笔记(7):常用模块之包管理模块

    1.yum_repository模块 用于远程管理远程主机上的yum仓库. 参数解析: name:必须参数,用于指定要操作的唯一的仓库ID,也就是.repo配置文件中每个仓库对应的“中括号”内的仓库I ...

  2. 【python基础语法】模块和包管理,文件的操作(第8天课堂笔记)

    ''' 模块和包管理 模块和包的定义: 模块:模块是一个Python文件,以.py结尾,包含了Python对象定义和Python语句 包:Python中的包就是一个包含__init__.py文件的目录 ...

  3. pycharm快捷键、常用设置、包管理

    pycharm快捷键.常用设置.包管理 在PyCharm安装目录 /opt/pycharm-3.4.1/help目录下可以找到ReferenceCard.pdf快捷键英文版说明 or 打开pychar ...

  4. 【转】pycharm快捷键、常用设置、包管理

    转自:pycharm快捷键.常用设置.包管理 在PyCharm安装目录 /opt/pycharm-3.4.1/help目录下可以找到ReferenceCard.pdf快捷键英文版说明 or 打开pyc ...

  5. python模块和包(模块、包、发布模块)

    模块和包 目标 模块 包 发布模块 01. 模块 1.1 模块的概念 模块是 Python 程序架构的一个核心概念 每一个以扩展名 py 结尾的 Python 源代码文件都是一个 模块 模块名 同样也 ...

  6. Python/模块与包之模块

    Python/模块与包之模块 1.什么是模块? 模块就是py文件 2.为什么要用模块? 如果在解释器上进行编码,把解释器关闭之前写的文件就不存在了,如果使用模块的话就能永久保存在磁盘中. 3.如何使用 ...

  7. Nodejs-内置核心模块&npm包管理工具

    1.核心模块的意义 如果只是在服务器运行JavaScript代码,其实意义不大(浏览器就可以解决)因为无法实现功能(读写文件,访问网络) Node的用处在于本身还提供了一系列的功能模块,用于与操作系统 ...

  8. Openresty 学习笔记(四)lualocks包管理器安装使用

    Luarocks是一个Lua包管理器,基于Lua语言开发,提供一个命令行的方式来管理Lua包依赖.安装第三方Lua包等,社区比较流行的包管理器之一,另还有一个LuaDist,Luarocks的包数量比 ...

  9. 模块和包,logging模块

    模块和包,logging日志 1.模块和包 什么是包? 只要文件夹下含有__init__.py文件就是一个包. 假设文件夹下有如下结构 bake ├── test.py ├── __init__.py ...

随机推荐

  1. es6模块化导入导出

    模块化指的就是将一个大程序拆分成若干个互相依赖的小文件,然后在用简单的方法拼装起来. 在 ES6 之前,JS没有模块化系统,社区制定了一些模块加载方案 最主要的有 CommonJS(Asynchron ...

  2. Set接口HashSet实现类

    java.util.Set接口 extends Collection接口 Set特点: 1.不允许有重复的元素 2.没有索引,没有带索引的方法,也不能使用普通的for遍历 java.util.Hash ...

  3. 数据结构Java实现02----单向链表的插入和删除

    文本主要内容: 链表结构 单链表代码实现 单链表的效率分析 一.链表结构: (物理存储结构上不连续,逻辑上连续:大小不固定)            概念: 链式存储结构是基于指针实现的.我们把一个数据 ...

  4. 【八】Spring Cloud Config

    一.分布式系统面临的--配置问题 微服务意味着要将单体应用中的业务拆分成一个个子服务,每个服务的力度相对较小,因此系统中会出现大量的服务.由于每个服务都需要必要的配置信息才能运行,所以一套集中式的.动 ...

  5. Continuous Design

    Continuous Design https://www.martinfowler.com/ieeeSoftware/continuousDesign.pdf T he rising popular ...

  6. MVC设置启动页

    设置启动页需要在路由中添加一段代码: public static void RegisterRoutes(RouteCollection routes)        {            rou ...

  7. 【游记】THUWC2018踹线记

    Day1. 早上九点多报道,然后就是试机.一开始有一些懵,没看清门外的通知,操作起来各种懵逼.不过提前适应过了在Linux下面编程,所以问题不大.调了gedit的界面,试了一下对拍,敲了一道试机题,然 ...

  8. pyqt5模块介绍

    python各种库介绍  https://wiki.python.org/moin/GuiProgramming PyQt5.QtWidgets     包含控件 PyQt5.QtGui      图 ...

  9. js伪数组转数组

    方法1: 遍历伪数组,在把值push进一个空数组中 方法2: 使用数组的slice方法,它返回的是数组,使用call或apply指向伪数组 var arr = [].slice.call(argume ...

  10. python网络编程初识

    一,什么是计算机网络: 计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和 [1]  信 ...