GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu 18.04 に Ansible をインストールする方法

この記事では、Ubuntu 18.04 LTS に Ansible をインストールして構成するために必要な手順について説明しました。このチュートリアルを続行する前に、sudo 権限を持つユーザーとしてログインしていることを確認してください。このチュートリアルのすべてのコマンドは、root 以外のユーザーとして実行する必要があります。

Ansible は、UNIX のようなオペレーティング システム用の無料でオープンソースの構成および自動化ツールです。これは Python で書かれており、Chef や Puppet に似ていますが、1 つの違いがあり、Ansible の利点は、ノードにエージェントをインストールする必要がないことです。ノードとの通信には SSH を使用します。

この記事では、Ubuntu に Ansible をインストールして構成する方法を示し、その 2 つのノードの管理を試みます。

  • Ansible サーバー – ansible.idroot.us (192.168.13.33)
  • Ansible クライアント – 192.168.100.120

Ubuntu に Ansible をインストール

ステップ 1. まず、Ubuntu サーバーにパッケージをインストールする前に、すべてのシステム パッケージが更新されていることを確認することを常にお勧めします。

sudo apt update
sudo apt upgrade

ステップ 2. Ubuntu に Ansible をインストールします。

最初に ansible リポジトリを有効にする必要があります。次のコマンドでリポジトリをインストールします:

sudo apt-add-repository ppa:ansible/ansible

Ansible リポジトリを追加したら、以下のコマンドを実行してインストールします:

sudo apt update
sudo apt install ansible

Ansible が正常にインストールされたら、以下を実行して、インストールされている ansible のバージョンを確認できます。

sudo ansible --version

ステップ 3. ansible サーバーと ansible クライアントの間でパスワードなしの SSH 構成をセットアップします。

ansible サーバーで ssh キーを生成し、このキーを ansible クライアントの公開キーにコピーする必要があります:

[[email protected] ~]# ssh-keygen -t rsa -b 4096 -C "[email protected]"
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:rqAwbwQ8/meilanamaria4D2V0fQ49amw2WKbYIA [email protected]
The key's randomart image is:
+---[RSA 4096]----+
| .oo.+o |
| . =.=.. . |
|. E o + X . o |
|.o. + + = X . |
| .o. + oSX + |
| .. o.+ = |
|o. o oo.o |
| +.. +oo |
| .o ... |
+----[SHA256]-----+
[[email protected] ~]#

ssh-copy-id コマンドを使用して、公開鍵を ansible サーバーから ansible クライアントにコピーできます。

[[email protected] ~]# ssh-copy-id [email protected]
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:

Number of key(s) added: 1

Now try logging into the machine, with: "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

[[email protected] ~]#
[[email protected] ~]# ssh-copy-id [email protected]
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host '192.168.43.131 (192.168.43.131)' can't be established.
ECDSA key fingerprint is SHA256:OuHrnRxppengenkimpoi5Z+1tOWOF8eYZ5Le5MNwUQ.
ECDSA key fingerprint is MD5:78:1c:a5:72:bb:25:fa:c7:67:39:fc:91:b9:fb:b6:20.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:

Number of key(s) added: 1

Now try logging into the machine, with: "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

[[email protected] ~]#
===============================
[[email protected] ~]# ssh [email protected]
Last login: Thu Sep 19 16:00:57 2019 from bezafari-c1
[[email protected] ~]# exit
logout
Connection to 192.168.100.120 closed.
[[email protected] ~]#

Ansible サーバーと Ansible クライアントがパスワードレスで動作しているかどうかを確認する必要があります。以下のように確認できます:

[[email protected] ~]# ssh [email protected]
Last login: Thu Jan 17 17:00:57 2019 from bezafari-c1
[[email protected] ~]# exit
logout
Connection to 192.168.100.120 closed.
[[email protected] ~]#

ステップ 4. Ansible クライアントを管理するための Ansible サーバー構成。

Ansible サーバー ホスト ファイルを使用して、Ansible サーバーと Ansible クライアントのインベントリを作成できます。ホスト ファイルは、ansible サーバー /etc/ansible/host の次のパスにあります。

[[email protected] ~]# nano /etc/ansible/hosts
[test-servers]
192.168.13.33
192.168.100.120

ステップ 5. ansible サーバーから ansible クライアントを管理します。

ping を使用して「test-server」または ansible クライアントの接続を確認します:

[[email protected] ~]# ansible -m ping 'test-servers'
192.168.13.33 | SUCCESS => {
"changed": false,
"ping": "pong"
}
192.168.100.120 | SUCCESS => {
"changed": false,
"ping": "pong"
}
[[email protected] ~]#

ansible サーバーから ansible クライアントのアップタイムを確認できます:

[[email protected] ~]# ansible -m command -a "uptime" 'test-servers'
192.168.100.120 | CHANGED | rc=0 >>
16:17:35 up 20 min, 3 users, load average: 0.09, 0.16, 0.29

192.168.13.33 | CHANGED | rc=0 >>
16:17:35 up 22 min, 4 users, load average: 0.18, 0.29, 0.55

[[email protected] ~]#

コマンドの出力をファイルにリダイレクトします。以下のように:

[[email protected] ~]# ansible -m command -a "df -Th" 'test-servers' > /tmp/command-output.txt
[[email protected] ~]# cat /tmp/command-output.txt
192.168.13.33 | CHANGED | rc=0 >>
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 13G 5.0G 8.0G 39% /
devtmpfs devtmpfs 482M 0 482M 0% /dev
tmpfs tmpfs 497M 212K 497M 1% /dev/shm
tmpfs tmpfs 497M 7.1M 490M 2% /run
tmpfs tmpfs 497M 0 497M 0% /sys/fs/cgroup
/dev/sda1 xfs 497M 158M 340M 32% /boot
tmpfs tmpfs 100M 16K 100M 1% /run/user/0
192.168.100.120 | CHANGED | rc=0 >>
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 13G 3.9G 9.1G 30% /
devtmpfs devtmpfs 906M 0 906M 0% /dev
tmpfs tmpfs 921M 84K 920M 1% /dev/shm
tmpfs tmpfs 921M 8.7M 912M 1% /run
tmpfs tmpfs 921M 0 921M 0% /sys/fs/cgroup
/dev/sda1 xfs 497M 157M 341M 32% /boot
tmpfs tmpfs 185M 20K 184M 1% /run/user/42
tmpfs tmpfs 185M 0 185M 0% /run/user/0
[[email protected] ~]#

Ubuntu 18.04 に Ansible をインストールするために必要なことはこれだけです。この簡単なヒントがお役に立てば幸いです。質問や提案がある場合は、下にコメントを残してください。


Ubuntu
  1. UbuntuServer21.04にAnsibleをインストールする方法

  2. Ubuntu18.04LTSにAnsibleをインストールする方法

  3. Ubuntu16.04にRをインストールする方法

  1. Ubuntu20.04にRをインストールする方法

  2. Ubuntu18.04にGoをインストールする方法

  3. Ubuntu18.04にRをインストールする方法

  1. Ubuntu20.04LTSにAnsibleAWXをインストールする方法

  2. Ubuntu 20.04 LTS/21.04にAnsibleをインストールする方法

  3. UbuntuにAnsibleをインストールする方法