2018年9月25日 リリース

ECE 2.0:ホストのタグ付け、Hot-Warmアーキテクチャーほか、新機能を含む大幅アップデート

著者 Roy Zanbel

Elastic Cloud Enterprise(ECE)のリリースから約1年を迎えました。リリースは嬉しいものですが、実は全面的に楽観視していたわけではありません。ECEではElasticsearchを使ったデプロイのプロビジョニングから管理、スケールまで一元的に、簡単に行うことができます。しかし、Elasticsearchを使った大規模なデプロイを管理するソリューションを構築するとなると、それなりに大変です。(私たちもElasticsearch Serviceを社内用に構築して痛感しました。)

ECEはElasticsearch Serviceとまったく同じコードを用いて、パッケージ化しています。パッケージ化することで、どこにでもデプロイでき、テスト済みのソフトウェアの機能を同じに保ったまま、複数のクラウドプロバイダーで何千というクラスターを管理できるようにしています。

リリース後、企業は大企業だけでなく、比較的小規模なワークロードを持つ企業にもECEを利用してくれていることがわかりました。ECEは、あらゆる業務に活用できる可能性が十分あります。

Elasticではこの1年を通じてECEのユーザーについて学び、サービスを改善しつつ、今後の改良の方向性を理解してきました。そして今回、さらに進化したバージョンとなる"ECE 2.0"をリリースします。

ECE 2.0には多くのメリットがあります。その中から、特に優れた機能をいくつかご紹介しましょう。 

あらゆる規模の、あらゆるユースケースに対応

ECE 2.0で最も進化したのは、ログや時系列データなど大規模なユースケースへのサポートです。こうしたユースケースでオーナーがクラスターをデプロイ、設定する方法を、管理者がより踏み込んで制御できるようになりました。以下に、主なポイントをいくつか詳しく説明します。

自在にタグ付け

タグ付けとは、各アロケーターホストにKey-Valueペアを追加することです。クラウドやコンテナーオーケストレーションでは一般的な手法で、ラベルとセレクターを使ってペアリングさせます。ECE 2.0にはアロケーターをタグ付けする機能が導入され、アロケーターに任意のタグを追加して分類することができるようになりました。所属するグループのIDとして追加することもでき、基盤ハードウェアの仕様からその他の識別子まで、さまざまなアロケーターを分類できます。このようなタグにより、クラスターノードやKibanaインスタンスを最適にホストするアロケーターにマッチさせることができます。 

host_tagging.png

インスタンス構成のカスタマイズが可能

以前のECEでは、すべてのElasticsearchノードが均質に設定されていました。同じ構成で、有効なロールも同一でした。多くのユースケースではノードタイプを個別に管理する必要があり、この点が使用上の制約となっていました。 

ECE 2.0では、各クラスターのコンポーネントを個別にデプロイ、管理、スケールできるようになっています。ECE 2.0はインスタンス構成が可能となり、各ノードで有効化するロールも、上述のタグでノードにアロケーターホストをマッチさせるフィルターの設定も自由に行えます。またノードの使用目的に応じてRAMでストレージの割合を設定することも可能です。

creating_instance_config.gif

デプロイテンプレートの登場

コンソールに加わったデプロイテンプレートは、さまざまな場面で役立ちます。デプロイテンプレートは、さままざまなノードタイプのインスタンス設定をまとめたクラスターの設計図です。デプロイテンプレートを使って各ノードタイプごとにノードサイズや可用ゾーン数など、デフォルトの値と設定を決めることができます。

またオリジナルのテンプレートを作成し、ユースケースやチームなどに応じて構成することで、一意のアロケーターのセットを使うことができます。新しいクラスターを作成する場合に、デプロイテンプレートの事前構成設定を使用することで、デプロイの各プロセスがスムーズになります。

deployment_template.png

時系列インデックスのユーザーに嬉しい新機能

よくあるElastic Stackのユースケースの1つに、ログメッセージなど、時系列データの投入があります。こうしたシナリオ、特に大規模デプロイでおすすめなのが、今回追加されたHot-Warmアーキテクチャーです。 

ECE 2.0にはHot-Warmアーキテクチャーテンプレートが搭載されており、2つの異なるティアでデータノードを設定することができます。Hotデータノードはデータの投入と最新のインデックスの格納に使用されます。検索対象になりやすく、I/Oパフォーマンスにすぐれた堅牢なホストにデプロイする必要があります。一方、Warmデータノードは大量のデータを長期間保存するために使用します。一般に、古いデータは変化がなく、頻繁にアクセス対象となることもありません。そのため、より安価な回転ディスク式のアロケーターホストに格納すれば、パフォーマンスはいまひとつでも、データストレージのコストを抑制できます。

HotティアからWarmティアへインデックスをロールオーバーするタイミングは、ECE 2.0に内蔵のインデックスキュレーション機能で指定できます。最初に期間を設定すれば、後は何もしなくてもECEがすべて処理してくれます。

index_curation.png

新機能を組み合わせる

ログ分析からセキュリティ分析、メトリック、検索など、Elastic Stackは幅広いユースケースに使えます。新たにデプロイする場合、ユースケースによって相性の良い特定のハードウェアプロフィールがあることに気づくことがあるはずです。同じクラスター内でも、ノードタイプによって、関連性の高いプロフィールにペアリングされたアロケーターホスト上で実行するとパフォーマンスが良い場合があります。たとえばKibanaインスタンスはRAMが多く、ストレージ容量の少ないホストと相性が良い一方で、機械学習ノードはストレージ容量は少なくても、高性能なCPUのホストで実行するとパフォーマンスが良い、といったことです。 

ホストのタグ付け、インスタンス構成、デプロイテンプレート機能が加わったECE 2.0ではクラスター管理がフレキシブルになり、高度な制御が可能です。さらに各種のハードウェアプロフィールをネイティブにサポートし、ハードウェアの使い方を最適化してパフォーマンスを高めながら、コストを抑えることができます。 

各種機能をユースケースで活用する方法も豊富にあり、今後もブログで詳しくご紹介していく予定です。ニーズに応じた適切な構成で実装する方法など、実用的なコンテンツをお届けしてまいります。

専用ノードで機械学習を導入

インスタンス構成の部分で詳しく説明しましたが、以前のECEではクラスターの各ノードで個別のロールを有効化することができませんでした。このことは、ホストされたクラスターで機械学習を実行する場合にも制約となっていました。運用環境で機械学習ジョブを実行するには、機械学習の専用ノードが必要となるためです。 

今回インスタンス構成の機能が導入されたことで、機械学習専用のノードを設定し、クラスター内の他のノードとは別に管理、スケールすることができるようになりました。

また、インスタンス構成機能を活用して大規模なクラスターのサポートや、投入専用ノードに必要となる専用マスターノードを作成することもできます。時間のかかる投入プロセスとなっている場合や、データの拡充のためパイプラインを追加するといった投入レイヤーのスケール時に便利です。

scaling_instance.gif

UbuntuでDockerの最新バージョンをサポート

ECE 2.0では、Ubuntu 16.04にDocker 18.03をインストールできるようになりました。これまでECEでインストールできたDocker 1.11は先日公式によるサポート終了となり、このアップデートを期待していたユーザーも多かったはずです。現在、あらゆるECEノードでDockerエンジンをアップグレードできるようになりました。

今後は、2年のサポート周期に合わせてよりハイペースにDockerの最新バージョンをサポートしていく予定です。

SAML認証を追加

ECEは以前からすべてのデプロイにLDAP/ADなどのセキュリティ認証機能を統合していました。今回のECE 2.0ではさらに認証が充実し、SAML認証も選択肢に加わっています。

後方互換性

ECE 2.0.0はメジャーなリリースですが、すべての機能で後方互換性を備えています。したがってECE 2.0.0にアップグレードした場合、ECE 1.xでインストールしたすべての機能は保たれており、更新によるメリットを活用できます。

コンソールの改善

ユーザーコンソールに多数の変更が加わり、一層使いやすくなりました。その一部をご紹介します。

  • 総称の"deployment":Elastic Stackのラインナップがますます充実し、ECEで作成するものも今やElasticsearchクラスターに限定されません。そこで、Elastic Stackを使った作成物を"deployment"(または"デプロイ")と総称することにしました。現在のECEには、この呼び方のほうがしっくりきます。
  • 作成用のワークフロー:インスタンス構成とデプロイテンプレートをサポートするため、新たに"Create Deployment"ワークフローを追加しました。このワークフローを使用して構成の変更や、デフォルト設定の保存、テンプレートに基づくデプロイの作成を行うことができます。
  • ナビゲーションの改良:UIやデプロイの編集操作が行いやすくなるよう、ナビゲーションをアップデートしました。すべてのデプロイを表示する概要ページと、特定のデプロイを詳細に表示するページも改良され、より重要な情報と実施可能な操作を表示するようにしました。
  • 目に優しい:作業中に日が暮れたら、ECEで"ナイトテーマ"に切り替えることができるようになりました。目に優しく、夕暮れや夜の室内空間でも妨げになりません。

ECE 2.0には他にもたくさんの新機能が追加されています。リリースノートですべての内容が公開されています。試してみたいという方は、30日の無料トライアルをご利用ください。フィードバックやご感想もお待ちしています。