2017年3月10日金曜日

CentOS6 で Ansible2 をインストールする方法

概要

yum でインストールしている場合、Ansible1.9 がインストールされます
いろいろと 2.0 から変わっているので 2.0 用に作成された playbook を 1.9 で動作させることができないのでアップグレードしてみました

環境

  • CentOS 6.7 Final
  • Python 2.6
  • Pip 8.0.3
  • Ansible 1.9.3 -> 2.0.1.0

既存の Ansible をアンインストール

  • yum remove ansible

Ansible 2.0 をインストール

  • yum -y install python-devel
  • pip install ansible
  • pip install pycrypto==2.3

Ansible を使うには pycrypto が一緒に必要になります
pycrypto をインストールするのに python-devel が必要になるのでまずインストールします
そして、ansible2.0 が無事インストールできたら pycrypto を 2.3 にダウングレードします
自分の場合最新版の 2.6 がインストールできたのですが、どうやら 2.4 以上のバージョンだと

AttributeError: ‘module’ object has no attribute ‘HAVE_DECL_MPZ_POWM_SEC’

というエラーが発生しうまく動作しないようです

$ ansible --version
ansible 2.0.1.0

無事インストールできてバージョンが表示されれば OK

Tips

遭遇したエラーなどを記載しておきます

ERROR: [DEPRECATED]: include + with_items is a removed deprecated feature (in /root/Documents/work/mqtt_confirm/ansible/roles/mosquitto/tasks/main.yml). Please update your playbooks.

これは 2.0 にアップグレードしたら発生しなくなります

Rolling back uninstall of pycrypto
Command “/usr/bin/python -u -c “import setuptools, tokenize;file=’/tmp/pip-build-5_ybnn/pycrypto/setup.py’;exec(compile
(getattr(tokenize, ‘open’, open)(file).read().replace(‘\r\n’, ‘\n’), file, ‘exec’))” install –record /tmp/pip-XsPI
zH-record/install-record.txt –single-version-externally-managed –compile” failed with error code 1 in /tmp/pip-build-5_yb
nn/pycrypto

これは python-devel をインストールすれば解決します

0 件のコメント:

コメントを投稿