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
660
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
600
English Study
bbsakura
1
690
BBSakura Networksでの SRv6 Mobile User Plane(MUP) 関連の取り組みまとめ / Development status of SRv6 MUP at BBSakura Networks
bbsakura
0
840
OCXのAzure シングルタグ機能解説とデモ
bbsakura
0
2.8k
さくらのセキュアモバイルコネクトの運用に CD の仕組みを導入する話
bbsakura
0
510
Other Decks in Technology
See All in Technology
AI-DLCって実際どう? 〜聞きたいこと全部聞いてみる〜
news_it_enj
0
240
Bet AI Day 2026丨AIによって本質に戻るシステムリスク管理
layerx
PRO
0
1.3k
日経電子版を支えていく Kasane Design System/fec_fukuoka
nikkei_engineer_recruiting
0
250
こんなアーキテクチャ図は嫌だ BEYOND THE TIME: 半年後の自分へ贈る15のメッセージ / 15 of Anti-pattern in AWS Architecture Diagrams
naospon
3
270
AI 駆動 Terraform 開発/SRE_BizReach_MIXI_2
visional_engineering_and_design
3
1.9k
AI時代に、プロダクトの数だけ積み上がる所有コストをどうエンジニアリングするか / Engineering the Cost of Ownership
kzkmaeda
1
1.1k
SQL文一行も書けない人事がCortexもろもろを使って人事業務を楽にしてみる
ponponmikankan
1
150
Kiro Crewしか勝たん!?
miu_crescent
PRO
0
190
AI時代だからこそ、スケールしないことをやろう
yutashigemura
1
110
多摩川(.dev)ランニング入門 / Tamagawa.dev#3
fujiwara3
3
410
Screen Lens - 今見てる画面を翻訳する
komagata
0
130
V8コントリビュート超入門
riyaamemiya
0
150
Featured
See All Featured
Become a Pro
speakerdeck
PRO
31
6.2k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
770
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
Tell your own story through comics
letsgokoyo
1
1.1k
Prompt Engineering for Job Search
mfonobong
0
440
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
470
The Invisible Side of Design
smashingmag
301
52k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
710
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
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時間以内のリソース削除については減免処理が自動で入る • 最近は毎月リリースが入っていて成長期 • ユーザーの要望に応えるのは楽しい