AWSからは様々なサービスが提供されており、全てを使いこなすことは難しいと言えます。
各利用用途に応じて、適切なサービスを選択しなければいけません。
今回は、ログ分析やアプリケーションのモニタリングを目的としてAWSを利用したい方向けに「AWS Elasticsearch」の特徴や料金体系といった基本情報をご紹介していきます。
目次
AWS Elasticsearchとは
AWS Elasticsearchは、オープンソースのRESTful分散検索/分析エンジンです。
Elastic社が提供する「Lucene」をベースとして構築され、2010年にリリースされました。
ログ分析、フルテキスト検索、セキュリティインテリジェンス、ビジネス分析など、オペレーショナルインテリジェンスのユースケースとして広く利用されています。
クイックスタートチュートリアル
AWS Elasticresearchの開始方法については、公式ページでチュートリアルを確認することが可能です。
残念ながらサイトの日本語化が完全には出来ていないようで、英語のドキュメントで確認する必要があります。
チュートリアルを通して、AWS Elasticresearchを活用した「ウェブアプリケーションの開発方法」から、「スケーラブルなログ分析アプリケーション開発」「Logstashプラグインを活用したデータアップロード」「S3・Kinesis Data Firehose・CloudWatchといった各種AWSサービスと連携させてのストリーミングデータ読み込み」について確認することが可能です。
AWS Elasticsearchの特徴
AWS Elasticsearchの特徴として、「デプロイの容易さ」「スケーラビリティの高さ」「安全性の高さ」「費用対効果の高さ」が挙げられます。
デプロイと管理の容易さ
AWSのコンソール画面からGUIによる操作で、数回クリック作業を行うだけでデプロイが行える手軽さが魅力です。
従来のようにアプリケーションのインストールや各種設定を行う手間が簡略化されるだけでなく、運用中のパフォーマンスチェックやモニタリング作業もAWSの管理画面から行えるため、操作が一元化されるメリットもあります。
スケーラビリティの高さ
AWSのようなクラウドサービスを利用する大きなメリットとして、スケーラビリティの高さが挙げられます。
ディスク容量が不足した場合や、パフォーマンスが悪くなった場合に、インスタンス数の変更やディスク容量の変更といったスケールアップ・スケールアウトを管理画面のクリック作業だけで簡単に実現することが出来ます。
安全性の高さ
AWS Elasticsearchでは、VPCセキュリティポリシーまたはIPベースのアクセスポリシーでネットワークアクセス設定を行い、安全な接続環境を構築することが可能です。
また、Amazon CognitoやAWS Identify and Acess Management(IAM)によるユーザー認証や、従来からの基本認証でのアクセス管理も実現出来ます。
費用対効果の高さ
AWS Elasticsearchは従量課金制を採用しているため、最低料金や契約料のような支払いが発生しません。
また1年または3年の長期間インスタンス契約を行うことで、短期で利用するケースに比べて大幅な節約が可能になるそうです。
AWS Elasticsearchを利用するメリット
AWS Elasticsearchを利用することのメリットとして「リアルタイムのオペレーション」「各種プログラミング言語に対応」「無料ツールとプラグインの豊富さ」が挙げられます。
リアルタイムのオペレーション
データの読み書きなどElasticresearchによるオペレーションは完了までに1秒も掛からないそうです。
アプリケーションのモニタリング・異常検知といった運用をElasticresearchを利用することで、ほぼリアルタイムに実現することが可能となります。
各種プログラミング言語に対応
Elasticsearchでは各種プログラミング言語に対応しており、「Java」「Python」「PHP」「JavaScript」「Node.js」「Ruby」などが利用可能です。
開発者が得意な言語をそのまま利用することが出来ることから、開発効率の最適化に繋がります。
無料ツールとプラグインの豊富さ
AWS Elasticsearchでは、一般的な可視化およびレポート作成ツールである「Kibana」と統合されています。
また、Elastic社が提供しているログやリソースなどのデータ収集で利用可能な「Beats」、データの加工やフィルタリングといったプラグインが提供される「Logstash」とも統合されているようです。
オープンソースとして提供されているElasticsearch用のプラグインを活用することで、アプリケーションの機能追加を容易に行える点もメリットとなります。
AWS Elasticsearchの料金体系
AWS Elasticsearchの料金体系について概要部分をご紹介していきます。
利用可能なインスタンスは多岐に渡りますので、詳細情報についてはAWS Elasticsearch料金ページをご確認ください。
日本リージョンの例
- 汎用/最安構成
- インスタンス名: t2.micro.elasticsearch
- vCPU: 1
- メモリ: 1GiB
- インスタンスストレージ: EBSのみ
- 1時間あたりの料金: 0.028USD
- 汎用/最大構成
- インスタンス名: m5.12xlarge.elasticsearch
- vCPU: 48
- メモリ: 192GiB
- インスタンスストレージ: EBSのみ
- 1時間あたりの料金: 4.39USD
- コンピューティング最適化/最安構成
- インスタンス名: c5.large.elasticsearch
- vCPU: 2
- メモリ: 4GiB
- インスタンスストレージ: EBSのみ
- 1時間あたりの料金: 0.158USD
- コンピューティング最適化/最大構成
- インスタンス名: c5.18xlarge.elasticsearch
- vCPU: 72
- メモリ: 144
- インスタンスストレージ: EBSのみ
- 1時間あたりの料金: 5.682USD
- メモリ最適化/最安構成
- インスタンス名: r5.large.elasticsearch
- vCPU: 2
- メモリ: 16GiB
- インスタンスストレージ: EBSのみ
- 1時間あたりの料金: 0.224USD
- メモリ最適化/最大構成
- インスタンス名: r4.16xlarge.elasticsearch
- vCPU: 64
- メモリ: 488GiB
- インスタンスストレージ: EBSのみ
- 1時間あたりの料金: 7.555USD
- ストレージ最適化/最安構成
- インスタンス名: i3.large.elasticsearch
- vCPU: 2
- メモリ: 15.25GiB
- インスタンスストレージ: 1 x 475 NVMe SSD
- 1時間あたりの料金: 0.293USD
- ストレージ最適化/最大構成
- インスタンス名: i3.16xlarge.elasticsearch
- vCPU: 64
- メモリ: 488GiB
- インスタンスストレージ: 8 x 1900 NVMe SSD
- 1時間あたりの料金: 9.37USD
無料枠
AWS Elasticsearchは、無料利用枠が一定の範囲内で提供されています。
「t2.micro.elasticsearch」または「t3.small.elasticsearch」インスタンスを1ヶ月あたり最大750時間まで、加えて1ヶ月あたり10GBまでのAWS EBSストレージを利用可能です。
無料枠を超えた使用分に関しては、別途料金が発生するため注意が必要です。
さいごに: AWS Elasticsearchの無料枠を活用して学習してみよう
本記事では、AWS Elasticsearchの概要から、特徴や料金体系についてご紹介してきました。
興味のある方は実際にサービスを触ってみるのが一番です。
記事内でもご紹介した通り、一定の範囲内であればAWS Elasticresearchを無料で利用することが可能で、学習目的の利用には十分すぎる内容です。
まずは一度ご自身の環境でお試し頂き、実際に実務で利用する前に、基本的な使い方をマスターしておきましょう。