mac 部署 ansible 记录

简介

Ansible是一款为类Unix系统开发的自由开源的配置和自动化工具。

它用Python写成,类似于saltstack和Puppet,但是有一个不同和优点是我们不需要在节点中安装任何客户端。

它使用SSH来和节点进行通信。Ansible基于 Python paramiko 开发,分布式,无需客户端,轻量级,配置语法使用 YMAL 及 Jinja2模板语言,更强的远程命令执行操作。
 

中文文档

总体介绍 — 国内最专业的Ansible中文官方学习手册https://ansible-tran.readthedocs.io/en/latest/docs/intro.html

安装

pip  install ansible

使用之前确认ssh是否可用

inventory 文件配置(主机清单)

配置文件用来配置服务器地址,用来管理多台机器。默认的文件配置地址:

/etc/ansible/hosts 没有就创建目录和hosts文件

配置文件

1. 基于端口,用户,密码定义主机清单
格式:

ansible基于ssh连接-i (inventory)参数后指定的远程主机时,也可以写端口,用户,密码。
如:

[test]

192.168.0.1 ansible_user=user ansible_ssh_pass=pass

[test]是分组名 ansible_ssh_port: 指定ssh端口 ansible_ssh_user:指定 ssh 用户 ansible_ssh_pass: 指定 ssh 用户登录是认证密码(明文密码不安全) ansible_sudo_pass: 指明 sudo 时候的密码,另外 pass要是字符串 即‘pass’,不知是不是只有我有这个问题,别的一些教程都直接写密码,直接写密码我报错没权限。

在macOS下使用ansible命令(inventory文件中使用了密码验证的方式)或者使用iTerm2来完成自动密码填充等场景会使用到sshpass。

安装sshpass

brew install https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.rb

如果报错:Non-checksummed download of sshpass formula file from an arbitrary URL is unsupported! `brew extract` or `brew create` and `brew tap-new` to create a formula file in a tap on GitHub instead.

手动下载后再安装

wget https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.rb

brew install sshpass.rb

ps: 这么操作如果还不行,就直接访问https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.rb

这个链接内容拷贝到本地sshpass.rb中,然后执行

brew install sshpass.rb

详情可见 macOS 安装 sshpass - 简书

执行命令:ansible test -m ping

如果不成功可以通过命令:ansible test -m ping -vvv 来查看具体错误信息

2. 基于ssh密钥来访问定义主机清单
设置密钥 命令行: ssh-keygen 
拷贝密钥: ssh-copy-id root@192.168.0.1
测试: ssh 192.168.0.1

修改host,此时只用ip就可以

ps:不知是不是因为我使用的ubuntu用户,这么测试必须是 ssh ubuntu@192.168.0.1才可以通,在ansible test -m ping 时候也只有第一种成功。时间关系 并没有耗费太多时间在第二种方法上,但是通过其他成功案例来看,通过ssh是最方便安全的,第一种毕竟暴露了明文密码,还是有安全方便的风险。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值