このトピックでは、Kubernetes クラスターの作成に関して、推奨する ECS インスタンスを解説します。

クラスター ECS インスタンスの全体像

低パフォーマンスの ECS インスタンスのデメリットは以下のようになります。
  • 低パフォーマンスの ECS インスタンス上で実行されるワーカーノードは限られた数のネットワークリソースしか使用できません。
  • 1 つのコンテナーにより、低パフォーマンスの ECS インスタンスから提供されるリソースのほとんどを消費した場合、残りのリソースがアイドル状態となります。これは、新しいコンテナーの作成または失敗したコンテナーの復元などの操作に対する十分なリソースがないために起こります。 複数の低パフォーマンスの ECS インスタンスを設定した場合、リソースをかなり無駄にしてしまいます。
高パフォーマンス ECS インスタンスのメリットは以下のようになります。
  • 広いネットワーク帯域幅が利用できます。 広い帯域幅を必要とするアプリケーションに対して、リソース使用量は大きくなります。
  • たくさんのコンテナー接続が 1 つの ECS インスタンス内で発生し、ネットワークをまたいだデータ転送を削減します。
  • イメージがより効率的に pull されます。 高パフォーマンス ECS インスタンスを使用するクラスターでは、イメージの pull に 1 度の試行のみ必要で、pull されたイメージは複数のコンテナーにおいて使用することができます。 対照的に、低パフォーマンスの ECS インスタンスを使用するクラスターでは、イメージの pull に複数回の試行を必要とします。 さらに、低パフォーマンス の ECS インスタンスを使用するクラスターのスケーリングの実行にはより長い時間が必要です。

マスターノードの仕様に関する選択

Alibaba Cloud Container Service を通じて作成された Kubernetes クラスターでは、etcd、kube-apiserver および kube-controller などのコアコンポーネントがマスターノードで実行されます。 これらのコアコンポーネントはクラスターの安定性の実現に重大な影響を及ぼします。 一般的に、大きなクラスターでは、マスターノードの仕様に関してより高い要件が必要です。
以下の要素を考慮することで、お使いのクラスターサイズを決めることができます: ノード数、ポッド数、デプロイ頻度および訪問者数。 このトピックでは、クラスターサイズの決定に、ノード数のみを考慮します。

標準的なサイズのクラスターにおけるマスターノードの仕様の選択には、以下の表をご参照ください。 ただし、テスト環境では、クラスターに対してより低いパフォーマンスのマスターノードを選択できます。 以下の表で推奨される仕様は、マスターノードの負荷を小さく保つように設定されています。

ノード数 マスターノードの仕様
1 から 5 4 コア、8 GiB (2 コア、4 Gib の選択は推奨しません)
6 から 20 4 コア、16 GiB
21 から 100 8コア、32 GiB
100 から 200 16 コア、64 GiB

ワーカーノードの仕様の選択

  • クラスターが必要とするコア数および許容するコアエラー比率を決定します。

    たとえば、合計で 160 コアを持つと仮定します。 許容するコアエラー比率が 10% のとき、最低でも 10 個の 16 コア ECS インスタンスを選択する必要があり、クラスター負荷の上限が 160*90%=144 コアであることを確認する必要があります。 許容するコアエラー比率が 20% のとき、最低でも 5 個の 32 コア ECS インスタンスを選択する必要があり、クラスター負荷の上限が 160*80%=128 コアであることを確認する必要があります。 これら 2 つのケースのどちらも、1 つの ECS インスタンスにエラーがあった場合、残りの ECS インスタンスがクラスターサービスをサポートします。

  • CPU : メモリー比率を決めます。たとえば、Java アプリケーションなどの大きなサイズのメモリーリソースを消費するアプリケーションを実行する場合、CPU : メモリー比率が 1:8 である ECS インスタンスを選択することを推奨します。

ECS ベアメタルインスタンスの選択

以下の 2 つのシナリオでは、ECS ベアメタル (EBM) インスタンスの選択を推奨します。
  • お使いのクラスターが日常の操作に 1000 コア を必要とする場合。 このケースでは、お使いのクラスターの構築におよそ 10 または 12 個の EBM インスタンスを使用することができます。1 つの EBM インスタンスには最低でも 96 コアあるためです。
  • 多くのコンテナー数を素早くスケールアウトしたい場合。 たとえば、一般的な E コマース製品プロモーションを準備していると仮定します。 想定される大きなトラフィック量を処理するために、お使いのクラスターに EBM インスタンスを追加することができます。これは、1 つの EBM インスタンスが複数のコンテナーを実行できるためです。
EBM インスタンスはお使いのクラスターに以下のメリットを提供します。
  • 極めて高いネットワークパフォーマンス RDMA (Remote Direct Memory Access) 技術が使用されています。 さらに、Terway プラグインはお使いのハードウェアからほとんどのものを取得するように設計され、ホスト間で 9 Gbit/s より高速なコンテナー帯域幅を提供します。
  • ゼロジッターコンピューティングパフォーマンス EBM インスタンスは Hypervisor を置き換える Alibaba Cloud により開発されたチップを使用しています。これは、仮想化オーバーヘッドまたはリソース優先の懸念が問題にならないことを意味しています。
  • 高いセキュリティ EBM インスタンスは物理レベル暗号化を使用しており、Intel SGX 暗号化のサポート、安定したコンピューティング環境の提供、およびブロックチェーンアプリケーションをサポートしています。