Ansibleのインストール方法


1. はじめに

 インターネットに接続できる環境では、rpm,pipなどで比較的簡単にインストールができますが、
企業ではインターネットに接続できない環境でAnsibleを使いたいときがあります。
 ここでは、インターネットに接続できないCentOS7環境でAnsibleのRPM版を導入するための手順を紹介します。

 なお、動作環境で書いているCentOSやAnsibleとバージョンが違う場合は、必要になるRPMが増えたり、手順が変わってくる場合があります。

2. 動作環境

CentOS7
 ベース環境       :サーバー(GUI使用)
 選択した環境のアドオン :互換性ライブラリ
              開発ツール

Ansile           :2.7

3.Ansibleの入手

 
①インターネットに接続でいるPCで以下のサイトにブラウザでアクセスする。
  https://releases.ansible.com/ansible/rpm/release/epel-7-x86_64/

②最新版のRPMをダウンロードする。
 ①の画面の一番下にある以下のファイルが最新になります。
 ansible-(バージョン).el7.ans.noarch.rpm

4.Ansibleに必要な追加ファイルの入手

 
Ansibleインストール時に以下のファイル(RPM)を必要とします。対象は以下の通り。
  python-jinja2
  python-paramiko
  python2-cryptography
  sshpass
  python2-pyasn1
  python-idna
  python-cffi
  python-ply

①インターネットに接続できる別のCentOSが用意できる場合
 インターネットに接続可能な CentOS7で以下のコマンドを実行
 # yumdownloader --destdir . (モジュール)

※インターネットに接続できるCentOS7が用意できない場合、RPMがダウンロードできるサイトから上記ファイルを入手してください。
 例)https://pkgs.org/

5.YUMリポジトリの設定

①root ログインする。

②すべてのYUMリポジトリを無効化。(インターネットに接続してしまうリポジトリを無効にする)
 # yum-config-manager --disable *

③DVDリポジトリを作成

※この方法はお手軽に、GUI環境でrootでログインしたときにマウントされる場所を使用しています。
 CUIで使用している場合や、別のユーザーでログイン後にrootユーザーになる場合は
 DVDのマウント場所が変わりますので、必要に応じてDVDのマウントの設定をしてください。

1)以下のファイルを作成する。

/etc/yum.repos.d/dvd.repo
[CentOS DVD]
name=CentOS-$releasever - Media
baseurl=file:///dvd
gpgcheck=0
enabled=1

2)シンボリックリンクを作成する。
  # ls -l /run/media/root/CentOS\ 7\ x86_64/ /dvd

※ここが本当のマウントポイント

6.Ansibleインストール

①Ansibleと必要モジュールを同じディレクトリに保存する。

②CentOSインストーラーDVDを挿入

③以下のコマンドを実行し、ansibleと必要モジュールをインストールする。
 # yum localinstall ansible-2.7.7-1.el7.ans.noarch.rpm \
    python-cffi-1.6.0-5.el7.x86_64.rpm \
    python-ply-3.4-11.el7.noarch.rpm \
    python-idna-2.4-1.el7.noarch.rpm \
    python2-cryptography-1.7.2-2.el7.x86_64.rpm \
    python-jinja2-2.7.2-2.el7.noarch.rpm \
    python2-pyasn1-0.1.9-7.el7.noarch.rpm \
    python-paramiko-2.1.1-9.el7.noarch.rpm \
    sshpass-1.06-2.el7.x86_64.rpm

④以下のコマンドを入力し、ansibleのコマンドが動作することを確認する。
 # ansible --version