オフライン環境のLinuxにAnsibleをインストール

ITのブログ

概要

本記事はオフライン環境のAnsibleのインストールについて説明します。パソコンはインターネットに接続可能だけど、サーバはインターネットに接続できない場合があると思います。その場合のインストール手順について記載します。

前提

・Hyper-V上にCentOS 8をインストール
・CentOSのパッケージは最小限のインストールを選択
・Ansibleを操作するユーザはrootを使用

手順

パッケージのダウンロード

Ansibleをインストールするためにpip3コマンドが必要となります。pip3のパッケージとAnsibleのインストールに必要なパッケージをpkg.orgとpypi.orgからダウンロードします。

以下のパッケージpkg.orgからダウンロードします。パッケージのバージョンは2021/10月末時点のバージョンを記載しています。
・chkconfig-1.19.1-1.el8.x86_64.rpm
・python39-3.9.7-1.module_el8.6.0+930+10acc06f.x86_64.rpm
・python39-libs-3.9.7-1.module_el8.6.0+930+10acc06f.x86_64.rpm
・python39-pip-wheel-20.2.4-6.module_el8.6.0+930+10acc06f.noarch.rpm
・python39-setuptools-wheel-50.3.2-4.module_el8.6.0+930+10acc06f.noarch.rpm
・python39-pip-20.2.4-3.module_el8.4.0+680+7b309a77.noarch.rpm
・python39-setuptools-50.3.2-4.module_el8.6.0+930+10acc06f.noarch.rpm

以下のパッケージpypi.orgからダウンロードします。パッケージのバージョンは2021/10月末時点のバージョンを記載しています。
・MarkupSafe-2.0.1.tar.gz
・Jinja2-3.0.2.tar.gz
・PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
・pycparser-2.20-py2.py3-none-any.whl
・cffi-1.15.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
・cryptography-35.0.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
・pyparsing-2.4.7-py2.py3-none-any.whl
・packaging-21.2-py3-none-any.whl
・resolvelib-0.5.3-py2.py3-none-any.whl
・ansible-core-2.11.6.tar.gz
・ansible-4.7.0.tar.gz

CentOSのインストール

CentOSをインストールための最低限のパラメータを以下に記載します。

  言語は「日本語」を選択する。 
  日付と時刻を「東京」に変更する。 
  ソフトウェアの選択を「最小限のインストール」に変更する。 
  「インストール先」を選択して「完了」をクリックする。 
  「ネットワークとホスト名」は「優先的に接続する」をONにする。 
  rootのパスワードを設定する。

パッケージのインストール

ダウンロードしたパッケージをインストールします。パッケージをOSに転送する手順は省略します。

・Python39のインストール
rpm -Uvh chkconfig-1.19.1-1.el8.x86_64.rpm
rpm -ivh python39-3.9.7-1.module_el8.6.0+930+10acc06f.x86_64.rpm python39-libs-3.9.7-1.module_el8.6.0+930+10acc06f.x86_64.rpm python39-pip
-wheel-20.2.4-6.module_el8.6.0+930+10acc06f.noarch.rpm python39-setuptools-wheel-50.3.2-4.module_el8.6.0+930+10acc06f.noarch.rpm
rpm -ivh python39-setuptools-50.3.2-4.module_el8.6.0+930+10acc06f.noarch.rpm

・Python39-pipのインストール
rpm -ivh python39-pip-20.2.4-3.module_el8.4.0+680+7b309a77.noarch.rpm

・Ansibleのインストール
pip3 install MarkupSafe-2.0.1.tar.gz
pip3 install Jinja2-3.0.2.tar.gz
pip3 install ansible-4.7.0.tar.gz
pip3 install PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
pip3 install pycparser-2.20-py2.py3-none-any.whl
pip3 install cffi-1.15.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
pip3 install cryptography-35.0.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
pip3 install pyparsing-2.4.7-py2.py3-none-any.whl
pip3 install packaging-21.2-py3-none-any.whl
pip3 install resolvelib-0.5.3-py2.py3-none-any.whl
pip3 install ansible-core-2.11.6.tar.gz
pip3 install ansible-4.7.0.tar.gz

コンフィグの作成

pip3でAnsibleをインストールした場合、コンフィグが作成されていません。そのため、ディレクトリとコンフィグを作成する必要があります。

・以下コマンドでディレクトリを作成する。
mkdir /etc/ansible

・以下コマンドでファイルを作成する。
vi /etc/ansible/hosts

所感

本記事で、オフライン環境のAnsibleインストール手順を作成しましたが、オンライン環境のインストールに比べてかなり手間だと思いました。前提のパッケージを個別でダウンロードしなければいけないのもそうですが、Ansibleの前提パッケージを調べるのがほんと手間でした。インターネットに接続しているCentOSで何のパッケージをダウンロードしているかを見ないとどのパッケージが必要かわからなかったです。

コメント

タイトルとURLをコピーしました