Ansible pre_tasksとは何ですか? OSを更新し、Pythonをインストールし、リモートホスト[Linux]にJREをインストールする方法は?

公開: 2019-05-10

Ansible pre_tasksとは何ですか? OSを更新し、Pythonをインストールし、リモートホストにJDKをインストールする方法

Ansibleのpre_tasksとは何ですか?

pre_tasksは、 .ymlファイルに記載されているtasksを実行する前にAnsibleが実行するタスクです。

このシナリオを考えてみましょう。 Amazon EC2クラウドまたはGoogle Cloudで新しいインスタンスをプロビジョニングしました。 最初に行う必要があるのは、OSアップデートをインストールすることです。 次に、最新のPythonをインストールし、Javaをインストールします。

上記のすべての事前タスクが完了したら、アプリケーションをコピーして、それらのアプリケーションを起動する必要があります。 アプリケーションの依存関係をコピーする前に、すべての基本的なバイナリをインストールすることが非常に必須です。

このチュートリアルでは、 pre_taskタグを使用してpreタスクを実行する方法の詳細をすべて説明します。

Ansible pre_tasksとは何ですか? OSを更新し、Pythonをインストールし、リモートホストにJREをインストールしますか?

このチュートリアルでは、以下のシナリオに従います。

  1. ファイルcrunchify-hostsファイルを作成し、pre_taskを実行するIPを追加します。
  2. ansibleプレイブックであるcrunchify-install-python-java.ymlファイルを作成します。
    • pre_task:python-simplejsonをインストールします
    • pre_task:python-minimalをインストールします
    • pre_task:システムアップデートをインストールします
    • pre_task:最新のJREをインストールします
  3. Pythonバージョンを入手する
  4. Javaバージョンを取得する
  5. すべてのデバッグ結果を印刷する
  6. コマンドansible-playbook-i ./crunchify-hosts crunchify-install-python-java.ymlを実行すると、すべてのタスクが実行されます

crunchify-hostsファイル

ご覧のとおり、パスワードなしの認証にcrunchify.pemファイルを使用しています。 パスワードプロンプトなしでホストに接続できます。

crunchify-install-python-java.ymlファイル

変数を登録するためにAnsibleでregisterキーワードを使用しています。 rawタスクの戻り値を格納します。

debugstdout_linesを使用すると、コマンドラインに結果を出力できます。

コマンドを実行します:

ansible-playbook -i ./crunchify-hosts crunchify-install-python-java.yml

Ansible出力:

それでおしまい。

ご覧のとおり、このチュートリアルでは、リモートホストにPython、Java、およびシステムの更新をインストールしています。 また、結果をMacターミナルウィンドウに返しました。

次は何ですか?

ファイル、ディレクトリ、またはスクリプトをローカルホストからリモートホストにコピーする方法に関するチュートリアルを確認してみてください。