Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ベンダー開発モジュールの使い方

yascaim
November 20, 2019

 ベンダー開発モジュールの使い方

20191120 Ansiblejp ネットワーク部 LTで使用

yascaim

November 20, 2019
Tweet

More Decks by yascaim

Other Decks in Technology

Transcript

  1. 10 今のところ見つけた差分: - NW機器の接続プロトコルの書き方が違う - パラメータの名前が変わってて”undefined” - パラメータの型が変わってる - パラメータで指定できる値が変わってる

    tasks: - name: Enable ethernet interfaces a10_interface_ethernet: a10_host: "{{ a10_host }}" a10_port: "{{ a10_port }}" a10_username: "{{ a10_username }}" a10_password: "{{ a10_password }}" ifnum: "{{ item.ifnum }}" action: enable state: present partition: test with_items: - { ifnum: 1 } - { ifnum: 2 } tasks: - name: Enable ethernet interfaces a10_interface_ethernet: a10_host: "{{ a10_host }}" a10_port: "{{ a10_port }}" a10_username: "{{ a10_username }}" a10_password: "{{ a10_password }}" a10_protocol: “https” ifnum: "{{ item.ifnum }}" action: enable state: present a10_partition: name: test shared: 0 with_items: - { ifnum: 1 } - { ifnum: 2 } プロトコル指定が requiredなパラメータで増えた パラメータの名前が変わってる 気付いたら辞書型になってる shared指定の仕方が変わってる
  2. 12 メリット: 
 - やりたいこと:モジュール が 1:1で大体ある
 - YAMLで書くため、機器初心者でも可読性が高い
 - 強制的にモジュールのコードを読むことになる
 デメリット:


    - Ansible docのリリースノートに載ってない
 - OSのリリースノートにも載ってない
 - モジュールを使ったサンプルコードが落ちてない
 用法用量は模索中
  3. 17 動作確認
 事前ログ取得
 事後ログ取得
 設定変更
 ・どこから何を確認するかを明記 ・「異常がないこと」という記載を一切排除 ・作業前との比較結果  ↑全て比較、一致、含む、含まない で記述 ・設定変更/追加する順序を考える

    - script投入の順番 - 作業機器の順番 ・作業を切り戻す際の順序を考える ・検証環境で絶対試す 最初からAnsible化することを想定し、 Playbookにし易い手順書を常に心がける。