BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース クラウドゾンビが地球を破壊する理由と、ゾンビ狩りの秘訣

クラウドゾンビが地球を破壊する理由と、ゾンビ狩りの秘訣

クラウドゾンビとは役に立つ仕事をしていないサーバー・リソースのことだ。彼らはどこにでもいて、お金と電気を食い、CO2を吐き出している。もちろん無用な存在であることには間違いない。では、どうやって彼らを排除すればよいだろうか?

QCon London※で、Quarkus senior principal software engineerとしてRedHatで活躍しているHolly Cummins氏は、利用率と弾力性が持続可能性にどう関係するかを語った。そして、ものすごくシンプルな自動化、LightSwitchOps、およびFinOpsなど、実用的なゾンビ狩りの技術を紹介した。

※ 訳注: InfoQによるテックカンファレンス。今回の開催場所はロンドン。

Cummins氏は、誰しも聞き覚えのあるサーバー運用に関する"あるある"なエピソードから話を切り出した。Kubernetesクラスターを2ヶ月間稼働させた結果1000ドル以上のコストを要した話や、160ドルのインスタンスを稼働させたという話などなど。忘れ去られたゾンビとサーバーの問題は目に見えないため把握が難しいが、研究者はこの問題を調査しており、次のように定義した。

「ゾンビとは6ヶ月以上、何の情報もコンピューティングサービスも提供していないリソースのことである。」

これは誰のためにも何もしない、いわゆる「昏睡状態」のサーバーのことだ。Cummins氏によれば「十分に活用されていない」サーバーというのも存在するという。米国のデータセンターで消費されるエネルギーの多くは、ほぼ何もしない1200万台以上のサーバーによって消費されている。平均的なサーバーは、12~18%の容量と30~60%の最大電力を消費していると述べている。そして最後に彼女は他のいくつかの研究と、2021年に行われた、常時稼働のクラウドリソースによる1年間で266億ドルがパブリッククラウドで浪費されたという研究にも触れている。

Cummins氏によると、ゾンビの対策は、過剰なプロビジョニングサービス、予測される終了、ビジネスプロセスの変更、またはサーバーの切り離し要件、といったイベント発生時に起こるサーバーの電源を切るタスクを人々が忘れないようにすることだ。稼働率の低いサーバーでは、週末実行のバッチジョブや、24時間365日稼働しながら営業時間内だけ稼働するシステムがインシデントを起こす場合がある。例えばこれをオートスケーリングで解決できるが、スケールダウンはそう簡単にはできない。

ゾンビの問題を解決するには、グリーンコンピューティングモデルを活用する。

Cummins氏は、3つの特性(弾性、利用、効用)を説明した。効率化のアルゴリズムはゾンビには関係ない。

最終的な目標は、検出と破壊によってゾンビを排除することである。手法としては、システム考古学や、スクリームテストを利用できるとして、このテストについていくつかのエピソードを語った。また将来のレビューのためにメタデータを提供するタグ付けという方法もあるが、これは手作業でしばしば不明確とのこと。そして最後に、GreenOps、FinOps、AIOps、LightSwitchOpsなど、ゾンビを排除するのに有効な一連の"Ops"を挙げた。LightSwitchOpsは、Cummins氏がサーバーの電源を切って電気のスイッチのように立ち上げる操作と表現した独自のSomethingOpsである。そして、これは高速で常に動作する必要がある(resilient and idempotent)。

Cummins氏は、スクリプトを使ってサーバーの電源を入れたり切ったりすることで、コストを削減する事例を紹介した。くわえてGitOps(Infrastructure as Code)を活用することで、サーバーをスピーディに起動/停止することができ、GitOpsは冗長性を必要とするシステムの代替となり得ると説明した。

またCummins氏はクラウド(見えないので忘れがち)、仮想化、サーバーレスなど、ゾンビの排除に役立たないものについても言及し、コストがかからないかもしれないのにインスタンスが動いていることもあると述べ、さらに、厳しいガバナンスによる予防も役に立たないと説明した。

最後にCummins氏は、ゾンビはサーバーだけでなく、データやネットワークトラフィック(目的地に到達しないパケット)も含まれると言及する。それらが一緒になって、インターネット・バックグラウンド・ノイズと呼ばれるものを構成しているとのことだ。

彼女はゾンビの排除には財政と環境にでウィン・ウィンの関係があると述べ、ゾンビをなくす努力、より良い利用(弾力性、マルチテナント)と脱ゾンビ化(可視性、分散性)に役立つツールを使用または作成し、GreenOps、FinOps、AIOps、LightSwitchOpsを活用するべきだ、と締めくくった。

InfoQ: LightSwitchOpsのアイデアはいつ思いついたのですか?

Holly Cummins氏:ゾンビサーバーと利用率については以前から考えていましたが、LightSwitchOpsの実現はQuarkusの起動時間を見たときに思いつきました。Quarkusはネイティブにコンパイルすると、LED電球よりも速く起動するのです。これは技術的に衝撃的なことで「なぜ使わないときはサーバーを停止し、必要なときに起動しないのか。」という問題の半分を解決できます。残りの半分は技術で解決する話ではなく、周囲のプロセスやインフラのせいで組織がサーバーの起動・停止に消極的になっているということでした。ですからサーバーを電灯のスイッチのように扱えるようにすることは、(a)自明な目標ではなく、(b)多くの無駄を解決することになると思われました。

InfoQ:サーバーを有効に運用するには、どんな方法がありますか?良いフレームワークやツールはありますか?

Holly Cummins氏:不完全ではありますが、自動スケーリングツールはサーバーの使用率を最適化するための良いスタートとなります。これらは通常、Kubernetesのような特定のプラットフォーム向けに調整されています。データセンターレベルでは、Turbonomic Application Resource Management(私の同僚が良い結果を出しています)やDensify(私は個人的に使ったことがありません)のようなツールが役に立ちます。

作者について

この記事に星をつける

おすすめ度
スタイル

BT