Kubernetes Engine の GPU サービスをベータ リリース
Google Cloud Japan Team
Google は昨年、Google Kubernetes Engine で GPU を利用できるようにする初の試みとして、アルファ クラスタで NVIDIA Tesla GPU をサポートするように Kubernetes Engine をアップデートし、お客様から大変な好評をいただきました。そしてこのほど、Kubernetes Engine の最新リリースで GPU サービスをベータ版へと移行し、GPU を広く利用できるようにしました。
Kubernetes Engine で GPU を使用すれば、機械学習(ML)や画像処理、財務モデリングのようなコンピュート集約型アプリケーションのパフォーマンスを高めることが可能です。CUDA ワークロードをコンテナにパッケージ化することで、Kubernetes Engine GPU の強力な処理能力の恩恵を必要なときに享受できます。その際、ハードウェアや VM を管理する必要はありません。
Google Cloud にはクラス最高の CPU、GPU、TPU(最近追加されました)が用意されており、クラウドでの ML ワークロードの実行に最適な選択肢、柔軟性、パフォーマンスを提供します。たとえば、ライドシェアのパイオニアである Lyft は、Kubernetes Engine で GPU を利用して、ディープ ラーニング モデルのトレーニングを高速化しています。
Kubernetes Engine クラスタはディープ ラーニングのワークロードにうってつけです。あらかじめ GPU が統合されており、トレーニング ワークロードの急激な変化に応じてクラスタの自動スケーリングが行われ、統合されたコンテナ ロギングおよびモニタリング機能も利用できます。
Luc Vincent 氏、Lyft のエンジニアリング担当バイス プレジデント
Kubernetes Engine では現在、NVIDIA Tesla P100 および K80 GPU がベータ リリースされており、V100 についてもベータ版の提供に向けて準備が進んでいます。また最近では、お客様に新たな機会を提供するためにプリエンプティブル GPU が新たに導入されたほか、GPU の料金も値下げされました。GPU の最新の料金はこちらをご覧ください。
Kubernetes Engine で GPU を使用する
GPU を使用するクラスタを Kubernetes Engine で作成するのは簡単です。Cloud Console から “Creating Kubernetes Cluster” ページにアクセスし、マシン タイプのボックスを展開して GPU のタイプと数を選択します。

GPU を使用するノードを既存クラスタに追加したい場合は、ノード プールとクラスタ オートスケーラの両機能を利用できます。GPU を使用するノード プールを利用すれば、クラスタはいつでも必要なときに GPU を使用できます。一方、クラスタ オートスケーラは、GPU を要求するポッドがスケジュールされるたびに、GPU を使用するノードを自動的に作成し、アクティブ ポッドで GPU が使用されなくなると、こうしたノード数をゼロにスケールダウンします。
次のコマンドを実行すると、GPU を備えたノード プール(0~5 ノードにスケーリング可能)が作成されます。
舞台裏では、テイントと容認(taint and toleration)という機能を利用して、GPU を要求するポッドだけが、GPU を使用するノードにスケジュールされるようにし、GPU を要求しないポッドがそうしたノードで動作するのを防ぎます。
Kubernetes Engine はバックグラウンドで多くの作業を行いますが、GPU ジョブの実行状況をお客様の側で把握することも可能です。GPU を使用するコンテナのメトリクス(指標)を Kubernetes Engine が出力するからです。その中には、GPU のビジー度、使用可能なメモリ量、割り当て済みのメモリ量などが含まれます。これらのメトリクスは、Stackdriver を使って可視化することができます。


Kubernetes Engine の GPU サービスの詳細、たとえば、NVIDIA ドライバのインストールや、GPU を使用するようにポッドを構成する方法などについては、こちらのドキュメントをご覧ください。
新しいワークロードを Kubernetes で
2017 年、Kubernetes Engine のコア時間は前年比で 9 倍に増加し、ML ワークロードの優れたデプロイ プラットフォームとして大きく躍進しました。ML スタックを Kubernetes で簡単かつ高速、拡張性の高い方法で実行できるようにする Kubeflow のような非常にエキサイティングなオープンソース プロジェクトも登場しています。こうしたオープンソースと Kubernetes Engine の GPU との組み合わせが、お客様のビジネスやエンジニアリング、科学のイノベーションに役立つことを私たちは願っています。今すぐお試しを!
300 ドル分の無料クレジットが使える無料トライアルで Kubernetes Engine の GPU を使い始めるには、アカウントをアップグレードし、GPU クォータを申し込んで無料クレジットを有効にする必要があります。お客様のニーズへの的確な対応を目指すロードマップの作成に対して、ご支援とフィードバックをいただき、感謝いたします。これからもご意見やご感想をお寄せいただければ幸いです。Slack の Kubernetes Engine チャンネルをご利用ください。
* この投稿は米国時間 2 月 12 日、Google Kubernetes Engine の Product Manager である Yoshi Tamura によって投稿されたもの(投稿はこちら)の抄訳です。
- By Yoshi Tamura, Product Manager, Google Kubernetes Engine