CentOS / RHEL8にAnsibleAutomationToolをインストールする方法


Ansibleは無料のオープンソース自動化ツールであり、システム管理者はノードにエージェントをインストールしなくても、中央サーバーから数百のノードを構成および制御できます。

SSHプロトコルに依存してリモートノードと通信します。 PuppetやChefなどの他の管理ツールと比較して、Ansibleは、その使いやすさとインストールの点で人気があります。

このチュートリアルでは、RHEL/CentOS 8LinuxディストリビューションにAnsible自動化ツールをインストールして構成する方法を学習します。

重要:CentOS 8の場合、ansibleは従来EPELリポジトリを介して配布されていましたが、公式パッケージはまだありませんが、現在作業中です。そのため、標準のPIP(Pythonパッケージマネージャー)を使用して、CentOS8にAnsibleをインストールしています。

RHEL 8で、この記事に示すように、インストールする対応するAnsibleバージョンの公式RedHatリポジトリーを有効にします。 RHEL 8でPIPを使用しないでください!。

ステップ1:Python3をインストールする

通常、RHEL8およびCentOS8には、デフォルトでPython3がすでにインストールされています。ただし、何らかの理由でPython3がインストールされていない場合は、次のdnfコマンドを使用してインストールしてください。 Sudo権限を持つ通常のユーザーとしてログインする必要があることを確認してください。

# su - ravisaive
$ sudo dnf update
$ sudo dnf install python3

実際にpython3がインストールされていることを確認するには、コマンドを実行します。

$ python3 -V

ステップ2:PIPのインストール–Pythonパッケージインストーラー

PipはPythonのパッケージマネージャーであり、これもプリインストールされていますが、システムにPipがない場合は、コマンドを使用してインストールしてください。

$ sudo dnf install python3-pip

ステップ3:Ansible AutomationToolをインストールする

すべての前提条件が満たされている状態で、CentOS8でコマンドを実行してansibleをインストールします。

# pip3 install ansible --user

RHEL 8で、Ansible Engineリポジトリを有効にして、次のように対応するAnsibleバージョンをインストールします。

# subscription-manager repos --enable ansible-2.8-for-rhel-8-x86_64-rpms
# dnf -y install ansible

Ansibleのバージョンを確認するには、を実行します。

# ansible --version

完璧!ご覧のとおり、インストールされているAnsibleのバージョンはAnsible2.8.5です。

ステップ4:Ansibleオートメーションツールをテストする

ansibleをテストするには、最初にsshが稼働していることを確認します。

$ sudo systemctl status sshd

次に、/ etc/ansibleディレクトリに hosts ファイルを作成して、ホストマシンを定義する必要があります。

$ sudo mkdir /etc/ansible  
$ cd /etc/ansible
$ sudo touch hosts

hosts ファイルは、すべてのリモートノードが存在するインベントリになります。

次に、お気に入りのエディターで hosts ファイルを開き、図のようにリモートノードを定義します。

[web]
192.168.0.104

次に、公開鍵をリモートノードにコピーするSSH鍵を生成します。

$ ssh-keygen

生成されたSSHキーをリモートノードにコピーするには、コマンドを実行します。

$ ssh-copy-id [email protected]

次に、Ansibleを使用して、図のようにリモートノードにpingを実行します。

$ ansible -i /etc/ansible/hosts web -m ping  

RHEL/CentOS 8LinuxディストリビューションにAnsibleを正常にインストールしてテストすることができました。ご不明な点がございましたら、下のコメントセクションでお知らせください。