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
Proxmoxをまとめて管理できるコンソール作ってみました
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
karugamo
May 23, 2025
Programming
870
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Proxmoxをまとめて管理できる コンソール作ってみました
JPmoxs勉強会#7 LT1での登壇資料です。
karugamo
May 23, 2025
More Decks by karugamo
See All by karugamo
暇に任せてProxmoxコンソール 作ってみました
karugamo
2
1.2k
Other Decks in Programming
See All in Programming
Modding RubyKaigi for Myself
yui_knk
0
900
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
190
Oxcを導入して開発体験が向上した話
yug1224
4
290
JJUG CCC 2026 Spring: JSpecify で実現する Kotlin フレンドリーな Java API 設計
ternbusty
1
140
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
170
Old Dog, New Tricks: The Java 25 Reinvention - JNation
bazlur_rahman
0
150
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
170
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
13
3.5k
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
6
840
CSC307 Lecture 17
javiergs
PRO
0
320
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
12
3.5k
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
300
Featured
See All Featured
エンジニアに許された特別な時間の終わり
watany
107
250k
HDC tutorial
michielstock
2
690
Designing Experiences People Love
moore
143
24k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
840
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
340
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
44k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
210
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
130
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
320
The Language of Interfaces
destraynor
162
27k
Transcript
Proxmoxをまとめて管理できる コンソール作ってみました カルガモ JPmoxs勉強会#7 LT1
自己紹介 名前:カルガモ 情報系の大学生(4回生) 今年に入ってAWSに入門 X(旧Twitter):@karugamosenpai Qiita:@karugamosenpai 2
前回のきっかけ JPmoxs #5 LT2 友人にサーバを布教したいけど... 難しすぎない??? 3
前回の概要 4 X(旧Twitter)等での反響も...
作ったもの ダッシュボード 5
作ったもの ダッシュボード • /currentなどのデータ取得 • /rrddataのグラフの作成 6
構成 ~概要~ 7 Cloudflare Tunnelの認証情報と Proxmoxの認証情報を付与 • 利用者はAWSで動いているサービスを使用、 Proxmox本体には一切直接アクセスしない •
AWS Proxmox間はCloudflare tunnelで接続し、 Service tokenで認証
構成 AWS ~全体~ • AWSのAPI GatewayとLambdaで ProxmoxへAPIをリレー • VMの認証情報とCFのトークンは Parameter
Storeで保管 8 Parameter StoreからCFの clientIDとsecretを取得 DBのノード情報などは定期更新
構成 AWS ~VNC~ 9 • 最初にチケットを発行 • Proxmoxの/vncwebsocketへの websocket通信が必要 •
Lightsail(EC2)のNode.jsでリレー (xtermはバグ#6079でAPIで使用不可)
構成 AWS ~VNC~ • 最初にチケットを発行 • Proxmoxの/vncwebsocketへの websocket通信が必要 • Lightsail(EC2)のNode.jsでリレー
(xtermはバグ#6079でAPIで使用不可) 10 ②チケット&接続情報保存 ①チケット発行 ③チケットで接続情報取得して websocketで接続
活用案 新規ユーザ • ちょっと試しに使ってみたい... • 24時間起動しときたい... 鯖主 • 物理的距離が離れた場所に リソースを配置したい...
• 監視サーバを配置したい... 等 11
活用案 メニューも柔軟に設定したり... 12
13 構成 QEMU Guest Agent “QEMU Guest Agentは、Proxmox VEとゲストOS (VM)間で通信を行い、仮想化環境における管理や
操作をサポートするツール” * インストール方法 • apt-get install qemu-guest-agent • systemctl enable qemu-guest-agent • qm agent <vmid> ping *引用:青山 尚暉,海野 航 ,大石 大輔,工藤 真臣,殿貝 大樹,野口 敏久, ”Proxmox VEサーバー仮想化導入実践ガイド”,インプレス,2025,p.174
14 構成 QEMU Guest Agent # qm guest cmd <vmid>
get-host-name { "host-name" : "OC-demo" } # qm guest cmd <vmid> get-users [ { "login-time" : 1747322704.3527, "user" : "karugamo" } ] # qm guest cmd <vmid> get-osinfo { "id" : "ubuntu", "kernel-release" : "5.15.0-139-generic", "kernel-version" : "#149-Ubuntu SMP Fri Apr 11 22:06:13 UTC 2025", "machine" : "x86_64", "name" : "Ubuntu", "pretty-name" : "Ubuntu 22.04.5 LTS", "version" : "22.04.5 LTS (Jammy Jellyfish)", "version-id" : "22.04" }
15 構成 QEMU Guest Agent exec • Proxmox API /api2/json/nodes/{node}
/qemu/{vmid}/agent/execで任意のコマンドを実行 可能 (結果の確認は/exec-statusポーリングが必要) # qm guest exec <vmid> -- sh -c 'echo "hello" 2>&1' { "exitcode" : 0, "exited" : 1, "out-data" : "hello\n" }
まとめ • AWSに入門&移行しました • VNCなども自前で実装できる • QEMU Guest Agentで色々操作できるのでもっと活用したい •
利用案の需要あるかな... 16
ありがとうございました! 17