个性化阅读
专注于IT技术分析

ansible apt模块

APT代表“高级包装工具”,它是Ubuntu中首选的软件包管理工具集。它允许我们安装新软件包,更新它们,以及从Ubuntu或Debian系统中删除软件包。这是3个与APT相关的命令行工具,例如:

Apt-get:使用此工具可以完成所有基本的软件包管理操作。 Ansible apt-get模块提供此功能。

Apt-add-repository:用于将新的存储库添加到存储库列表。默认存储库可能没有所有软件包的最新版本。因此,你需要为某些软件维护者添加其他存储库。 Ansible apt_repository模块提供了添加新存储库的功能。

Apt-key:用于管理用于验证apt软件包的密钥列表。 Ansible apt_key模块用于管理密钥。

安装新的Apt软件包

要安装新软件包,必须在name参数中提供软件包的名称以及所需的软件包状态。

程序包的默认状态为“存在”。另外,最好将update_cache设置为true。因此,你可以确保索引与源列表同步。这与在安装软件包之前运行apt-get update命令相同。

下面的示例将进行缓存更新以同步索引。检查目标服务器上是否安装了“ zip”软件包。如果未安装,则将安装该软件包。如果该软件包已安装,则不会升级。

-hosts: loc
tasks:
-name: Ansible apt install packages 
apt:
name: zip
state: present
update_cache: true

1.安装最新版本的软件包

如果将软件包的状态设置为“ present”,则Ansible将仅检查软件包是否存在。因此,如果新软件包可用,将无法安装。

如果要安装最新的apt软件包,则必须将state参数设置为最新的。

这将确保安装了具有最新版本的软件包。下面的示例将首先更新缓存,然后安装最新的zip软件包,例如:

-hosts: loc
tasks:
-name: ansible apt install latest version
apt:
name: zip
state: latest
update_cache: true

2. Ansible安装多个软件包

你可以使用with_items并组合这些任务,而不必编写多个任务来安装软件包。

在以下示例中,我们将安装3个软件包:docker-ce,Nginx和git。

-hosts: loc
tasks:
-name: ansible apt with_items 
apt:
name: "{{item}}"
update_cache: true
state: present
with_items:
-'docker-ce'
-'nginx'
-'git'

3. Ansible Apt临时

你还可以使用ad-hoc方法通过apt模块安装新软件包,例如:

ansible all -m apt -a "name=nginx state=absent" -i inventory.ini

删除公寓包

你还可以通过将状态参数设置为不存在,使用apt模块删除软件包。

以下示例将删除zip软件包。由于该模块是幂等的,因此如果没有该软件包,它将不会出错。

-hosts: loc
tasks:
-name: ansible apt remove package 
apt:
name: zip
state: absent

赞(0)
未经允许不得转载:srcmini » ansible apt模块

评论 抢沙发

评论前必须登录!