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
ネットワークエンジニアこそGASを覚えた方がよいと思った話 / network-enginee...
Search
komeinw
January 12, 2018
Technology
3.7k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ネットワークエンジニアこそGASを覚えた方がよいと思った話 / network-engineer-gas
komeinw
January 12, 2018
More Decks by komeinw
See All by komeinw
kubevirt動かしてみた_npstudy#19 / try_kubevirt_npstudy#19
komeiy
3
1.7k
Datadog_で作る_NW_監視のメリット_デメリット.pdf / Datadog_NW_Monitoring
komeiy
3
3.7k
ここ3年におけるサイバーエージェントのネットワークを取り巻く環境の変化 / cyberagent-adtech-network-for-these-3years
komeiy
11
4.9k
OkinawaOpendays2016_ネットワーク運用コード化への取り組み
komeiy
1
1.3k
Interop2016_Mellanox_ca_yamamoto.pdf
komeiy
0
1.3k
Interop2016_SDI_OpenStage-アドテクに必要なSDN_NFV_ca_yamamamoto.pdf
komeiy
0
1.3k
Interop2016_Mellanox_ca_40g_hasegawa.pdf
komeiy
0
1.4k
Interop2016_huawei_ca.pdf
komeiy
0
1.4k
mellanox_switch_shortreview_interop_2015.pdf
komeiy
0
190
Other Decks in Technology
See All in Technology
OPENLOGI Company Profile for engineer
hr01
1
74k
AIが実装を自走する時代の認知負債との戦い
lycorptech_jp
PRO
2
1k
Devsumi 2026 Summer 人もAIも使える共通基盤を事業の加速装置にする~デザインシステム運用に学ぶ組織レバレッジ~ 渡辺 凌央
legalontechnologies
PRO
1
280
2026年のソフトウェア開発を考える(2026/07版) / Agentic Software Engineering 2026-07 Findy Edition
twada
PRO
18
7.8k
SREとQA 二人三脚で進めるSLO運用/sre-qa-slo
sugitak
0
1.2k
発表と総括 / Presentations and Summary
ks91
PRO
0
180
変更し続けられるシステムをどう保つか — AI時代のSSoTという設計原則
kawauso
1
990
壊して学ぶAWS CDK: そのcdk deployで消えるもの、残るもの
k_adachi_01
1
460
”AIを使う” から ”AIに任せる” へ ─ 開発プロセスを再設計してAIを組織標準にするまで
cyberagentdevelopers
PRO
1
130
シンガポールで登壇してきます
yama3133
0
340
どこまでAIに任せるか 〜確率論と決定論の境界決定〜
shukob
0
390
第67回コンピュータビジョン勉強会CVPR2026読会前編
tsukamotokenji
0
160
Featured
See All Featured
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
390
Ruling the World: When Life Gets Gamed
codingconduct
0
290
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
410
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
210
Marketing to machines
jonoalderson
1
5.6k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Music & Morning Musume
bryan
47
7.3k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Heart Work Chapter 1 - Part 1
lfama
PRO
8
36k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
For a Future-Friendly Web
brad_frost
183
10k
Transcript
ネットワークエンジニア こそGASを覚えるべきと思っ た話 CyberAgent アドテク本部 山本 孔明
❏ 山本 孔明 アドテク本部のインフラ組織所属のエンジニア 今はプライベートクラウドチームのリーダーをやっていま す 主な業務 • オンプレとパブリックのネットワーク(物理/仮想) •
OpenStack / CircleCI / Aritifactory ...etc • チームマネジメント 自己紹介
アドテク本部について インターネット広告において、広告配信の最適化やメディアの収益最大化という観点から アドテクノロジーの重要度が高まっています。 サイバーエージェントではアドテクノロジー分野における これらのサービスについて各子会社を通じ開発しておりましたが、 各サービスの開発部門を横断して組織化する専門部署として アドテク本部が設立されました。
サイバーエージェントのアドテク 詳細は「日本一やさしいアドテク教室」を御覧ください! https://www.cyberagent.co.jp/ir/personal/adtech/adtech_01/
ポート表の作成ってめんどくさい・・・ • モデルごとに違うポート番号 • ディスクリプションに書いてあることを転記する無駄感 • スイッチの VLAN 変えたらポート表を変えないといけない二度手間感 •
更新を何回か忘れて管理が事実上崩壊 そもそもポート表を作るのが本質ではない・・・!!
で、どうする? • Ansible で管理すればいいのでは? ◦ ios_config 並べるみたいな管理を全メーカーやる・・・? ◦ ( 割とありかもしれない
) • GitHub にコンフィグを自動でアップしておけばいいのでは? ◦ 簡単だけどネットワークエンジニア以外の可読性がいまいち問題 ◦ ( 便利っちゃ便利なので活用はしている ) そういえば、ポート表を自動生成する方法はないのかな?
Ansible 2.4の話 Ansible 2.4 でネットワークプログラマビリティな運用を考える https://adtech.cyberagent.io/techblog/archives/3801 • parse_cli_textfsm + ntc-templates
がスーパー便利 • ios_command などで各メーカーの ネットワーク機器を操作するのは割と楽 • json で情報取れるので加工しやすい
あ、Databaseに入れちゃえば いいんじゃない??
Databaseに入れることで • いろんな場面で二次利用できる • フロントに Redash 使ったりして可視化が楽 • スプレッドシート使えばまさにポート表いらない ファイル共有のしやすさ、同時編集などを考えると
CSV よりスプレッドシートがおすすめ。
構成概要 MySQL Switch Jenkins ① ② ③ 定期取得
GAS (Google App Script) について • JavaScript をベースにしている • カレンダーやスプレッドシートなど多数の
Google Apps を操作可能 • マニュアルがしっかりしている • こういうレベルの活用なら学習コストが意外と低い Let’s Try GAS!!
結構簡単にできちゃう • DB に接続してテーブル作る例 SQL そのまんま !!
今回GASでやること • DB に接続 • 任意のテーブルを select する • 目的のシートに書き出す
すごく Simple !!
今回GASでやること • DB に接続 ◦ var conn = Jdbc.getConnection(dbUrl, user,
userPwd); ◦ var stmt = conn.createStatement(); • 任意のテーブルを select する ◦ var result = stmt.executeQuery(sql); • 目的のシートに書き出す ◦ var sheet = SpreadsheetApp.getActiveSheet(); ◦ var cell = sheet.getRange('A1'); ◦ cell.offset(row, 0).setValue(results.getString(1)); やっぱり Simple !!
技術的なハードルは 意外と低い?
まとめ • とりあえず DB へ入れておくとなにかと便利 • フロントにはスプレッドシートがおすすめ • この用途なら GAS
はそんなに難しくない • 自動化するコストとポート表にかけてるコストと要相談 プライベートクラウドでそもそも ポート表に管理コストそんなにか かってない疑惑・・・。