タスクは、Ansibleプレイブックを使用して自動化できるアクションの最小単位です。 プレイブックには通常、Webサーバーのセットアップや、リモート環境へのアプリケーションの展開など、目標を達成するための一連のタスクが含まれています。

Ansibleは、プレイブック内で定義されているのと同じ順序でタスクを実行します。 LEMPサーバーのセットアップなどの手順を自動化する前に、すべてを完了するために必要な手動の手順と、それらを完了する必要がある順序を評価する必要があります。 次に、必要なタスクと、より少ないステップで目標を達成するために使用できるモジュールを決定できます。

Modules は、生のbashコマンドとして実行する必要がある操作を実行するためのショートカットを提供します。 これらは、さまざまなオペレーティングシステム間でコマンドを抽象化するためにもよく使用されます。

このガイドの前の部分で最初のプレイブックを作成したときに、を使用してメッセージを出力する単一のタスクを定義しました。 debug. そのプレイブックをもう一度見てみましょう。 あなたは使用することができます cat 検査のためにそのファイルの内容を印刷するコマンド:

  1. cat ~/ansible-practice/playbook-01.yml

このプレイブックには、プレイの出力にメッセージを出力する単一のタスクが含まれています。

〜/ ansible-practice / playbook-01.yml
---
- hosts: all
  tasks:
    - name: Print message
      debug:
        msg: Hello Ansible World

タスクは、名前の下のリストとして定義されます tasks 劇中、同じレベルで hosts そのプレイのターゲットを定義するディレクティブ。 The name プロパティは、そのタスクが実行されようとしているときに出力される出力を定義します。

サンプルタスクは、 debug モジュール。プレイ中にメッセージを表示できます。 これらのメッセージは、たとえば、変数の内容やコマンドによって返される出力メッセージなどのデバッグ情報を表示するために使用できます。

各モジュールには、独自のオプションとプロパティのセットがあります。 The debug モジュールは、という名前のプロパティを期待します msg 印刷するメッセージが含まれています。 インデント(2スペース)に特に注意してください。 msg 内部のプロパティである必要があります debug.