Web、コマンドライン、API
プログラムは 1 つ、データベースはなし
VM の状態は、その ZFS データセットと config.json そのものです。ほかに同期すべきものはありません。管理プログラムが停止・再起動しても VM は動き続け、管理プログラムはファイルシステムから状態を組み立て直します。
Web インターフェース
- 概要、VM、ストレージ、ネットワーク、ログ、システムの各ページ。英語、中国語、日本語に対応。
- ブラウザー上のシリアルコンソール(xterm.js)とグラフィカルコンソール(noVNC)。シリアルコンソールは、1 人が入力している間に複数人で見ることもできます。
- 新しい VM は、システムごとのテンプレートから始まるウィザードで作成します。Windows、Linux、ルーター OS、BIOS で動く古い Windows など。
- ISO イメージはアップロードするか、URL を指定してホストにダウンロードさせられます。
- 実行中の VM の変更:名前、自動起動、RDP パスワードはすぐに反映され、それ以外は Proxmox と同じく、VM の次回の再起動で反映されます。
- ストレージのページでプールを作成し、ネットワークのページで各ポートにどの VLAN とサブネットがあるかを調べられます。
API、トークン、監査
API は HTTPS と JSON で、OpenAPI で記述されています。トークンには範囲があります。
- 操作 × どの VM か(すべて、リスト、タグ)× 接続元アドレス × 有効期限。
- トークンの範囲外の VM は、存在しないかのように応答します。
- トークンが作れるのは、自分より狭い範囲のトークンだけです。
- 削除は独立した権限で、確認として VM の名前が必要です。
書き込みのリクエストは、拒否されたものも含めてすべて監査ログに記録されます。時刻、トークン、接続元アドレス、操作、対象、結果です。ホスト上では、コマンドラインはローカルソケットと通信するため、トークンは不要です。
未対応のこと
- 複数のホストを 1 か所から管理する機能は予定段階で、まだありません。
- 一部の VM やタグに限定したトークンは、コマンドラインで作成します。Web ページでは管理者、読み取り専用、オペレーターのプリセットを選べます。
- API のイベントストリームは未完成です。