株式会社ネットワールドのエンジニアがお届けする技術情報ブログです。
各製品のエキスパートたちが旬なトピックをご紹介します。

クラウドOSの覚醒 : さらなる深淵へ

本記事の原文はNutanixコミュニティのブログNutanix Connect Blogの記事の翻訳ヴァージョンです。原文の著者はNutanix社のProduct Marketing PrincipalのMaryam Sanglaji氏です。原文を参照したい方はThe Cloud OS Awakens : A Deeper Diveをご確認ください。情報は原文の投稿時のままの情報ですので、現時点では投稿時の情報と製品とで差異が出ている場合があります。

当社のNutanix社製品についてはこちら。本ブログのNutanix関連記事のまとめページこちら

ネットワールドのNutanix関連情報はぜひ以下のポータルから取得ください(初回はID、パスワードの取得が必要です)。

Fig357

前回の記事「クラウドOSの覚醒 : 新たなる希望」につづいて、如何に機械学習(ML - Machine Learning)と人工知能(AI - 人工知能)がNutanixのエンタープライズクラウドOSを強力なものにしているのかご説明してきました。ヨーダが「スープができるまで待つことも重要じゃ」というように、もう少し奥深く踏み入ってみましょう。

クラスタ健全性の維持のための不具合の検知

すべての拡張性のためのアーキテクチャは障害時にアプリケーションのダウンタイムが発生せず、ビジネスと売上に関するリスクをゼロにするように設計されているべきです。これは必須事項ではあるものの、9が5つもしくはもっと多く着くような可用性を保持する高可用性システムを提供するだけでは充分とはいえません。障害ノードの検知/取り回しに加えて、完全なスケールアウトアプリケーションは Limplock や Fail-Stutter Fault Tolerance と言った論文に取り上げられているような部分障害についても取り回さなければなりません。

部分障害は完全には停止しないまでも、非常に不健全なノードが引き起こすもので、クラスタ全体の性能を引き下げてしまいます。機械学習アルゴリズムはこうした振る舞いを学習し、タイムリーにクラスタの健全性を維持するための適切なアクションを起こすことができるようにするということを劇的に改善してくれます。Nutanixクラスタは既にこれをマスター(習得)しており、高可用性を維持できるようになっています。この特定の問題のために、NutanixはDBSCANと呼ばれるクラスタ化のアルゴリズムをNutanixの分散された劣化ノード監視とともに活用しています。

Fig358

図1: この図は部分障害によるパフォーマンスの劣化がどれだけのものかと、部分障害の検知が有効になっており、リカバリされていることを示しています

この手順内で、全てのノードはそれぞれのノードのパフォーマンスをベースとしてスコアを計算します。DBSCANアルゴリズムはこのデータを元にそれからスコアが劣化を示している障害ノードを検出します。障害ノードを検出した後、アラートが生成され、リーダーシップと重要なサービスはそのホストでは動作させないようにします。もしノードが運用上問題なくなればクラスタへ戻すこともできます。結果としてこの機能はクラスタの健全性と可用性を保証しているのです。

最適化と事前の配置

全ての仮想マシンに対しての性能を保証するために、クラスタは常に適切なリソース利用をかしこく実施しなくてはなりません。しかしながら、環境、仮想マシン数、そしてワークロードのタイプが常に変化し続ける場合には、クラスタ内で一貫したパフォーマンスを維持するということは非常に難しくなります。こうしたことから、データセンタ内では多くの仮想マシンの配置に関する問題が発生します。配置が悪かったことが原因でクラスタ上で動作しているアプリケーションのパフォーマンスが想定外のエクスペリエンスになることもあるのです。

それだけではありません。リソースの競合が発生する場合もあります。仮想マシンの統合率を向上するために多くのリソースをオーバーコミットし、それによってノード間のピークトラフィックの時間に競合が発生することも有ります。想定どおりでない低いパフォーマンスがビジネスに直接の影響を及ぼすということは明らかです。ここがNutanixのハイパーバイザーであるAHVのAcropolis Dynamic Scheduler(ADS)の腕の見せ所です。ADSは制約充足問題(CSP - Constraint Satisfaction Problem)解決機(Solver - ソルバー)を活用して、仮想マシンの配置とスケジューリングを改善します。CSPソルバーは人工知能(AI)を利用しています。

Fig359

図 2: ADS エンジン

こうしたソルバーはHAの予約やアンチアフィニティ、アフィニティルール、ストレージパフォーマンスなどの制約のリストを満たしながら仮想マシンの適切な配置を実現します。この機能は常に有効で、戸惑うこと無く、事前的にホットスポットに対処したり、全リソースの利用が利用できるようにします。もっとも重要なことはこの機能は障害無害化されており、障害に対して堅牢で、仮想マシンの配置中に常に可用性を維持できているということです。

仮想マシンの振る舞いの学習

単一クラスタ内に多くの仮想マシン、多くの異なるアプリケーションが動作している場合、それらの全てがリソースを消費し、それぞれが異なったリソース消費の特徴を示します。ある仮想マシンは日中は高い稼働を示しますが、それ以外の時間はほとんど活動していないということも有ります。利用できるリソースを効率的に活用するためにはこうした振る舞いのパターンを理解する必要があります。継続して変わり続ける巨大な環境においてマニュアルで追跡して学習していくことは大変に厄介な仕事になります。一体誰がこんなことに時間を使いたいと心から思うのでしょうか?

もっと他に解決し無くてはならないビジネス上の問題があるはずです。大きな環境では仮想マシンは作成された後に、しばしば忘れ去られてしまうことも有ります。ユーザーのために仮想マシンを作成したのに、全く使われていないという経験をしたことがあるのではないでしょうか?ここにはNutanixのX-FIT エンジンが救助に来てくれます。Prism Central内でX-FITエンジンは時系列分析アルゴリズムを実行してパターンを特定します。

Fig360

図 3: Prism Central

こうしたアルゴリズムは時系列内の定期的な変動部分のトレンドもモデル化することができます。例えば、X-FITエンジンは週次と日次の定期変動パターンをモデル化できるようになっています。この学習済みの振る舞いはシステムの不具合の検知に役立ち、結果としてスマートアラートを生成することができます。さらに、一度振る舞いを学習すれば振る舞いバンド、そこからのマージン、そしてアラートゾーンが作成されます。これらのカテゴリとゾーンはPrism Central内に表示されます。こうして全ての振る舞いのおかしい仮想マシン(例 : リソース不足の仮想マシン、高負荷の仮想マシン、ゾンビの仮想マシン、そして割当の多すぎる仮想マシン)がカテゴライズされ、視覚化されるため、適切なアクションを取ることができます。

スマートな計画と What if 分析

あてずっぽうとエクセルシート! データセンタにおいて重要で代えがたい決断をする前にいくつの異なる管理コンソールを監視しなくてはならないでしょうか? どうやったらオーバープロビジョニングとそのコストを回避できるでしょうか? X-FITエンジンは仮想マシンの振る舞い分析のみならず、正確な予測も提供にも役立ちます。多くのお客様はワンクリックアップグレードとPrism Centralのワンクリック運用知見を愛用していただいています。そしてX-FITのお陰でワンクリックの計画オプションも活用することができるのです。X-FITエンジンはARIMA、Theta、Neuralなどのアルゴリズムを組み合わせて動作しており、トーナメント方式で最もデータをうまく予測できるアルゴリズムを選び出します。トーナメントの勝者が選定された後、その予測が統合されます。

こうした予測はお客様が本当に必要とするリソースを見積もることをアシストし、特定のワークロードのための適切なハードウェアのサイジングを行う手助けとなります。お客様はワンクリック計画を利用して、簡単にいつキャパシティが底をつくのかということを見ることができます。これが計画の力が花開く場所です。Prism Centralでwhat if 分析を利用して追加しなくてはならないワークロードを指定すると、システムはリソースの推奨を生成します。X-FITのようなテクノロジーを活用することで、データセンター内の非効率を排除し、大規模なコストの削減ができるということに気がつくことが重要です。ストレスの多い、コストの掛かる、そしててんやわんやのITの更新サイクルに別れを告げ、Nutanixとご対面しましょう。

Fig361_2

図 4: X-FIT フローチャート

さて、ここまででこれらの4つのカテゴリのより深くまでをお話してきました。MLやAIのようなテクノロジーの活用がデータセンタ内に本当のワンクリック運用エクスペリエンスをもたらすということは明らかです。こうしたテクノロジーは本当のクラウドと同じようなエクスペリエンスをエンタープライズのデータセンタへともたらし、ITスタッフのリソースを最小で済ませることができるようになるのです。「大きさは問題ではない。わしを見てみろ。わしを大きさで判断するのか? ん? ん? そうではないだろう?」 ヨーダ

リソース:

http://research.cs.wisc.edu/adsl/Publications/fail-stutter.pdf

http://ucare.cs.uchicago.edu/pdf/socc13-limplock.pdf

https://www.nutanix.com/go/nutanix-machine-learning-engine-x-fit.html 

Disclaimer: This blog may contain links to external websites that are not part of Nutanix.com. Nutanix does not control these sites and disclaims all responsibility for the content or accuracy of any external site. Our decision to link to an external site should not be considered an endorsement of any content on such site.

© 2017 Nutanix, Inc.  All rights reserved. Nutanix, the Enterprise Cloud Platform, and the Nutanix logo are registered trademarks or trademarks of Nutanix, Inc. in the United States and other countries. All other brand names mentioned herein are for identification purposes only and may be the trademarks of their respective holder(s).

記事担当者: マーケティング本部 三好哲生 (@Networld_NTNX

Ntc2017_2

読んでみてわかった方もおられると思いますが、この記事は先週の記事のもとになっている記事で、先週の記事はわかりやすく技術的もしくは学術的なことを隠して話が進んでいますが、今回の記事は利用されているアルゴリズムや複雑な問題の解決方法、どうしたフローチャートでNutanixが機械学習人工知能を活用しているかが解説されています。

機械学習人工知能の活用は最近急に取り沙汰されていますが、「これからはAIだー!」と大上段に構えて、ディープラーニングGPU、TensorFlowなどに取り組んだり、外からそれ専用のスタッフを招聘する必要はないのです。Nutanixを入れればそれはそうは見えませんが、機械学習人工知能の塊です。ITスタッフがインフラのおもりから解放される・・・そのスタッフは企業の業務を熟知したそれこそその企業ためだけのデジタル革命の専門家・ジェダイなのです。やっぱりNutanixはヨーダでしたね(笑・・・すいません)

インビジブルにML,AIを届ける・・・これもNutanixの創業から変わらぬシンプルさの追求の一つだと思いました。