メインコンテンツまでスキップ

前提条件

開始する前に、環境が以下の要件を満たしていることを確認してください。計画フェーズにおいて、 このチェックリストを DuoKey 担当者と一緒に確認することをお勧めします。

プラットフォーム​

要件推奨
OpenShift現在サポートされている 4.x リリース (同等の OKD もサポート)
クラスタートポロジー3 コントロールプレーンノード + 3 つ以上の障害ドメインにまたがる 3 つ以上のワーカーノード
コンテナランタイムCRI-O (OpenShift のデフォルト)
ストレージOpenShift Data Foundation (ODF) または ReadWriteOnce ブロックボリュームとスナップショットサポートを提供する CSI ドライバー
Ingressワイルドカード DNS + TLS 証明書を備えた OpenShift Ingress Router (組み込み)
オブジェクトストレージバックアップ用の S3 互換バケット (ODF NooBaa、MinIO、または外部)

コンピューティングサイジング (出発点)​

これらは本番 HA 展開のベースライン値です。最終的なサイジングは、鍵、クライアント、および リクエスト量の数に依存します。

OpenShift ワーカーノード​

プロファイルvCPURAM備考
ワーカーあたり (最小 3)832 GBフロントエンド、バックエンド、オブザーバビリティ Pod をホスト

専用 VM 層​

VM数vCPURAMディスク
OpenBao3 (HA / Raft)24 GB50 GB SSD
PostgreSQL3 (プライマリ 1 + レプリカ 2)416 GB200 GB SSD
GitLab148 GB100 GB
注記

VM 層は既存のハイパーバイザー (VMware、Proxmox、KVM/OpenStack) 上で仮想化できます。 単一障害点を避けるため、可能な限り OpenBao と PostgreSQL を別々の物理ホストに 配置してください。

DKE オンプレミスサイジング​

Double Key Encryption (DKE) 展開では、主要なワークロードは鍵のラップ/アンラップ リクエストであり、軽量ですがバースト性があります。ユーザーが保護されたドキュメントを開いたり 保存したりするとスパイクします。総ユーザー数だけでなく、ピーク時の同時実行数に合わせて サイジングしてください。

コンポーネントごとのリソース (HA ベースライン)​

これらは DuoKey コンポーネントのレプリカあたりのリクエストサイズであり、高可用性展開のための 最小レプリカ数を示しています。イメージは Harbor レジストリから 取得されます。

コンポーネントvCPU / レプリカRAM / レプリカストレージ最小レプリカ数 (HA)
Cockpit (フロントエンド)24 GB20 GB2
Cockpit API (バックエンド)48 GB20 GB3
KMS API (DKE 鍵エンドポイント)24 GB20 GB2
MPC / TSM ノード48 GB20 GB3
PostgreSQL (MPC + Cockpit)416 GB100 GB3
Redis キャッシュ48 GB50 GB3
メッセージブローカー (RabbitMQ/Kafka)48 GB50 GB3
OpenBao (VM 層)24 GB50 GB3
監視スタック816 GB200 GB1
ロギングスタック816 GB600〜1000 GB1

ユーザー数によるサイジング階層​

目安の値 — DuoKey と確認してください

上記のコンポーネントごとのリソースは、DuoKey のリファレンスサイジングから導き出されて います。以下のユーザー数階層は、計画を容易にするための目安となる出発点であり、 契約上のマッピングではありません。実際のサイジングはドキュメントのアクティビティと ピーク時の同時実行数に依存し、お客様の展開について DuoKey と共に検証されます。

以下の表は、OpenShift アプリケーションワーカーノード (上記の Pod) をサイジングします。 3 つのコントロールプレーンノードと、専用のデータ/VM 層 (PostgreSQL、OpenBao) は除外 されており、それらは上記のコンポーネントごとの表に従ってスケールします。

階層ユーザーアプリワーカーノードノードあたり備考
パイロット / PoC1,000 以下38 vCPU / 32 GB最小 HA、レプリカ削減
標準10,000 以下3〜48 vCPU / 32 GBリファレンス HA アーキテクチャ
大規模50,000 以下616 vCPU / 64 GBスケールアウトレプリカ + HPA
エンタープライズ100,000 以上8 以上16 vCPU / 64 GBカスタム、通常はマルチサイト
経験則
  • MPC ノードは鍵操作中に CPU バウンドになります。高負荷の DKE 下ではこれを最初に スケールしてください。
  • PostgreSQL はシンプルなデータストアとして使用されます (重いクエリはありません) ので、 CPU バウンドよりも RAM/IO バウンドになります。
  • Redis とブローカーはパススルー/キャッシュであり、CPU は控えめです。
  • リクエストのスパイクを吸収するため、Cockpit API と MPC ノードで HorizontalPodAutoscaler を有効にしてください。
最終サイジングは DuoKey と検証されます

これらの値は安全な出発点です。DuoKey 担当者が、実際のユーザー数、ドキュメントの アクティビティ、ピーク時の同時実行数、および可用性目標 (単一サイト対マルチデータセンター) に対してこれらを精緻化します。

ソフトウェアとオペレーター​

展開前に、以下の OpenShift オペレーターを (OperatorHub 経由で) インストールしてください:

  • OpenShift GitOps (ArgoCD)
  • External Secrets Operator (ESO)
  • PostgreSQL オペレーター — CloudNativePG または Patroni (VM 上ではなくクラスター内で PostgreSQL を実行する場合)
  • OpenShift Data Foundation (ストレージに ODF を使用する場合)
  • Velero / OADP (OpenShift API for Data Protection) — バックアップ用

外部ソフトウェア:

  • OpenBao ≥ 最新の安定版、Raft 統合ストレージで構成
  • GitLab (セルフホスト) または GitLab SaaS へのアクセス
  • Redis ≥ 7 (シャード化クラスター) — クラスター内 StatefulSet または VM 上

ネットワーク​

フローソース宛先ポート
ユーザー → アプリクライアントIngress Router443/TCP
アプリ → シークレットワーカーノードOpenBao VM8200/TCP
アプリ → データベースワーカーノードPostgreSQL プライマリ/レプリカ5432/TCP
GitOps → ソースArgoCDGitLab443/TCP、22/TCP
バックアップクラスター / Veleroオブジェクトストレージ443/TCP
OpenBao → HSM (オプション)OpenBao VMHSMHSM ベンダーごと

要件:

  • Ingress Router VIP を指すワイルドカード DNS レコード (例: *.duokey.example.local)。
  • アプリケーションホスト名の TLS 証明書 — エアギャップサイトでは内部 CA で問題ありません。
  • 推奨されるネットワークセグメンテーション: アプリケーション、セキュア (HSM)、 バックエンド/ストレージトラフィック用に別々の VLAN。
  • エアギャップインストールの場合: OpenShift リリースおよびオペレーターイメージ用の ミラーレジストリ (例: Quay / mirror.registry)。

鍵の保管: DuoKey MPC および/または HSM​

DuoKey の主要なトラストルートは独自の Multi-Party Computation (MPC) です。鍵マテリアルは シェアに分割され、単一のノードや管理者が完全な鍵を保持することはありません。専用の HSM ハードウェアは不要です。

ハードウェアトラストルートも必要とする展開の場合、DuoKey は Securosys HSM (PKCS#11 / KMIP) と統合します。以下を用意してください:

  • OpenBao VM から Securosys HSM (または Securosys Cloud HSM / CloudsJMS エンドポイント) への ネットワーク到達性。理想的には専用のハードニング済み VLAN 上。
  • OpenBao 用に構成された HSM クライアント資格情報 / パーティション。

アクセスとスキル​

  • OpenShift クラスターへのクラスター管理者アクセス。
  • VM ハイパーバイザーと DNS への管理アクセス。
  • oc/kubectl、GitOps の概念、および OpenBao 運用に関する知識。

これらが整ったら、インストールに進んでください。