グーグルのクラウドを支えるテクノロジー > 第83回 Borgクラスター稼働状況の最新データ
- 編集部の見解や意向と異なる内容の場合があります
- 編集部は内容について正確性を保証できません
- 画像が表示されない場合、編集部では対応できません
- 内容の追加・修正も編集部では対応できません
CTC教育サービスはコラム「グーグルのクラウドを支えるテクノロジー > 第83回 Borgクラスター稼働状況の最新データ」を公開しました。
###
はじめに
今回は、2020年に公開された論文「Borg: the Next Generation」を元にして、Googleのデータセンターにおけるサーバークラスター稼働状況の最新データを紹介します。Googleのデータセンターでは、Borgと呼ばれる独自のクラスター管理システムを使用していますが、オープンソースのコンテナ管理システムであるKubernetesは、Borgの仕組みがベースになっていることでもよく知られています。今回公開されたデータは、大規模な環境でKubernetesを活用する際のヒントにもなるでしょう。
Borgによるコンテナ実行環境
Kubernetesの環境では、「Deployment」リソースを定義すると、そこで指定されたコンテナイメージを用いて、同一の機能を提供する複数のPodが起動します。これに対応して、Borgの環境では、マスターサーバーに「Job」の作成要求を出すと、そこで指定されたアプリケーションバイナリーから(同一の機能を提供する)複数のコンテナが「Task」として起動します。Kubernetesの環境では、それぞれのPodが利用するCPU時間とメモリー容量について上限を設定することができますが、Borgの環境でも同様の設定が行われます。
また、Kubernetesの環境においてPodの数を自由に増減できるのと同じように、Borgの環境でもTaskの数をダイナミックに増減することができます。Borgの環境には、「Autopilot」と呼ばれるオートスケーリングの機能が用意されており、これを用いると、1つのTaskに割り当てるCPU時間とメモリー容量の上限(垂直スケーリング)、および、Taskの数(水平スケーリング)をアプリケーションの負荷に応じて自動調整することができます。
そして、Borgに投入するJobには、次の4種類のプライオリティのいずれか1つが設定されます。
この続きは以下をご覧ください
https://www.school.ctc-g.co.jp/columns/nakai2/nakai283.html
ソーシャルもやってます!