ベアメタル版 GKE は、ターゲット オペレーティング システムのディストリビューションがサポートするハードウェアで動作する幅広いシステムをサポートしています。GKE on Bare Metal は最小のハードウェア構成で実行することも、複数のマシンで実行して柔軟性、可用性、パフォーマンスを向上させることもできます。
ベアメタル版 GKE の構成に関係なく、ノードとクラスタには、実行中のクラスタとワークロードのニーズを満たすために十分な CPU、RAM、ストレージ リソースが必要です。
CPU、RAM、ストレージの最小要件と推奨要件
ベアメタル版 GKE をインストールするときに、異なる種類のクラスタを作成できます。
- ワークロードを実行するユーザー クラスタ。
- 管理クラスタ。ワークロードを実行するためのユーザー クラスタを作成して制御します。
- スタンドアロン クラスタは、ワークロードを管理および実行できる単一のクラスタですが、ユーザー クラスタの作成や管理はできません。
- ハイブリッド クラスタは、ワークロードを管理および実行できます。また、追加のユーザー クラスタを作成して管理することもできます。
クラスタタイプに加えて、リソース要件の観点では次のインストール プロファイルから選択できます。
デフォルト: デフォルト プロファイルには標準のシステム リソース要件が揃っており、あらゆるクラスタタイプで使用できます。
Edge: Edge プロファイルでは、システム リソース要件が大幅に軽減されています。リソースが制限されたエッジデバイスには、このプロファイルを使用することをおすすめします。エッジ プロファイルは、スタンドアロン クラスタでのみ使用できます。
デフォルトのプロファイルを使用する全クラスタタイプのリソース要件
次の表は、ベアメタル版 GKE がデフォルトのプロファイルを使用して、管理クラスタ、ハイブリッド クラスタ、ユーザー クラスタ、スタンドアロン クラスタを運用、管理するために必要な、ハードウェアの最小要件と推奨要件を示しています。
リソース | 最小 | 推奨 |
---|---|---|
CPU / vCPU* | 4 コア | 8 コア |
RAM | 16 GiB | 32 GiB |
ストレージ | 128 GiB | 256 GiB |
* ベアメタル版 GKE は、CPU マイクロアーキテクチャ レベル v3(x86-64-v3)以上の x86-64 CPU と vCPU のみをサポートしています。
Edge プロファイルを使用したスタンドアロン クラスタのリソース要件
次の表は、ベアメタル版 GKE が Edge プロファイルを使用してスタンドアロン クラスタを運用、管理するために必要な、ハードウェアの最小要件と推奨要件を示しています。
リソース | 最小 | 推奨 |
---|---|---|
CPU / vCPU* | 2 コア | 4 コア |
RAM | Ubuntu: 4 GiB RHEL: 6 GiB |
Ubuntu: 8 GiB RHEL: 12 GiB |
保存容量 | 128 GiB | 256 GiB |
* ベアメタル版 GKE は、CPU マイクロアーキテクチャ レベル v3(x86-64-v3)以上の x86-64 CPU と vCPU のみをサポートしています。
Edge プロファイルを使用してスタンドアロン クラスタを構成するには、次のようにすることをおすすめします。
bmctl
を別のワークステーションで実行する。ターゲット クラスタノードでbmctl
を実行する必要がある場合は、最小要件を満たすために 2 GiB のメモリが必要です。たとえば、Ubuntu の場合は 6 GiB、CentOS や RHEL の場合は 8 GiB が必要です。MaxPodsPerNode
を 110 に設定する。クラスタで実行するノード数は、平均でノードあたり 30 個までです。MaxPodsPerNode
を上位の構成にするか、ノードあたり 30 個を超えるユーザー Pod を実行するには、追加のリソースが必要になることがあります。GDC 上の VM ランタイムのコンポーネントは、この最小リソース構成では考慮されません。GDC 上の VM ランタイムには、クラスタにデプロイされる VM の数に応じて追加のリソースが必要です。
その他のストレージ要件
ベアメタル版 GKE は、ストレージ リソースを提供しません。必要なストレージは、システム上でプロビジョニングして構成する必要があります。
詳細なストレージ要件については、インストールの前提条件の概要をご覧ください。
必要なストレージを構成する方法の詳細については、ベアメタル版 GKE のストレージの構成をご覧ください。
ノードマシンの前提条件
ノードマシンには次の前提条件があります。
- サポート対象の Linux ディストリビューションのオペレーティング システムを使用している。詳細については、オペレーティング システムを選択するをご覧ください。
- Linux カーネルのバージョンが 4.17.0 以降。Ubuntu 18.04 と 18.04.1 は、Linux カーネル バージョン 4.15 上にあるため、互換性がありません。
- ハードウェアの最小要件を満たしている。
- インターネット アクセスがある。
- すべての他のノード マシンへのレイヤ 3 接続。
- コントロール プレーン VIP にアクセスできる。
- 適切に構成された DNS ネームサーバーがある。
- 重複するホスト名はない。
- 次の NTP サービスのいずれかが有効になっていて、機能している。
- chrony
- ntp
- ntpdate
- systemd-timesyncd
- apt や dnf などの有効なパッケージ管理システム。
- Ubuntu では、Uncomplicated Firewall(UFW)を無効にする必要があります。
UFW を無効にするには、
systemctl stop ufw
を実行します。 Ubuntu で、ベアメタル版 GKE 1.8.2 以降の場合、AppArmor を無効にする必要はない。GKE on Bare Metal の以前のリリースを使用してクラスタをデプロイする場合は、次のコマンド
systemctl stop apparmor
を使用して AppArmor を無効にします。クラスタの作成では、ベアメタル版 GKE のシステム コンポーネントに必要な空き容量のみが確認されます。この変更により、アプリケーション ワークロードに割り当てるスペースをより詳細に制御できます。ベアメタル版 GKE をインストールする場合は、次のディレクトリをサポートするファイル システムに必要な容量があり、次の要件を満たすようにしてください。
/
: 17 GiB(18,253,611,008 バイト)。/var/lib/containerd
:- コントロール プレーン ノード用に 30 GiB(32,212,254,720 バイト)。
- ワーカーノード用に 10 GiB(10,485,760 バイト)。
/var/lib/kubelet
: 500 MiB(524,288,000 バイト)。/var/lib/etcd
: 20 GiB(21,474,836,480 バイト、コントロール プレーン ノードにのみ該当)。/var/lib/etcd-events
: 5 GiB(5,368,709,120 バイト、コントロール プレーン ノードにのみ該当)
クラスタのバージョンに関係なく、前述のディレクトリ リストは同じパーティション、または異なるパーティションのいずれに存在しても問題ありません。基盤となる同じパーティションに存在する場合、スペース要件は、パーティション上の個別のディレクトリに必要なスペースの合計です。すべてのリリース バージョンで、クラスタの作成プロセスで必要に応じてディレクトリが作成されます。
/var/lib/etcd
ディレクトリと/etc/kubernetes
ディレクトリは、存在しない、または空のいずれかの状態です。
ベアメタル版 GKE をインストールして実行するための前提条件に加え、お客様は業界またはビジネス セグメントを治める関連基準(クレジット カードを処理するビジネスに関する PCI DSS 要件、防衛産業のビジネスに関するセキュリティ テクニカル実装ガイド(STIG)など)を遵守することが期待されます。
ロードバランサ マシンの前提条件
デプロイメントに専用のロードバランサ ノードプールがない場合は、ワーカーノードまたはコントロール プレーンノードを使用してロードバランサのノードプールを作成できます。その場合、追加の前提条件があります。
- マシンが同じレイヤ 2 サブネット内に配置されている。
- VIP がすべて、ロードバランサのノードのサブネットにあり、サブネットのゲートウェイからルーティング可能。
- ロードバランサのサブネットのゲートウェイが、メインのロードバランサにパケットを転送する Gratuitous ARP をリッスンする必要がある。