[Ansible] 在 macOS 上开始使用 Ansible (1)

这是什么?

“我想用Ansible管理服务器设置!”
我将从macOS开始。

暂时只需要安装。

环境

    • macOS Catalina 10.15.6

 

    Homebrew 2.5.2

安装Ansible

使用Homebrew进行安装。

brew install ansible

已成功安装Ansible 2.9.13版本。

% brew info ansible
ansible: stable 2.9.13 (bottled), HEAD
Automate deployment, configuration, and upgrading
https://www.ansible.com/
/usr/local/Cellar/ansible/2.9.13 (18,363 files, 226.3MB) *
  Poured from bottle on 2020-10-01 at 18:25:15
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/ansible.rb
License: GPL-3.0-or-later

安装的命令

已安装了以下类似的命令。

ansible(安西波)定义并执行单一任务的 Playbook。ansible配置展示Ansible的配置。Ansible链接我要连接到远程设备。
(可能不会直接使用吗?)ansible控制台这是一个执行Ansible任务的REPL(读取-评估-打印-循环)。ansible-doc
Ansible文档这是一个插件的文档工具。Ansible银河操作位于共有存储库(默认为 https://galaxy.ansible.com/ )中的角色。ansible inventory显示已创建的库存。Ansible的剧本执行多个Playbook。ansible-pull(用于执行Ansible Playbook的命令)使用Version Control System(版本控制系统)获取Playbook。
以Pull模式使用。Ansible测试这是个测试执行工具。Ansible保险库这是一个用于加密/解密数据文件的实用工具。

Ansible Terminology:

我列举了一些经常看到但不了解的术语。

存货

这是一个记录了应被Ansible操作的设备的文件。或者说,这是指代操作目标设备的文件。

任务 wù)

工作。要对操作对象设备进行一些操作。

剧本 – 大戏

这是一种用于描述设备操作内容的语言,或者是用该语言编写的文件。

尝试与自己产生连接

使用 ansible-console 命令在我手头的 Mac 上执行一个任务。

准备起来

请事先将SSH服务器设置为可运行。
在“设置”>“共享”中启用远程登录。

image.png

另外,请生成一个SSH密钥,确保能够使用密钥认证方式连接到自己。

ssh-keygen -t ed25519
ssh-copy-id -i ~/.ssh/id_ed25519 localhost

我将确认是否可以使用键认证进行登录。

ssh localhost

执行确认疏通任务

使用ansible-console命令带上选项来启动。

ansible-console --inventory localhost, --user 自分のログインID

只要有不能用逗号代替的错误拼写,
–inventory选项末尾的逗号是正确的,如果没有逗号,它将被视为文件名。

用这个方法,你就可以在本地主机上执行任务了。

我悠然地输入ping命令。
这时候,可能会显示SSH的消息。我回复了”Yes”。

$ ping
[WARNING]: Platform darwin on host localhost is using the discovered Python interpreter at /usr/bin/python, but future installation of another Python
interpreter could change this. See https://docs.ansible.com/ansible/2.9/reference_appendices/interpreter_discovery.html for more information.
localhost | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    },
    "changed": false,
    "ping": "pong"
}

虽然出现了警告,但已确认可以通过Ansible进行操作。

广告
将在 10 秒后关闭
bannerAds