Ansibleがインストールできないときの解消方法

投稿者: | 2016年9月12日

下記のようにpipでansibleをインストールしましたが正常にインストールされませんでした。

$ sudo pip install ansible

バージョンチェックのコマンドを実行したところ次のようにエラーとなってしまいました。

$ ansible --version
ERROR! Unexpected Exception: (setuptools 0.9.8 (/usr/lib/python2.7/site-packages), Requirement.parse('setuptools>=11.3'))
the full traceback was:
Traceback (most recent call last):
  File "/usr/bin/ansible", line 81, in <module>
    from ansible.cli.adhoc import AdHocCLI as mycli
  File "/usr/lib/python2.7/site-packages/ansible/cli/adhoc.py", line 28, in <module>
    from ansible.executor.task_queue_manager import TaskQueueManager
  File "/usr/lib/python2.7/site-packages/ansible/executor/task_queue_manager.py", line 28, in <module>
    from ansible.executor.play_iterator import PlayIterator
  File "/usr/lib/python2.7/site-packages/ansible/executor/play_iterator.py", line 29, in <module>
    from ansible.playbook.block import Block
  File "/usr/lib/python2.7/site-packages/ansible/playbook/__init__.py", line 25, in <module>
    from ansible.playbook.play import Play
  File "/usr/lib/python2.7/site-packages/ansible/playbook/play.py", line 27, in <module>
    from ansible.playbook.base import Base
  File "/usr/lib/python2.7/site-packages/ansible/playbook/base.py", line 35, in <module>
    from ansible.parsing.dataloader import DataLoader
  File "/usr/lib/python2.7/site-packages/ansible/parsing/dataloader.py", line 33, in <module>
    from ansible.parsing.vault import VaultLib
  File "/usr/lib/python2.7/site-packages/ansible/parsing/vault/__init__.py", line 67, in <module>
    from cryptography.hazmat.primitives.hashes import SHA256 as c_SHA256
  File "/usr/lib64/python2.7/site-packages/cryptography/hazmat/primitives/hashes.py", line 15, in <module>
    from cryptography.hazmat.backends.interfaces import HashBackend
  File "/usr/lib64/python2.7/site-packages/cryptography/hazmat/backends/__init__.py", line 7, in <module>
    import pkg_resources
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 3011, in <module>
    parse_requirements(__requires__), Environment()
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 630, in resolve
    raise VersionConflict(dist,req) # XXX put more info here
VersionConflict: (setuptools 0.9.8 (/usr/lib/python2.7/site-packages), Requirement.parse('setuptools>=11.3'))

エラーの内容を見る限りsetuptoolsのバージョンが問題なので確認します。

$ sudo easy_install --version
setuptools 0.9.8

setuptoolsのバージョンは11.3以上の必要があるようなのでアップデートします。
その前にansibleを一旦アンインストールします。

$ sudo pip uninstall ansible

setuptoolsをアップデートします。

$ sudo easy_install -U setuptools

アップデートしたsetuptoolsのバージョンを確認します。

$ sudo easy_install --version
setuptools 24.0.2 from /usr/lib/python2.7/site-packages/setuptools-24.0.2-py2.7.egg (Python 2.7)

バージョンが24.0.2と新しくなったことが確認できます。
再び、ansibleをインストールします。

$ sudo pip install ansible

ansibleのバージョン確認のコマンドを実行します。

$ ansible --version
ansible 2.1.0.0
  config file =
  configured module search path = Default w/o overrides

正常にインストールされたことが確認できました。
今回使用したOSはCentOS6だったのでソフトウェアのバージョンが古かったようです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA