Install Ansible on Mac OSX
from: https://devopsu.com/guides/ansible-mac-osx.html
and : https://devopsu.com/guides/ansible-post-install.html
Install Ansible on Mac OSX
Ansible uses Python and fortunately Python is already installed on modern versions of OSX.
Quick summary:
- Install Xcode
sudo easy_install pipsudo pip install ansible --quiet
Then, if you would like to update Ansible later, just do:
sudo pip install ansible --upgrade
Full explanation...
Ensure Xcode is installed first
Some of Ansible's dependencies need to be compiled, so you'll need the developer tools that come with Xcode.
You can check if you already have the developer tools by running this:
> pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
(note: Before OSX Mavericks, the package to check for was "com.apple.pkg.DeveloperToolsCLI")
If the tools are not installed, you will see this output:
> pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
No receipt for 'com.apple.pkg.CLTools_Executables' found at '/'.
In that case, download and install Xcode from here.
If the tools are installed, you should see output similar to this:
> pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
package-id: com.apple.pkg.CLTools_Executables
version: 5.1.0.0.1.1396320587
volume: /
location: /
install-time: 1397415256
groups: com.apple.FindSystemFiles.pkg-group com.apple.DevToolsBoth.pkg-group com.apple.DevToolsNonRelocatableShared.pkg-group
Install pip
pip is Python's package manager. It isn't installed on OSX by default, but you can use Python's other package manager easy_install to install it:
> sudo easy_install pip
Password:
Searching for pip
Reading http://pypi.python.org/simple/pip/
Best match: pip 1.4.1
Downloading https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#md5=6afbb46aeb48abac658d4df742bff714
Processing pip-1.4.1.tar.gz
Running pip-1.4.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-hVr8Pt/pip-1.4.1/egg-dist-tmp-BY70iY
warning: no files found matching '*.html' under directory 'docs'
warning: no previously-included files matching '*.rst' found under directory 'docs/_build'
no previously-included directories found matching 'docs/_build/_sources'
Adding pip 1.4.1 to easy-install.pth file
Installing pip script to /usr/local/bin
Installing pip-2.7 script to /usr/local/bin
Installed /Library/Python/2.7/site-packages/pip-1.4.1-py2.7.egg
Processing dependencies for pip
Finished processing dependencies for pip
Install Ansible
> sudo pip install ansible
...lots of output and warnings you can ignore...
Successfully installed ansible paramiko jinja2 PyYAML pycrypto ecdsa markupsafe
Cleaning up...
Upgrade Ansible
When a new release of Ansible comes out, you can easily upgrade to the new version like this:
> sudo pip install ansible --upgrade
Post-Install Setup
Next, see the post-install steps...
Ansible: Post-Install Setup
Inventory hosts file
After you've installed Ansible, then you'll want Ansible to know which servers to connect to and manage.
Ansible's inventory hosts file is used to list and group your servers. Its default location is /etc/ansible/hosts.
If you want to have your Ansible hosts file in another location, then you can set this environment variable:
> export ANSIBLE_HOSTS=/root/ansible_hosts
Or you can specify the Ansible hosts location when running commands with the --inventory-file= (or -i) flag:
> ansible all --inventory-file=/root/ansible_hosts -m ping
For more on the inventory hosts file, see: http://docs.ansible.com/intro_inventory.html
Set up connectivity to the servers
For this example, I'll assume you have servers with the hostnames child1.dev and child2.dev. When doing your own install, replace those hostnames with your own.
Your /etc/ansible/hosts file would look like this:
child1.dev
child2.dev
You want to be able to connect to your servers without having to enter a password every time. If you don't already have ssh key authentication set up to your children nodes, then do the following...
Generate the ssh key on the master node:
root@master:~# ssh-keygen -t rsa -C "name@example.org"
Then copy your public key to the servers with ssh-copy-id:
root@master:~# ssh-copy-id user@child1.dev
root@master:~# ssh-copy-id user@child2.dev
Now you can test the connectivity:
root@master:~# ansible all -m ping
child1.dev | success >> {
"changed": false,
"ping": "pong"
}
child2.dev | success >> {
"changed": false,
"ping": "pong"
}
Next...
Now you're ready to actually manage your servers with Ansible's playbooks: http://docs.ansible.com/playbooks_intro.html
Install Ansible on Mac OSX的更多相关文章
- 在OSX狮子(Lion)上安装MYSQL(Install MySQL on Mac OSX)
这篇文章简述了在Mac OSX狮子(Lion)上安装MySQL Community Server最新版本v10.6.7的过程. MySQL是最流行的开源数据库管理系统.首先,从MySQL的下载页面上下 ...
- 【转】Install libimobiledevice on Mac OSX
About the App App name: libimobiledevice App description: Library to communicate with iOS devices na ...
- Install MongoDB driver for PHP on XAMPP for Mac OSX
试了不少方法,最后还是这个最有效. [转自:http://thatsimplecode.com/install-mongodb-driver-for-php-on-xampp-for-mac-osx] ...
- mac osx 系统 brew install hadoop 安装指南
mac osx 系统 brew install hadoop 安装指南 brew install hadoop 配置 core-site.xml:配置hdfs文件地址(记得chmod 对应文件夹 ...
- mac osx 上面部署Django项目 apache+mysql+mod_wsgi
1.安装Xcode command line tools 首先,编译mysql和Homebrew需要用到Xcode command line tools,所以首先安装command line tool ...
- Mac OSX上的软件包管理工具,brew 即 Homebrew
brew 即 Homebrew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或者卸载软件, 只需要一个命令, 非常方便. brew类似ubuntu系统下的apt-get的功能. 安装 ...
- Installing Hadoop on Mac OSX Yosemite Tutorial Part 1.
Installing Hadoop on Mac OSX Yosemite Tutorial Part 1. September 23, 2014 Marek 68 Comments Install ...
- 在Mac OSX 10.10 上安装opencv
http://blog.csdn.net/wdkirchhoff/article/details/41910553 在Mac OSX上如果想使用OpenCV,可以通过自己手动编译源码的方式,但比较繁琐 ...
- XE6移动开发环境搭建之IOS篇(7):在Mac OSX 10.8中安装Xcode4.6.3(有图有真相)
网上能找到的关于Delphi XE系列的移动开发环境的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 在安装Xcode前, ...
随机推荐
- Oracle实战训练——ATM取款机业务
ATM取款机的数据库模拟开发和实战总结 一.ATM实战开发的简介. 学习了几天的Oracle,开始着手用数据库PL/SQL语言做一个简单的ATM取款机业务,主要是为了巩固数据库的知识,并非真正的去实现 ...
- LeetCode First Unique Character in a String
原题链接在这里:https://leetcode.com/problems/first-unique-character-in-a-string/ 题目: Given a string, find t ...
- LeetCode Reverse String
原题链接在这里:https://leetcode.com/problems/reverse-string/ 题目: Write a function that takes a string as in ...
- Android 强烈推荐:程序员接私活那点事
今天周末在家宅着,并不是我不想运动,是因为北京的雨雪交加导致我想在家写文章,不过想想给大家写文章还是蛮惬意的,望一眼窗外,看一眼雪景,指尖在键盘上跳动,瞬间有种从屌丝程序员转变成了小姑娘们都羡慕的文艺 ...
- leetcode 397
题目描述: Given a positive integer n and you can do operations as follow: If n is even, replace n with n ...
- linux------------centos防火墙
CentOS7默认的防火墙不是iptables,而是firewalle. 你可以用rpm -qa | grep iptables来查看,一般会出现两个一个是iptables 另一个是iptables. ...
- svg gradient
SVG和canvas中是一样的,都是使用标准的HTML/CSS中的颜色表示方法,这些颜色都可以用于fill和stroke属性. 基本有下面这些定义颜色的方式: 1. 颜色名字: 直接使用颜色名字red ...
- 云硬盘error、error deleting、deleting状态(数据库基本操作小记)
起因是发现云硬盘显示删光了,但还是创建不了新的云硬盘,在api节点上用cinder list可以看到已经没有硬盘了,但是创建硬盘时,还是会提示配额满了,这是因为数据库里的记录没有更新,对数据库的操作记 ...
- 理解水平扩展和垂直扩展 (转载 http://yunjiechao-163-com.iteye.com/blog/2126981)
当一个开发人员提升计算机系统负荷时,通常会考虑两种方式垂直扩展和水平扩展.选用哪种策略主要依赖于要解决的问题 以及系统资源的限制.在这篇文章中我们将讲述这两种策略并讨论每种策越的优缺点.如果你已经 ...
- WebSQL 查询工具
最近在写 WebSQL ,每次都在浏览器控制台执行 SQL 太费劲了,并且脑子不好使,总是忘记上次初始化的数据库是什么,所以写了一个特别简单的 WebSQL 可视化工具,说工具有点大了,就是为了方便, ...