Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ベンダー開発モジュールの使い方
Search
yascaim
November 20, 2019
Technology
2.5k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ベンダー開発モジュールの使い方
20191120 Ansiblejp ネットワーク部 LTで使用
yascaim
November 20, 2019
More Decks by yascaim
See All by yascaim
Ansible Towerでやってること、やれること、やりたいこと
yascaim
3
2.4k
Other Decks in Technology
See All in Technology
AI 時代の Azure エンジニアリング ~ 私たちは何を磨き、何を任せるのか ~
chack411
1
540
AI駆動開発の時代になったのでトヨタ生産方式から見直す
terurou
4
5k
AI駆動開発、viviONの1年 ── うまくいったこと・いかなかったこと
vivion
0
270
MCPゲートウェイを作って運用してわかったこと — Agent時代の権限管理の現在地
mtpooh
10
3.2k
Lambda MicroVMsが分からなすぎたので使い所を1から考えてみた
tsukuboshi
2
430
全PRの83%が AIレビューだけでマージできるようになった開発組織は その後どうなったか @2026/10
athug
0
130
カンファレンスに参加した後の浮遊感とセルフケア
pauli
0
320
Snapshot Testing in Practice: Predictable and Reliable SwiftUI Views
fespinoza
0
160
Codex概要
ymiya55
0
470
More Freedom on the Same Shared GPU Cluster: A Small Team’s Experience with vCluster
nttcom
0
140
AgentCoreで実践するハーネスエンジニアリング
yakumo
1
290
組み立てて楽しむ AWS Blocks 入門
kmiya84377
0
220
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
6.3k
For a Future-Friendly Web
brad_frost
184
10k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
770
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Deep Space Network (abreviated)
tonyrice
0
360
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Raft: Consensus for Rubyists
vanstee
142
7.7k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.7k
Thoughts on Productivity
jonyablonski
76
5.4k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
530
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
320
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Transcript
1 ベンダー開発の モジュールの使い方 (オマケ) 手順書をPlaybook化 するときに気にしてる事 @yascaim1
2 仕事:DCNWの設計、構築? 好きなもの: - Ansible - ボードゲーム - 数学
- ケーキ Ansible歴:1年6か月 自己紹介
3 A10製品とAnsible
4 A10networksとは 製品概要: - ロードバランサー、セキュリティプラットフォームなど - CLI,GUI,APIが揃ってて ”Cisco” 触った人なら馴染み易い -
まだ商用で使えてないけど面白い機能が結構ある
5 https://docs.ansible.com/ansible/latest/modules/list_of_network_modules.html モジュールはどうなの?
6 あるところにはある 大体1,600くらい(やべー https://github.com/a10networks/a10-ansible
7 用法用量を守らない使い方
8 Ansibleもくもく会 また企画したろ。 モジュール増えたなぁ とりあえずgit clone したろ。 検証環境で ワークショップの復習だ!
9 Playbook全部動かない...ッ!
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指定の仕方が変わってる
11 メリデメの整理
12 メリット: - やりたいこと:モジュール が 1:1で大体ある - YAMLで書くため、機器初心者でも可読性が高い - 強制的にモジュールのコードを読むことになる デメリット:
- Ansible docのリリースノートに載ってない - OSのリリースノートにも載ってない - モジュールを使ったサンプルコードが落ちてない 用法用量は模索中
13 まとめ
14 - 当然ですが商用環境でいきなりアップデートはやらない - github見て何かが違う!?って思ったらサポートに聞く - 極力、変数はPlaybookの外で管理する - library を別の
directoryで管理する(ansible.cfgで切替える)
ご清聴ありがとうございました! 15
16 おまけ(気を付けてること編)
17 動作確認 事前ログ取得 事後ログ取得 設定変更 ・どこから何を確認するかを明記 ・「異常がないこと」という記載を一切排除 ・作業前との比較結果 ↑全て比較、一致、含む、含まない で記述 ・設定変更/追加する順序を考える
- script投入の順番 - 作業機器の順番 ・作業を切り戻す際の順序を考える ・検証環境で絶対試す 最初からAnsible化することを想定し、 Playbookにし易い手順書を常に心がける。