インストール要件
このページでは、GPUStack を実行するノードのソフトウェアとネットワークの要件を説明します。
オペレーティングシステムの要件
GPUStack は、AMD64 および ARM64 アーキテクチャの主要な最新 Linux ディストリビューションに対応しています。
注記
- PyPI 経由での直接インストールには対応していません。互換性を確保するため、提供されている Docker イメージを使用してください。
- ノード間の状態同期を一貫させるため、Network Time Protocol(NTP)パッケージが必要です。
データベースの要件
GPUStack サーバーは状態を SQL データベースに保存します。サーバーのコンテナーイメージには組み込み PostgreSQL が含まれ、設定なしでそのまま動作します。
--database-url 引数(または GPUSTACK_DATABASE_URL 環境変数)で外部データベースも使用できます。次のデータベースに対応しています。
| データベース | 検証済みバージョン | データベース URL の形式 |
|---|---|---|
| PostgreSQL | 13.0+ | postgresql://username:password@host:port/dbname |
| MySQL | 8.0.36+ | mysql://username:password@host:port/dbname |
| openGauss | v6.0.5, v7.0.0-RC3 | postgresql://username:password@host:port/dbname |
| OceanBase | CE-v4.3.5 | mysql://username:password@host:port/dbname |
注記
openGauss は PostgreSQL、OceanBase は MySQL と互換性があるため、URL スキームにはそれぞれ postgresql:// と mysql:// を使用します。
設定例は、外部データベースの使用をご覧ください。
アクセラレーターランタイムの要件
GPUStack は、推論バックエンド用に次の汎用アクセラレーターに対応しています。
- NVIDIA GPU
- AMD GPU
- Ascend NPU
- Hygon DCU
- MetaX GPU
- MThreads GPU(実験的)
- Iluvatar GPU(実験的)
- Cambricon MLU(実験的)
- T-Head PPU(実験的)
GPUStack を実行する前に、必要なドライバーとツールキットがすべてインストールされていることを確認してください。
NVIDIA GPU
要件
- NVIDIA CUDA 12.8 以降に対応する NVIDIA GPU ドライバー。
- NVIDIA Container Toolkit
Kubernetes の GPU ノード
Kubernetes ノードの GPU を使用する場合は、上記のとおり各ノードにドライバーとツールキットをインストールするか、NVIDIA GPU Operator で管理します。NVIDIA GPU Operator がすでにインストールされている場合は、GPUStack のデバイス管理と競合する device plugin、GPU Feature Discovery、Node Feature Discovery、MIG Manager、CDI コンポーネントを無効にします。詳細はベンダー別の前提条件をご覧ください。
次のコマンドで確認します。
対応推論バックエンド
AMD GPU
要件
- AMD ROCm 7.0 以降に対応する AMD GPU ドライバー。
- AMD Container Runtime
Kubernetes の GPU ノード
Kubernetes ノードの GPU を使用する場合は、上記のとおり各ノードにドライバーをインストールするか、AMD GPU Operator で管理します。AMD GPU Operator がすでにインストールされている場合は、GPUStack のデバイス管理と競合する device plugin、node labeller、同梱の Node Feature Discovery、Kernel Module Management コンポーネントを無効にします。詳細はベンダー別の前提条件をご覧ください。
次のコマンドで確認します。
対応推論バックエンド
Ascend NPU
要件
次のコマンドで確認します。
対応デバイス
- Ascend NPU 910C シリーズ
- Ascend NPU 910B シリーズ(910B1~910B4)
- Ascend NPU 310P3
対応推論バックエンド
Hygon DCU
要件
Kubernetes の GPU ノード
Kubernetes ノードの DCU を使用する場合は、上記のとおり各ノードにドライバーとツールキットをインストールするか、Hygon DCU Operator で管理します。Hygon DCU Operator がすでにインストールされている場合は、GPUStack のデバイス管理と競合する device plugin と node labeller コンポーネントを無効にします。詳細はベンダー別の前提条件をご覧ください。
次のコマンドで確認します。
対応デバイス
- Hygon DCU
対応推論バックエンド
- vLLM
- カスタム
MetaX GPU
要件
Kubernetes の GPU ノード
Kubernetes ノードの GPU を使用する場合は、上記のとおり各ノードにドライバーと SDK をインストールするか、MetaX GPU Operator で管理します。MetaX GPU Operator の device plugin は無効化できません。Operator がすでにある場合は、ノード上のドライバーと SDK を残してアンインストールしてから、ノードを GPUStack に追加してください。詳細はベンダー別の前提条件をご覧ください。
次のコマンドで確認します。
対応推論バックエンド
MThreads GPU
要件
Kubernetes の GPU ノード
Kubernetes ノードの GPU を使用する場合は、上記のとおり各ノードにドライバーとツールキットをインストールするか、MT GPU Operator で管理します。MT GPU Operator の device plugin はデフォルトの full モードでは無効化できません。すでにインストールされている場合は、device plugin のない core モードに切り替えるか、ノード上のドライバーとツールキットを残してアンインストールしてから、ノードを GPUStack に追加してください。詳細はベンダー別の前提条件をご覧ください。
次のコマンドで確認します。
対応推論バックエンド
Iluvatar GPU
要件
Kubernetes の GPU ノード
Kubernetes ノードの GPU を使用する場合は、上記のとおり各ノードにドライバーとツールキットをインストールするか、ix-GPU-Operator で管理します。ix-GPU-Operator がすでにインストールされている場合は、GPUStack のデバイス管理と競合する device plugin と feature discovery コンポーネントを無効にします。詳細はベンダー別の前提条件をご覧ください。
次のコマンドで確認します。
対応推論バックエンド
- vLLM
- カスタム
Cambricon MLU
要件
- Cambricon MLU ドライバー
- Cambricon NeuWare ツールキット
次のコマンドで確認します。
対応推論バックエンド
- カスタム
T-Head PPU
要件
- T-Head PPU ドライバー
- T-Head PPU SDK
次のコマンドで確認します。
対応推論バックエンド
ネットワークの要件
接続要件
GPUStack が正常に動作するには、次のネットワーク接続が必要です。
サーバーからワーカー: 推論リクエストをプロキシするため、サーバーからワーカーへの接続が必要です。
ワーカーからサーバー: 登録と状態更新を送信するため、ワーカーからサーバーへの接続が必要です。
ワーカー間: 複数ワーカーにまたがる分散推論で必要です。
ポート要件
GPUStack は通信に次のポートを使用します。
サーバーのポート
| ポート | 説明 |
|---|---|
| TCP 80 | GPUStack UI と API エンドポイントのデフォルトポート |
| TCP 443 | GPUStack UI と API エンドポイントのデフォルトポート(TLS 有効時) |
| TCP 10161 | サーバーメトリクスのエンドポイントのデフォルトポート |
| TCP 30080 | GPUStack サーバー内部 API のデフォルトポート |
| TCP 5432 | 組み込み Postgres データベースのデフォルトポート |
ワーカーのポート
| ポート | 説明 |
|---|---|
| TCP 10150 | GPUStack ワーカーのデフォルトポート |
| TCP 10151 | ワーカーメトリクスのエンドポイントのデフォルトポート |
| TCP 40000-40063 | 推論サービスのポート範囲 |
| TCP 41000-41999 | Ray サービスのポート範囲(vLLM 分散デプロイで使用) |
Ray を使用した分散 vLLM のポート
分散 vLLM を使用する場合、GPUStack は上記の Ray サービス用ポート範囲を解析し、 次の順序で割り当てます。
- GCS サーバーポート(範囲の最初のポート)
- Client Server ポート(互換性のために予約、現在は未使用。https://github.com/gpustack/gpustack/issues/4171 を参照)
- Dashboard ポート
- Dashboard gRPC ポート(Ray 2.45.0 以降は未使用、後方互換性のために維持)
- Dashboard agent gRPC ポート
- Dashboard agent 待受ポート
- メトリクスエクスポート用ポート
- Node Manager ポート
- Object Manager ポート
- Raylet runtime env agent ポート
- ワーカー用の最小ポート番号
- ワーカー用の最大ポート番号(範囲の最後のポート)
Ray のポートの詳細は、Ray ドキュメントをご覧ください。
組み込みゲートウェイのポート
サーバーとワーカーの組み込みゲートウェイは、内部通信に次のポートを使用します。
| ポート | ホスト | 説明 |
|---|---|---|
| TCP 18443 | 127.0.0.1 | ファイルベースの APIServer が HTTPS で配信するポート |
| TCP 15000 | 127.0.0.1 | Envoy ゲートウェイの管理ポート |
| TCP 15021 | 0.0.0.0 | Envoy ゲートウェイのヘルスチェックポート |
| TCP 15090 | 0.0.0.0 | Envoy ゲートウェイのメトリクスポート |
| TCP 9876 | 127.0.0.1 | Pilot-discovery のイントロスペクションポート |
| TCP 15010 | 127.0.0.1 | Pilot-discovery が HTTP/gRPC で XDS を配信するポート |
| TCP 15012 | 127.0.0.1 | Pilot-discovery がセキュア gRPC で XDS を配信するポート |
| TCP 15020 | 0.0.0.0 | Pilot-agent のメトリクスポート |
| TCP 8888 | 127.0.0.1 | Controller が HTTP で XDS を配信するポート |
| TCP 15051 | 127.0.0.1 | Controller が gRPC で XDS を配信するポート |