简介

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是最方便安全的,第一种毕竟暴露了明文密码,还是有安全方便的风险。

mac 部署 ansible 记录相关推荐

  1. kvm虚拟化管理平台WebVirtMgr部署-完整记录(2)

    继上一篇kvm虚拟化管理平台WebVirtMgr部署-完整记录(1),接下来说说WebVirtMgr的日常配置:添加宿主机,创建虚机,磁盘扩容,快照等 具体操作记录如下: 一.配置宿主机 1.登录We ...

  2. Centos下堡垒机Jumpserver V3.0环境部署完整记录(1)-安装篇

    Centos下堡垒机Jumpserver V3.0环境部署完整记录(1)-安装篇 由于来源身份不明.越权操作.密码泄露.数据被窃.违规操作等因素都可能会使运营的业务系统面临严重威胁,一旦发生事故,如果 ...

  3. linux下安装部署ansible

    linux下安装部署ansible 介绍 Ansible是一种批量部署工具,现在运维人员用的最多的三种开源集中化管理工具有:puppet,saltstack,ansible,各有各的优缺点,其中sal ...

  4. 自动化运维之 安装部署 Ansible 服务

    Ansible 概述 由于互联网的快速发展导致产品更新换代速度逐渐加快,运维人员每天都要进行大量的维护操作,仍旧按照传统方式进行维护使得工作效率低下.这是,部署自动化运维就可以尽可能的安全.高效地完成 ...

  5. 在 OpenShift 4 上部署 Ansible Tower 环境

    <OpenShift 4.x HOL教程汇总> 说明:本文已经在OpenShift 4.8环境中验证 文章目录 准备OpenShift环境 安装PostgreSQL 安装Ansible T ...

  6. 尝试实现MySQL的登录与部署并记录下来_下列说法正确的是

    [单选题]从汉字形体演变的历史看,打破古汉字象形的传统,奠定现代汉字基础的是 [判断题]非企业法人也能成为经济法律关系的主体.( ) [多选题]若净现值为负数,表明该投资项目( ) [问答题]多品种条 ...

  7. 网站更新部署20110210,新站部署全过程记录

    网站更新部署20110210,新站部署全过程记录 sudo adduser <用户名> 按提示输入 更改初始root账户密码 ubuntu修改初始root密码 2007-01-24 20: ...

  8. 部署ansible架构

    部署ansible架构 文章目录 部署ansible架构 安装yum源 安装ansible 查看ansible版本 配置/etc/hosts 配置ssh的基于密钥认证 将ansible本地的/etc/ ...

  9. docker安装部署ansible并打包

    docker安装部署ansible并打包 前言 部署过程 效果展示 前言 ansible作为一个高效的自动化运维管理工具,在管理服务器和网络设备上有着明显的优势,但是ansible需要在主控端安装相关 ...

最新文章

  1. 用Remoting 实现一个文件传输组件
  2. egg.js连接mysql数据库遇到的问题
  3. 看美女有助于男士长寿
  4. java 解析http返回的xml_Java解析调用webservice服务的返回XML串详解
  5. 文件查询之三:文件和目录的批量操作
  6. 如何用HTML编写长方体框架,直角梯形长方体形状_html_开发99编程知识库
  7. 用vb6.0查看计算机用户名,如何使用vb6.0输入登录窗口的用户名和密码?
  8. Cocos2d-x CCNotificationCenter 通知中心
  9. 《线性代数应该这样学》学习笔记
  10. C语言实现扩展欧几里得算法
  11. Adobe Photoshop CC 2019 精简版
  12. PhotoShop(2)ps常用工具和操作,ps 切图,cutterman下载使用
  13. 《深入理解计算机系统》|处理器体系结构
  14. 电脑qq微信等软件可以上网,浏览器无法上网,电脑浏览器提示代理服务器连接失败
  15. oracle revoke 列_oracle受权与回收权限grant和revoke
  16. 微信隐藏功能:微信怎么群发消息给好友不建群?
  17. 安科瑞无线测温产品的实际应用
  18. 南繁水稻国家公园国稻种芯(三亚)水稻节功能性农业产业园
  19. 【spring的使用方法】
  20. Linux:Linux文件属性

热门文章

  1. ASLR 的关闭与开启(适用于 Windows7 及更高版本)
  2. Opencv学习笔记完整版
  3. 软件定义和硬件重构知多少(二)
  4. 浏览器配置存在问题。。360断网急救箱未能修复
  5. IDEA2021版本的安装和使用教程
  6. B. Nezzar and Lucky Number
  7. 推荐安全且匿名的邮箱 ProtonMail -- PGP算法
  8. 实验四-1:输入一个字符,请判断是字母、数字还是其它字符。
  9. 【数据结构与算法 6】栈实现综合计算器
  10. Windows2008使用超级终端--转