UbuntuにAnsibleをインストールして設定する方法は?

UbuntuでAnsibleを使い始めて、環境のプロビジョニングと構成管理を改善する.


構成管理は、DevOpsライフサイクルの重要な段階です。 ITインフラストラクチャの自動化とオーケストレーションに役立ちます.

構成管理には、Puppet、Ansible、Chef、SaltStackなど、いくつかのツールがあります。そしてもちろん, アンシブル これは、現在DevOpsで最も人気のあるツールの1つです。 1000台のサーバーと完全なITインフラストラクチャを簡単に管理できます.

この記事では以下について説明します.

  • Ansibleインストール
  • SSHキー交換
  • Ansibleクライアントのセットアップ
  • Ansibleテスト

あなたが絶対初心者なら、このAnsible紹介投稿をチェックしてください.

初心者のためのAnsibleの紹介

Ansibleインストール

簡単にするために、2台のサーバーでAnsibleを使用してみましょう。 1つはansible-serverで、もう1つは次のIPを持つansible-clientです。.

  • ansible-server – 10.0.0.1
  • ansible-client – 10.0.0.25

インストールは簡単です。Ansibleを使用するすべてのサーバーで以下を実行する必要があります。この場合、上記の両方のサーバー.

  • 以下のコマンドを実行して、ansibleのインストールに必要なソフトウェアをインストールします.

[メール保護]:〜#apt install software-properties-common

  • ansibleパッケージでリポジトリをインストールする.

[メール保護]:〜#apt-add-repository –yes –update ppa:ansible / ansible

  • 高度なパッケージツール(apt)を更新する

[メール保護]:〜#apt update

  • そして最後に、以下のコマンドを実行してインストールします

[メール保護]:〜#aptインストールansible

必要なパッケージをインストールするのに数秒かかります.

インストールとバージョンを確認するにはどうすればよいですか?

まあ、それは簡単です。 ansibleで–version構文を使用して、以下のように調べることができます.

[メール保護]:〜#ansible-バージョン
ansible 2.8.1
設定ファイル= /etc/ansible/ansible.cfg
設定されたモジュール検索パス= [u ‘/ root / .ansible / plugins / modules’、u ‘/ usr / share / ansible / plugins / modules’]
ansible pythonモジュールの場所= /usr/lib/python2.7/dist-packages/ansible
実行可能な場所= / usr / bin / ansible
pythonバージョン= 2.7.15+(デフォルト、2018年11月27日23:36:35)[GCC 7.3.0]
[メール保護]:〜#

ご覧のとおり、Ansible 2.8.1がインストールされ、構成ファイルの場所、Pythonモジュールなどの必要な情報が提供されます.

次に、SSHキー交換を実行して、サーバーとクライアントが互いに通信できるようにする必要があります。.

SSHキー交換

AnsibleはSSH(Secure Shell)を介してクライアントに接続します.

まず、ansible-serverで公開鍵を生成します。これをansible-clientにコピーする必要があります.

rootユーザーとしてログインしていることを確認します.

  • 以下に示すように、ssh-keygenコマンドを使用してキーを生成します

[メール保護]:〜#ssh-keygen
公開/秘密のRSAキーペアを生成しています.
キーを保存するファイルを入力(/root/.ssh/id_rsa):
パスフレーズを入力(パスフレーズがない場合は空):
同じパスフレーズをもう一度入力してください:
IDは/root/.ssh/id_rsaに保存されました.
公開鍵は/root/.ssh/id_rsa.pubに保存されました.
重要なフィンガープリントは次のとおりです。
SHA256:cDapZBESo + 8XcbXupbtILkFrklUSpwa70Y1c7yH5K1A [メール保護]
キーのランダムアート画像は次のとおりです。
+—[RSA 2048]—-+
| =。+ oo。 |
| 。 B.B. =。 |
| 。 o @oE + |
| 。 * oO *。 |
| o ++。S +。 |
| .o + o。 + |
| .o..o + |
| ..o o。 |
| .o o。 |
+—-[SHA256]—–+
[メール保護]:〜#

お気づきのように、.sshフォルダーに公開鍵が生成されています。完全なパスは/root/.ssh/id_rsa.pubです。

注意:秘密鍵ファイルと公開鍵ファイルが誰でも読み取り可能でないことを確認してください。ファイルを一覧表示して確認できます.

  • .sshフォルダーに移動します。

cd /root/.ssh

  • ファイルを一覧表示する

[メール保護]:〜#ls -l
-rw ——- 1ルートルート1679 6月19日00:37 id_rsa
-rw ——- 1ルートルート404 Jun 19 00:37 id_rsa.pub

権限が間違っていることに気付いた場合は、chmodコマンドを使用して変更できます。

例:

chmod 400 id_rsa
chmod 400 id_rsa.pub

公開鍵をIPアドレスが192.168.56.101のAnsibleホストにコピーしてみましょう

[メール保護]:〜/ .ssh#ssh-copy-id -i〜/ .ssh / id_rsa.pub [メール保護]
/ usr / bin / ssh-copy-id:INFO:インストールされるキーのソース: "/root/.ssh/id_rsa.pub"
ホスト’10 .0.0.25(10.0.0.25) ‘の信頼性を確立できません.
ECDSAキーフィンガープリントはSHA256:eXduPrfV0mhxUcpsZWg + 0oXDim7bHb90caA / Rt79cIsです。.
接続を続行してもよろしいですか(はい/いいえ)?はい
/ usr / bin / ssh-copy-id:INFO:新しいキーでログインして、すでにインストールされているものをすべて除外しようとしています
/ usr / bin / ssh-copy-id:INFO:インストールするキーが1つ残っています-プロンプトが表示されたら、新しいキーをインストールします
[メール保護]のパスワード:

追加されたキーの数:1

次に、次のコマンドでマシンにログインしてみます。 "ssh ‘[メール保護]」"
必要なキーのみが追加されていることを確認してください.

[メール保護]:〜/ .ssh#

上記の出力では、1つのキーが正常に追加されています。これは、SSHキーが交換されたことを示します.

次に、Ansibleクライアントをセットアップします.

Ansibleクライアントのセットアップ

前の手順で説明したように、クライアントサーバーでのAnsibleインストール手順をすでに実行していると思います.

クライアントまたはホストのセットアップは、Ansibleサーバーにクライアントを認識させることに他なりません。そして、そうするために:

  • Ansibleサーバーにログイン
  • / etc / ansibleに移動します
  • お気に入りのエディターを使用して、hostsファイルに以下を追加します

[クライアント]
node1 ansible_ssh_host = 10.0.0.25

  • hostsファイルを保存する

Ansibleテスト

すべての手順を正しく実行した場合は、 成功 ansible-serverで以下のコマンドを実行したときのメッセージ.

[メール保護]:〜/ .ssh#ansible -m pingクライアント
node1 |成功=> {
"ansible_facts":{
"Discovered_interpreter_python": "/ usr / bin / python3"
},
"かわった":false,
"ping": "ピンポン"
}
[メール保護]:〜/ .ssh#

上記のtheaはクライアントにpingして接続をテストし、正常かどうかを確認します.

結論

これが、インストールと遊びから始めるためのアイデアになれば幸いです。より多くのAnsibleチュートリアルをお楽しみに、またはこれもチェックしてください Udemy Mastering Ansibleコース.

タグ:

  • アンシブル

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map