このドキュメントでは、GKE が特定のワークロードのパフォーマンスを改善するために最適化を生成する方法と、最適化された構成がクラスタとワークロードに適用される方法について説明します。
最適化された構成を推奨するために、Google Cloud CLI コマンド gcloud container workload profiles manifests create は Kubernetes マニフェストを生成します。これらのマニフェストは、最適化されたアプリケーション レベルとノードレベルの構成を提供し、Redis と MySQL のワークロードのパフォーマンスを向上させることができます。これらの特定のワークロードを最適化する手順については、以下をご覧ください。
MySQL ワークロードについては、GKE で MySQL ワークロードのパフォーマンスを最適化するをご覧ください。
Redis ワークロードについては、GKE で Redis ワークロードのパフォーマンスを最適化するをご覧ください。
ワークロードの最適化の仕組み
ワークロードのパフォーマンスを向上させるため、Google Cloud CLI コマンド gcloud container workload profiles manifests create は、推奨されるアプリケーション レベルとノードレベルの構成で Kubernetes マニフェストを生成します。
生成されたマニフェストは、アプリケーション レベルの構成の場合は ConfigMap、ノードレベルの構成の場合は ComputeClass の形式になります。マニフェストを適用すると、ワークロードはマニフェストを参照して最適化された構成を使用できます。
ConfigMap には、アプリケーションが理解できる構成が含まれています。たとえば、Redis の場合、Google Cloud CLI コマンドは redis.conf ファイルを作成します。ComputeClass は、ワークロード用にプロビジョニングするノードのタイプを GKE に指示します。
推奨される最適化は、特定のユースケースと現在の構成に基づいています。
ワークロードによる最適化の参照方法
Workload Optimization によって提供される最適化された構成を利用するには、Pod でそれらを参照する必要があります。アプリケーション レベルの最適化(ConfigMap)は、ボリュームとして Pod にマウントされます。マウントされたファイルは、起動時にアプリケーションから参照できます。
ノードレベルの最適化(ComputeClass)は、Pod の nodeSelector フィールドで参照されます。
次のステップ
- MySQL ワークロードを最適化するには、GKE で MySQL ワークロードのパフォーマンスを最適化するをご覧ください。
- Redis ワークロードを最適化するには、GKE で Redis ワークロードのパフォーマンスを最適化するをご覧ください。
- GKE ComputeClass の詳細を確認する。