Skip to content

Latest commit

 

History

History
60 lines (49 loc) · 3.02 KB

ansible.md

File metadata and controls

60 lines (49 loc) · 3.02 KB

Ansible機能について

Ansible機能の説明

<project-root>/ansible/roles配下にお好きなAnsibleロールを配置してください。
ロールは入れ子にすることができます。

Ansible機能の使い方

ここでは、sky-touchという名前のロールを作成して、EC2インスタンスに適用する例を説明します。
sky-touchロールの中身は、パラメータで渡されたパスにtouchをするという内容になります。
なお、Ansible自体の使い方は解説しません。

Ansibleロールの準備

  1. <project-root>/ansible/roles配下にロールのディレクトリを作ります。
    例では、sky-touchを作成します。

  2. 作成したロールのディレクトリの中に、ロールの中身を実装します。
    例では、tasks/main.ymlとして、下記の内容のファイルを作成します。

    - name: touch
      file:
        path: "{{ touch_file_path }}"
        state: touch
  3. これで準備は完了です。
    例では、フォルダ構成は以下のようになっています。

    $ tree ansible/roles/
    ansible/roles/
    └── sky-touch
        └── tasks
            └── main.yml
    

playbookにAnsibleロールを選択

  1. インフラストラクチャ一覧画面から、スタックを選択し、Ansibleを適用したいEC2インスタンスを表示します。
    EC2インスタンスが起動していない場合は、起動させてください。

  2. playbookの編集ボタンを押下します。

  3. playbook編集画面が表示されます。
    playbook rolesに表示されているロールが適用されるロールとなります。
    適用したいロールをplaybook rolesに設定してください。
    Ansible roleに表示されているロールを選択し+ボタンを押下することで、playbook rolesに追加することができます。
    例ではplaybook rolessky-touchを設定します。

  4. extra-varsに渡したいパラメータをJSONで指定します。
    例では、下記を設定してください。(touch_file_path/hello-world.txtを設定する内容となります。)

    {"touch_file_path": "/hello-world.txt"}
  5. 設定の保存ボタンを押下します。
    正常に設定が保存されたことを表すダイアログが表示されたことを確認して、OKボタンを押下します。

playbookの適用

  1. インフラストラクチャ一覧画面から、スタックを選択し、Ansibleを適用したいEC2インスタンスを表示します。
  2. Ansibleのボタンを押下し、run ansible-playbookを押下します。
  3. playbookの適用が開始されたことを表すダイアログが表示されたことを確認して、OKボタンを押下します。
  4. しばらくしたのち、playbookの適用が正常に終了したことを確認してください。