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
AI Agentをシステムに組み込む前にゆるく向き合ってみる
hayama17
0
170
5分でわかる Amazon Connect_20260608
hwangbyeonghun
0
130
「軸足」は 固定しなくていい - 熱量と強みで描く、しなやかなキャリアの形
kakehashi
PRO
1
280
AIに障害切り分けを全部やってもらった。 。 。 。
estie
0
260
攻撃者がいなくてもAIエージェントはインシデントを起こす
nomizone
0
140
製造現場での生成AIの活用、およびエージェントAIの実装のあり方、AVEVAの取り組み
iotcomjpadmin
0
180
トークン最適化のためのユーザーストーリー分析 / User Story Analysis for Token Optimization
oomatomo
0
130
Zenoh on Zephyr on LiteX
takasehideki
2
130
AWS Summit 2026で見えたSIerにとっての Amazon Quickの位置づけ
maf_0521
0
110
自作お家AIエージェントスタックチャンFWで困っている所紹介
74th
0
130
PostgreSQL 19 新機能概要 OSC Hokkaido 2026
nori_shinoda
0
260
元・セキュリティ学習経験0大学生による業務紹介 / An Introduction to the Job by a Former College Student with Zero Security Training Experience
nttcom
0
940
Featured
See All Featured
Utilizing Notion as your number one productivity tool
mfonobong
4
330
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.4k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
The Language of Interfaces
destraynor
162
27k
The Limits of Empathy - UXLibs8
cassininazir
1
370
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
870
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
310
Unsuck your backbone
ammeep
672
58k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
400
Paper Plane (Part 1)
katiecoart
PRO
0
9.3k
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
はそんなに難しくない • 自動化するコストとポート表にかけてるコストと要相談 プライベートクラウドでそもそも ポート表に管理コストそんなにか かってない疑惑・・・。