Cisco / CCNA 200-301 v2.0

試験項目 5.5 · CCNA-149

Ansible Fundamentals

ドメイン 5 · AI・ネットワーク運用・管理 · AnsibleによるConfiguration Management

このページのゴール

AnsibleでNetwork DeviceへCommandを実行するためのAgentless Architecture、Inventory、Playbook、Play、Task、Moduleの関係を読み取れるようにする。

このページで学ぶこと

  • Ansible Overview
  • Agentless Architecture
  • Control / Managed Device Architecture
  • Ansible Inventory
  • Inventory Group / hosts Relationship
  • Connection Information
  • Ansible Playbook
  • Ansible Play
  • Ansible Task
  • Ansible Module

Ansibleの基本構造

AnsibleはConfiguration Management / Automationに利用できるAgentless Toolである。Control側からManagement Interfaceを介してManaged Deviceへ接続し、InventoryとPlaybookを使って対象と実行内容を定義する。

Ansible Control Environment
  ├─ Inventory
  │    └─ Host / Group / Connection Information
  └─ Playbook
       └─ Play
           ├─ hosts
           └─ tasks
                └─ module
                     ↓
                Managed Device

Agentless Architecture

Agentlessとは、Managed Device側へAnsible専用AgentをInstallしなくても管理できる構造を指す。認証やNetwork Connectivity、利用可能なManagement Interfaceは依然として必要である。

Inventory

Inventoryは管理対象HostやGroupを定義する。IP Address、Network OS、Connection MethodなどのVariableをInventoryや関連Variableに持たせることもできるが、Connection情報の唯一の保存場所ではない。

[branch]
R1
R2

[datacenter]
SW1
SW2

Inventory Groupとhosts:

Playbookのhosts:はInventory内のHostまたはGroupを参照する。Page149ではこの構造関係を理解し、具体的な実行対象Deviceの決定はPage150で扱う。

- hosts: branch
  tasks:
    ...

Playbook / Play / Task / Module

PlaybookはYAMLでAutomation Workflowを定義する。Playは対象HostとTasksを関連付け、TaskはModuleを呼び出してActionを実行する。Moduleは実際のOperationを行うReusable Componentである。

- hosts: routers
  tasks:
    - name: Verify interfaces
      cisco.ios.ios_command:
        commands:
          - show ip interface brief

Module表記

ios_command / ios_configのようなShort Nameと、cisco.ios.ios_command / cisco.ios.ios_configのようなFQCNが現れ得る。Objective 5.5では完全修飾名の暗記ではなく、Moduleが担うOperationを読み取ることを重視する。

重要な注意点

Agentlessは認証不要という意味ではない。InventoryとPlaybookを同一視しない。hosts:はCLI Commandではなく対象を指定する。Connection情報はInventoryだけに限定されない。Short NameとFQCNのどちらか一方だけを唯一の正解として扱わない。

理解確認

このページの内容を20問で確認します。

理解確認20問へ →