Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ネットワークエンジニアがAnsibleと出会った話
Search
Recruit Technologies
February 15, 2019
Technology
5
2.9k
ネットワークエンジニアがAnsibleと出会った話
2019/02/15 Ansible Night in Nagoya 2019.02での、遠藤の講演資料になります
Recruit Technologies
February 15, 2019
Tweet
Share
More Decks by Recruit Technologies
See All by Recruit Technologies
障害はチャンスだ! 障害を前向きに捉える
rtechkouhou
1
640
Flutter移行の苦労と、乗り越えた先に得られたもの
rtechkouhou
3
11k
ここ数年間のタウンワークiOSアプリのエンジニアのチャレンジ
rtechkouhou
1
1.5k
大規模環境をAWS Transit Gatewayで設計/移行する前に考える3つのポイントと移行への挑戦
rtechkouhou
1
1.9k
【61期 新人BootCamp】TOC入門
rtechkouhou
3
41k
【RTC新人研修 】 TPS
rtechkouhou
1
41k
Android Boot Camp 2020
rtechkouhou
0
41k
HTML/CSS
rtechkouhou
10
50k
TypeScript Bootcamp 2020
rtechkouhou
9
45k
Other Decks in Technology
See All in Technology
マルチモーダル / AI Agent / LLMOps 3つの技術トレンドで理解するLLMの今後の展望
hirosatogamo
37
12k
強いチームと開発生産性
onk
PRO
35
11k
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
130
100 名超が参加した日経グループ横断の競技型 AWS 学習イベント「Nikkei Group AWS GameDay」の紹介/mediajaws202411
nikkei_engineer_recruiting
1
170
Platform Engineering for Software Developers and Architects
syntasso
1
520
アプリエンジニアのためのGraphQL入門.pdf
spycwolf
0
100
20241120_JAWS_東京_ランチタイムLT#17_AWS認定全冠の先へ
tsumita
2
300
AGIについてChatGPTに聞いてみた
blueb
0
130
Security-JAWS【第35回】勉強会クラウドにおけるマルウェアやコンテンツ改ざんへの対策
4su_para
0
180
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
180
Taming you application's environments
salaboy
0
200
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
310
Featured
See All Featured
Navigating Team Friction
lara
183
14k
Agile that works and the tools we love
rasmusluckow
327
21k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
Building Your Own Lightsaber
phodgson
103
6.1k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
KATA
mclloyd
29
14k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
A Tale of Four Properties
chriscoyier
156
23k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2.1k
Bash Introduction
62gerente
608
210k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Transcript
ネットワークエンジニアがAnsibleと出会った話 2019/2/15 株式会社リクルートテクノロジーズ 遠藤 惇平
これからお話すること 2 (C) Recruit Technologies Co., Ltd. - All rights
reserved. シンプルでパワフルなAnsibleに惹かれ、 社内で提案して案件化し、 仲間と試行錯誤しながら計画を立て、 ようやく検証開始までこぎつけた 一連のエピソードをお話します
これからお話すること 3 (C) Recruit Technologies Co., Ltd. - All rights
reserved. 何か共感し、 一部でも持ち帰っていただければ とても嬉しいです
コンテンツ 4 (C) Recruit Technologies Co., Ltd. - All rights
reserved. ▪こんな流れでお話します 1. Ansibleに興味を持った 2. Ansible検証を案件化した 3. 案件計画を立てた
コンテンツ 5 (C) Recruit Technologies Co., Ltd. - All rights
reserved. 1. Ansibleに興味を持った 2. Ansible検証を案件化した 3. 案件計画を立てた
1. Ansibleに興味を持った 6 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪普段の仕事は、ほぼネットワーク設定とその準備 手順書作成 コピペで設定投入
1. Ansibleに興味を持った 7 (C) Recruit Technologies Co., Ltd. - All
rights reserved. この仕事を
1. Ansibleに興味を持った 8 (C) Recruit Technologies Co., Ltd. - All
rights reserved. 自動化して 楽にしたい
1. Ansibleに興味を持った 9 (C) Recruit Technologies Co., Ltd. - All
rights reserved. そして 目をつけたのが
1. Ansibleに興味を持った 10 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪みんな大好き Ansible
1. Ansibleに興味を持った 11 (C) Recruit Technologies Co., Ltd. - All
rights reserved. Ansibleの どこが良かったのか
1. Ansibleに興味を持った 12 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪(個人的に嬉しい) Ansibleの特長 変数 Playbook 1. ネットワーク機器に対応 2. プログラミング不要 3. 変数と Playbook の ファイル分離が可能 4. 条件分岐が可能
1. Ansibleに興味を持った 13 (C) Recruit Technologies Co., Ltd. - All
rights reserved. どう良かったか
1. Ansibleに興味を持った 14 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪ネットワーク機器に対応 これは大前提
1. Ansibleに興味を持った 15 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪プログラミング不要 プログラミングが苦手な ネットワークエンジニアにウケる YAML
1. Ansibleに興味を持った 16 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪変数と Playbook のファイル分離が可能 Playbookを使う分には Playbookをいじる必要すらない interfaces: - name: gi 1/0/1 ip_address: 10.0.0.1/24 - name: configure ip addresses ios_l3_interface: name: "{{ item.name }}" ipv4: "{{ item.ip_address }}" loop: "{{ interfaces }}" <変数ファイル> <Playbook> こっちだけ編集する
1. Ansibleに興味を持った 17 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪条件分岐が可能 手作業と同等の 手堅い確認プロセスを維持できる 確認コマンド実行 設定変更 継続 中止 想定外 想定通り
1. Ansibleに興味を持った 18 (C) Recruit Technologies Co., Ltd. - All
rights reserved. まさにAnsibleは
1. Ansibleに興味を持った 19 (C) Recruit Technologies Co., Ltd. - All
rights reserved. インフラ自動化に うってつけ
コンテンツ 20 (C) Recruit Technologies Co., Ltd. - All rights
reserved. 1. Ansibleに興味を持った 2. Ansible検証を案件化した 3. 案件計画を立てた
1. Ansibleに興味を持った 21 (C) Recruit Technologies Co., Ltd. - All
rights reserved. 突然ですが
2. Ansible検証を案件化した 22 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ほとばしる Ansibleの可能性に 興奮を 抑えきれなくなった ある日のこと
2. Ansible検証を案件化した 23 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪先輩 & 上司との会話 「Ansibleでネットワーク自動化できそうです!」 「家で検証して筋が良ければ提案します!」 先輩 「もう会社で検証すれば?上司に聞いてみ?」 私
2. Ansible検証を案件化した 24 (C) Recruit Technologies Co., Ltd. - All
rights reserved. 上司 「いいよ。」
2. Ansible検証を案件化した 25 (C) Recruit Technologies Co., Ltd. - All
rights reserved. 案 件 化 ※実際は10分ぐらい相談しました
2. Ansible検証を案件化した 26 (C) Recruit Technologies Co., Ltd. - All
rights reserved. 以 上
コンテンツ 27 (C) Recruit Technologies Co., Ltd. - All rights
reserved. 1. Ansibleに興味を持った 2. Ansible検証を案件化した 3. 案件計画を立てた
3. 案件計画を立てた 28 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪当初の計画イメージ 項目 詳細 部署目標 (上位目的) ・事業への貢献 ・新しい技術の探求 案件目的 工数削減? 流れ 自動化対象を決めたらすぐ実装? 自動化対象 作業頻度の高い作業?
3. 案件計画を立てた 29 (C) Recruit Technologies Co., Ltd. - All
rights reserved. 次に 各担当者にヒアリングしてみた ※ここで計画に磨きがかかった
3. 案件計画を立てた 30 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪運用改善担当者へのヒアリング Q. 「案件計画は妥当?」
3. 案件計画を立てた 31 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪運用改善担当者へのヒアリング Q. 「案件計画は妥当?」 A1. 「工数削減を目的にするのはおすすめしない」 ・「今回の場合」開発工数の大きさが目立つ ・付加価値向上を目的にしたい
3. 案件計画を立てた 32 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪運用改善担当者へのヒアリング Q. 「案件計画は妥当?」 A1. 「工数削減を目的にするのはおすすめしない」 ・「今回の場合」開発工数の大きさが目立つ ・付加価値向上を目的にしたい A2. 「実装の前に、検証のステップを設けよう」 ・慣れない技術だし、まずは理解を深めたい
3. 案件計画を立てた 33 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪計画の修正 項目 詳細 部署目標 (上位目的) ・事業への貢献 ・新しい技術の探求 案件目的 ・工数削減? ・納期短縮 ・自動化ノウハウの蓄積 ・作業負荷の低減 流れ 自動化対象を決めたらすぐ実装? 1.自動化対象を決める 2.1つの作業を自動化してみる (PoC検証) 3.Ansibleの運用装着 & 自動化範囲拡大 自動化対象 作業頻度の高い作業?
3. 案件計画を立てた 34 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪ネットワークチーム (利用者) へのヒアリング Q1. 案件計画とAnsibleでできることの共有
3. 案件計画を立てた 35 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪ネットワークチーム (利用者) へのヒアリング Q1. 案件計画とAnsibleでできることの共有 A1. 「Ansibleすげぇ! 自動化もありがたい!」
3. 案件計画を立てた 36 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪ネットワークチーム (利用者) へのヒアリング Q1. 案件計画とAnsibleでできることの共有 A1. 「Ansibleすげぇ! 自動化もありがたい!」 Q2. 「自動化対象のブレスト協力して!」
3. 案件計画を立てた 37 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪ネットワークチーム (利用者) へのヒアリング Q1. 案件計画とAnsibleでできることの共有 A1. 「Ansibleすげぇ! 自動化もありがたい!」 A2. 20作業の洗い出し & 優先順位決定 Q2. 「自動化対象のブレスト協力して!」 ・第一優先:自動化難易度の低さ ・第二優先:自動化の効果 (削減工数 x 頻度)
3. 案件計画を立てた 38 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪ネットワークチーム (利用者) へのヒアリング Q1. 案件計画とAnsibleでできることの共有 A1. 「Ansibleすげぇ! 自動化もありがたい!」 A2. 20作業の洗い出し & 優先順位決定 ・第一優先:自動化難易度の低さ ・第二優先:自動化の効果 (削減工数 x 頻度) Q2. 「自動化対象のブレスト協力して!」 初Ansibleなので、実現可能性を重視した
3. 案件計画を立てた 39 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪計画の修正 項目 詳細 部署目標 (上位目的) ・事業への貢献 ・新しい技術の探求 案件目的 ・納期短縮 ・自動化ノウハウの蓄積 ・作業負荷の低減 流れ 1.自動化対象を決める 2.1つの作業を自動化してみる (PoC検証) 3.Ansibleの運用装着 & 自動化範囲拡大 自動化対象 作業頻度の高い作業? 難易度の低い、定期ログインパスワード変更
3. 案件計画を立てた 40 (C) Recruit Technologies Co., Ltd. - All
rights reserved. こうして みんなの力で 計画に磨きがかかり
3. 案件計画を立てた 41 (C) Recruit Technologies Co., Ltd. - All
rights reserved. たのしいたのしい Ansible検証が始まりました
3. 案件計画を立てた 42 (C) Recruit Technologies Co., Ltd. - All
rights reserved. その後 どうなったかというと...
3. 案件計画を立てた 43 (C) Recruit Technologies Co., Ltd. - All
rights reserved. • Pythonライブラリ足りない • SSL通信でエラーになる • モジュール対応してないんだが... 約 2ヶ月 ▪様々な困難を乗り越え...
約 2ヶ月 3. 案件計画を立てた 44 (C) Recruit Technologies Co., Ltd.
- All rights reserved. • Pythonライブラリ足りない • SSL通信でエラーになる • モジュール対応してないんだが... • 既知のバグ踏んだ • 未知のバグ踏んだ ▪様々な困難を乗り越え...
3. 案件計画を立てた 45 (C) Recruit Technologies Co., Ltd. - All
rights reserved. ▪無事、約2ヶ月でPoC検証完了しました 約 2ヶ月 • Pythonライブラリ足りない • SSL通信でエラーになる • モジュール対応してないんだが... 検証完了! (ios, nxos, panos, junos, bigip) • 既知のバグ踏んだ • 未知のバグ踏んだ
さいごに 46 (C) Recruit Technologies Co., Ltd. - All rights
reserved.
さいごに 47 (C) Recruit Technologies Co., Ltd. - All rights
reserved. ▪メッセージ Ansibleに興味を持ち 仕事で検証するまでのエピソードを 今回お話しました 皆さまも楽しいAnsibleライフを! Ansibleに興味がある皆さまにとって 少しでも参考になれば嬉しいです
48 (C) Recruit Technologies Co., Ltd. - All rights reserved.
ありがとうございました