帮助中心

立即注册 咨询客服

当前位置:首页 > 帮助中心> 如何使用Ansible远程安装应用程序

如何使用Ansible远程安装应用程序

发布时间:2020年02月27日 09:57:01    来源: A5互联

Ansible是一个灵活的管理工具。通过一个playbook,您可以管理软件配置、配置远程服务器,并将应用程序部署到数据中心中的远程系统。

1、准备工作:运行Ansible的服务器、远程Linux服务器、SSH密钥、具有sudo权限的用户

2、如何将SSH密钥复制到远程服务器

我们需要做的第一件事是将SSH密钥复制到远程服务器。使用以下命令将其复制到服务器:

ssh-copy-id USER @ SERVER

其中USER是远程计算机上的用户名,而SERVER是远程计算机的IP地址。复制SSH密钥后,就可以开始使用了。

3、如何配置主机

在创建Playbooks之前,我们先配置主机。假设新主机将属于许多数据库服务器。为此,您需要在Ansible主机文件中创建一个新部分。使用以下命令打开该文件以进行编辑:

sudo nano /etc/ansible/hosts

滚动到该文件的底部,然后创建一个新的部分,如下所示:

[db_servers]

SERVER ansible_user=USER

其中SERVER是远程服务器的IP地址,而USER是远程用户名。您将要使用与刚复制的SSH密钥关联的相同用户名。

保存并关闭文件。

4、如何创建Playbooks

由于我将在基于Ubuntu的远程服务器上进行安装,因此我将其命名为apt.yml。我要演示的是一个非常基本的单个应用程序安装。

该剧本将执行以下操作:

声明主机

获得sudo特权

安装最新版本的zip

更新apt缓存

该剧本如下所示:

- hosts: db_servers

tasks:

- name: Ansible apt install packages example

become: true

become_user: root

apt:

name: zip

state: present

update_cache: true

请记住,由于这是一个YAML文件,因此缩进必须一致,否则将失败。正确设置文件后,保存并关闭它。

如果要安装多个软件包,则必须修改剧本的apt部分以反映此更改:

apt:

name:

- zip

- wget

state: present

update_cache: true

每个应用程序都有其自己的行。

5、如何运行playbook

返回终端窗口,发出命令:

ansible-playbook apt.yml --ask-become-pass

首先将要求您输入sudo密码,然后是SSH密钥身份验证密码。成功针对这两个系统进行身份验证后,该剧本将成功运行,并且zip软件包将安装在远程计算机上。Ansible完成后,您应该在输出中看到ok = 1,表明软件包已成功安装。如果安装了多个软件包,您将看到ok = X(其中X是已安装软件包的数量)。

以上就是您可以从单个Ansible playbook轻松地将应用程序部署到远程服务器的方法。