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
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
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
170
AI時代のUIはどこへ行く?その2!
yusukebe
19
6.8k
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
3.1k
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
460
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
550
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
0
170
Swiftのレキシカルスコープ管理
kntkymt
0
210
OSもどきOS
arkw
0
460
GitHub Copilot CLIのいいところ
htkym
2
1.3k
Oxcを導入して開発体験が向上した話
yug1224
4
290
Modding RubyKaigi for Myself
yui_knk
0
900
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
130
Featured
See All Featured
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
400
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
770
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
220
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Into the Great Unknown - MozCon
thekraken
41
2.5k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
250
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
300
WCS-LA-2024
lcolladotor
0
620
Bash Introduction
62gerente
615
210k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
300
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