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
December 11, 2024
Programming
2
950
暇に任せてProxmoxコンソール 作ってみました
JPmoxs勉強会#5 LT2での登壇資料です。
karugamo
December 11, 2024
Tweet
Share
More Decks by karugamo
See All by karugamo
Proxmoxをまとめて管理できるコンソール作ってみました
karugamo
0
170
Other Decks in Programming
See All in Programming
VibeCoding時代のエンジニアリング
daisuketakeda
0
270
技術的負債と戦略的に戦わざるを得ない場合のオブザーバビリティ活用術 / Leveraging Observability When Strategically Dealing with Technical Debt
yoshiyoshifujii
0
110
抽象データ型について学んだ
ryounasso
0
120
OpenTelemetry + LLM = OpenLLMetry!?
yunosukey
2
200
クラス設計の手順
akikogoto
0
140
CRUD から CQRS へ ~ 分離が可能にする柔軟性
tkawae
0
180
カウシェで Four Keys の改善を試みた理由
ike002jp
1
140
「MCPを使ってる人」が より詳しくなるための解説
yamaguchidesu
0
260
Global Azure 2025 @ Kansai / Hyperlight
kosmosebi
0
170
Language Server と喋ろう – TSKaigi 2025
pizzacat83
2
190
OpenTelemetryで始めるベンダーフリーなobservability / Vendor-free observability starting with OpenTelemetry
seike460
0
140
SpringBootにおけるオブザーバビリティのなにか
irof
1
310
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
122
52k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.8k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
RailsConf 2023
tenderlove
30
1.1k
Visualization
eitanlees
146
16k
How to train your dragon (web standard)
notwaldorf
91
6k
The Pragmatic Product Professional
lauravandoore
33
6.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
24
2.8k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
430
Why Our Code Smells
bkeepers
PRO
336
57k
Transcript
暇に任せてコンソール 作ってみました カルガモ JPmoxs勉強会#5 LT2
自己紹介 名前:カルガモ 情報系の大学生(3回生) LT初登壇 X(旧Twitter):@karugamosenpai Qiita:@karugamosenpai 1
きっかけ 友人にサーバを布教したいけど... 難しすぎない??? 2
求める要件 ユーザ目線 • ユーザから見てとにかく簡単・シンプル • 複雑なネットワーク設定などが不要 →DHCPなど必須 • WordPressの構築程度ができる環境 開発(自分)目線
• フロントからバックエンドまで広く浅く • 比較的モダンなものを活用 • 外部のセキュリティサービスを使用 • できるだけタダで • いい勉強教材にする 3
ということで作ってみました https://www.ouchi.cloud/ 以下からデモを実際に 試していただけます 4
構成 コンソール • Cloudflareの無料枠の範囲 • ProxmoxAPIをFastAPIでリレー • GoogleアカウントのOAuth2を使用 5
構成 Proxmox • 各ノードにpfSenseを配置 • ユーザごとにvmbr上のVLANを割り当て 6
機能紹介 VM作成 • FastAPI経由で各ノードでcloud-initで 作成 • CloudflareにもVNCのURLを登録 (認証情報はユーザ登録時に実施) 7
機能紹介 VNC • RDP通信としてCloudflaredのVNCで トンネリング /etc/pve/qemu-server/<vmid>.conf args: -vnc 0.0.0.0:77 8
VNCの動作 • サイトにiframeで埋め込み • CloudflareのVNCコンソールはCSPで iframeの埋め込みできない • Cloudflareの変換ルールでレスポンス ヘッダのContent-Security-Policyを変換 9
機能紹介 ポート • http通信をpfSenseで1:1NAT 宅内のIP VLAN内のアドレス • VMはDHCPでIP払出し • ポート用に宅内IPと1:1NAT
• QEMU-Guest-agentでアドレスを管理 10
今後の展望 SSH • httpと同じ要領で実装できそう... • CloudflareのSSHクライアントもある • 鍵の管理をどうするのか? 11
今後の展望 VM間通信 • 現状同じノード内のみで可能 • SDNにタグ付き通信を流せない? • 各ノードごとのpfSenseが不要? 12
まとめ • Proxmoxは慣れたら使いやすいが,初見では難しい... • ProxmoxのAPIを外部サービスから叩くのは難しい気がする • ネットワーク周りをもう少しシンプルにしたい • Cloudflareの無料プランでもProxmoxをもっと便利にできそう 人数増えてきたら有料プランかな...
13
ありがとうございました! 14