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
新卒でもできることはある! 〜OCX自動化奮闘記〜 /newcommer working wi...
Search
BBSakura Networks, Inc
February 21, 2023
Technology
630
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
新卒でもできることはある! 〜OCX自動化奮闘記〜 /newcommer working with ocx automation in bbsakura
2023-02-16 BBSakura公開社内勉強会 Vol. 1 で発表の資料共有です。
新卒として自動化業務に携わった時のお話です。
BBSakura Networks, Inc
February 21, 2023
More Decks by BBSakura Networks, Inc
See All by BBSakura Networks, Inc
簡易 DRA の自作を振り返る
bbsakura
0
590
English Study
bbsakura
1
660
BBSakura Networksでの SRv6 Mobile User Plane(MUP) 関連の取り組みまとめ / Development status of SRv6 MUP at BBSakura Networks
bbsakura
0
820
OCXのAzure シングルタグ機能解説とデモ
bbsakura
0
2.7k
さくらのセキュアモバイルコネクトの運用に CD の仕組みを導入する話
bbsakura
0
500
Other Decks in Technology
See All in Technology
MySQL & MySQL HeatWave Report - June 2026
freshdaz
0
100
ロボティクスの技術 / Robotics Technology
ks91
PRO
0
130
AI-DLCを “そのまま導入しなかった”話 ~組織に合わせてアジャストした 私たちの実践共有~
hiroramos4
PRO
1
420
從開發到部署全都交給 AI:實作 AI 驅動的自動化流程
appleboy
0
160
サイバーエージェントにおけるAI推進戦略と変革への取り組み
shotatsuge
0
530
アジャイルな経理と Claude Code と経営の未来
kawaguti
PRO
3
190
【2026年版】 ベクトル検索とEmbedding最前線
mocobeta
23
7.5k
10年間のブログ発信を振り返って見えたWebアプリケーションエンジニアとしての軌跡
stefafafan
0
180
AIをフル活用してオンコール機能のプロトタイプを2日で作った話 / Building an AI-Powered On-Call Prototype in Just Two Days
nari_ex
0
120
新しいUbuntu/GNOMEが使いたいからXからWaylandへ移行頑張ってるの巻 2026-06-20
nobutomurata
0
160
AIが自律的に回る開発ループを設計してチーム開発に組み込む
nekorush14
0
120
自分が詳しくない領域でAIを使う #プロヒス2026
konifar
20
7.4k
Featured
See All Featured
A Soul's Torment
seathinner
6
3k
Become a Pro
speakerdeck
PRO
31
6k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
260
Fireside Chat
paigeccino
42
4k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.4k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
170
Design in an AI World
tapps
1
250
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Transcript
新卒でもできることはある! 〜OCX自動化奮闘記〜 2023/02/16四半期会議 公開社内勉強会 BBSakura Networks 株式会社 秋山正道
自己紹介 • 秋山正道 • 2022年7月から新卒入社 • 学生の時はロボットとかAIとか • OCX開発グループでOCXを栽培してます •
OCXで自動化バッチを作ったりしたので、 本日はその様子についてお話します
OCXとは クラウドサービスやデータセンターに接続する閉域網をオンデマンドで構築!
OCXの便利なところ 1. OCXNW接続用の機器を用意する 2. ポータルサイトから購入 3. 構内配線の準備手配 これだけでOCXを利用可能! ① ②
③ データセンター 所有ラック
OCXの裏側 1. 構内配線がされる 2. Linkup確認&開通設定 リソースとして使用可能に! データセンター 所有ラック OCXラック ①
② OCX側の機器がLinkupを検知 ↓ PhysicalPortとして利用可能になるように設定
かつては開通を支える妖精さんがいた PhysicalPort ID: 1 Status: 開通待ち ポート: Ethernet1 ID: 2 Status:
開通待ち ポート: Ethernet3 ID: 5 Status: 開通待ち ポート: Ethernet7 # show interface Ethernet1 # show interface Ethernet3 # show interface Ethernet7 まだLinkupしてないな...
開通までタイムラグがあるという声 • Linkup準備ができてから開通まで1営業日かかっていた • Linkup準備ができていなかった場合、知るのにも時間がかかる • 開通待ちのPhysicalPortが増えるほど、管理が大変になる 開通待ちのPhysicalPortが増えており、早急に自動化をしたかった →スピード重視で自動化の開発を行いたい
PhysicalPort自動開通化 スイッチ用に提供されたライブラリでバッチからCLI実行、 返答を文字列で受け取れる! 楽さ優先で強引に改行(¥n)でparse #show interfaces eth1 Ethernet1 is up,
line protocol is up (connected) Hardware is Ethernet, address is … Description: ********** Ethernet MTU 1504 bytes , BW 10000000 kbit Full-duplex, 10Gb/s, auto negotiation: off, uni-link: n/a Up 127 days, 8 hours, 37 minutes, 54 seconds Loopback Mode : None … 文字列 CLIコマンド バッチ処理 PhysicalPortとして利用可能 になるように設定 文字列をこねて投稿
Tranceiver情報の取得 tranceiver情報も必要だがparseでは欲しい値が取れなさそう #show interfaces Ethernet1 transceiver If device is externally
calibrated, only calibrated values are printed. N/A: not applicable, Tx: transmit, Rx: receive. mA: milliamperes, dBm: decibels (milliwatts). Bias Optical Optical Temp Voltage Current Tx Power Rx Power Port (Celsius) (Volts) (mA) (dBm) (dBm) Last Update ----- --------- -------- -------- -------- -------- ------------------- Et1 30.02 3.32 7.19 -2.33 -2.49 0:00:01 ago CLIコマンド 文字列 文字列をこねて投稿 バッチ処理 PhysicalPortとして利用可能 になるように設定
ありがたいサポート tranceiver情報がcsv出力可能だったので、あとは強引に改行(,)でparse string配列のインデックス指定 #show interfaces Ethernet1 transceiver csv Last Update,Port
(Interface Name),Xcvr Serial Number,Media type,Temperature (Celsius),Voltage (Volts),Current (mA),Tx Power (dBm),Rx Power (dBm) 0:00:00 ago,Et1,XHN194604118,10GBASE-SR,30.27,3.32,7.19,-2.33,-2.49 文字列 CLIコマンド 文字列をこねて投稿 バッチ処理 PhysicalPortとして利用可能 になるように設定
欠点と対策 欠点: • OSのアップデートやマルチベンダによって 文字列の形式が変わると機能しない • slackでエラー通知を入れて少しでも対策 文字列 文字列をこねて投稿 CLIコマンド
バッチ処理 PhysicalPortとして利用可能 になるように設定
ミス購入キャンセル機能がリリース 2/15にリリースされた新機能
いわゆる返品機能が欲しいという声 • リソース作成時に不具合が出たら、消して新しく正しいものを作りたい • 請求の問い合わせ等が必要でなかなか簡単にリソース作り直せない • 削除しただけで請求も調整されると嬉しい • リソース作成時に誤った設定を入れてしまってもキャンセルできる 新機能により間違った課金情報が入ると調整のために労力が増える
→慎重に進めたいので、なるべく簡潔な仕組みにしたい
かつては請求処理を支える妖精さんがいた 請求処理の問い合わせ 請求データを手動で削除 ポータルサイトから購入 請求データがDBに登録される 事務処理等もあ るよ
従来の購入時フロー APIサーバー API リクエスト ポータルサイト 機器への設定 請求情報をDB登録 請求情報DB
キャンセルが入るとややこしくなる 多様な請求情報が入るようになると管理が難しくなる これはキャンセル可能リソースの購入 →キャンセル... これはキャンセル不可リソースの購入 →更新→削除... これはキャンセル可能リソースの購入 →更新→削除... これはリソースの購入 →更新→削除...
これはリソースの購入 →更新→削除... リソースの購入、更新、削除だけ!
ミス購入キャンセル自動化 APIサーバー API リクエスト ポータルサイト 機器への設定 請求情報の管理のみが変わるので、 従来通りリソースはすぐに利用できる バッチ処理 請求情報DB
請求情報を一時的に保管する DBを用意し、キャンセルの期 限を超えたデータのみをバッチ でDBに登録する
ユーザーの声から日々成長するOCX • Linkupを自動検知し、3時間程度で自動開通 • 72時間以内のリソース削除については減免処理が自動で入る • 最近は毎月リリースが入っていて成長期 • ユーザーの要望に応えるのは楽しい