AWSのElasticsearch ServiceでElasticsearch超入門 ー前編ー

こんにちは、Granvalleyのgeneと言います。みなさん、Elasticsearch*使っているでしょうか?実はわたくし、Elasticsearchのセットアップをやったことがなかったのですが、先日試しにAWSのElasticsearch Serviceを使ってElasticsearchのセットアップをしてみたところ、びっくりするくらい簡単であることが判明しました。

こんな簡単にElasticsearchが使えちゃうなら、そのことを知らない人に一刻も早く伝えなくては、、、、ということでElasticsearchが気にはなっているけどよく知らない人向けに、どうすればElasticsearchをセットアップでき、どんな感じで実際に使い始められるのか、というところを書いていきたいと思います。二回に分けて書きますが、今回はElasticsearch Searviceの環境を作るところまでです。次回は登録したデータを検索して取得する方法まで紹介しますので、Elasticsearchに触れたことのない人にも「Elasticsearchって思ってたより簡単そうかも」と思っていただける内容にしたいと思います。

* Elasticsearchはオープンソースの全文検索エンジンです。詳しくはコチラ

Amazon Elasticsearch Serviceでのドメインの作成

まずはコンソールにログインし、サービスからElasticsearch Serviceを選びます。(もしAWSアカウントを持っていない場合はアカウントをまず作ってください!)そうすると以下のような画面になるはずです。

画像1

コンソールの右上でリージョンが選べますが、料金に地域差があるので、私はリージョンをオレゴンにしました。東京リージョンだと以下のようにオハイオやオレゴンの倍の金額がかかります。速度も特に気にならないので、安いほうを選択したほうが良いかと思います。(ちなみに私は一か月くらい使用して、30ドルほど請求されました)

t3.small.elasticsearchの場合の料金
オハイオ, オレゴン→0.036USD
東京→0.056USD

リージョンの設定に問題がなければ「新しいドメインの作成」を選択します。このドメインというのができれば、Elasticsearchが使えるようになります。

個々の設定

そうすると設定画面が開きます。以下、ひとつずつどのように設定するか見ていきますが、今回はとりあえずElasticsearchが簡単に使えるということを伝えたいので、あまり深入りはしません!

①デプロイタイプは今回はテストなので[開発およびテスト]を選択、バージョンも古いものを選ぶ理由は特にないので[最新版(7.8)]を選択します。

画像2


②次へを押すとドメイン名等を入力する画面になります。ドメイン名としては好きな名前をつけ、インスタンスはとりあえずt3.smallを選択しました。データ量が多い場合などはメモリ最適化の行われるRファミリーを選択するなどした方がいいかもしれません。ノード数もテスト的に使うだけなので「1」を選びました。

画像9

EBSストレージサイズも設定します。10GB以上が指定可能です。

画像4

「スナップショットの設定」という項目もありますが、Elasticsearch バージョン 5.3以降は時間単位のスナップショットのみがサポートされているらしく、こちらは設定できません。

③次にセキュリティの設定です。ネットワーク構成はどこからでもアクセスできるパブリックアクセスにしました。認証はユーザー名とパスワードだけのBASIC認証にしたいと思います。一見するとどこで設定するかわかりませんが、「細かいアクセスコントロールを有効化」にチェックをつけ、「マスターユーザーの作成」を選択すると、パスワードが設定できます。これでマスターユーザー名とパスワードで認証可能になります。

画像5

画像9

④その他の設定が続きますが、この辺りの設定は何もせず「次へ」を押します。

画像7

画像9

⑤そうすると確認画面が出るので、ここでも「確認」を押下します。そうすると、ドメインが作成されます。ただ、まだ初期化の処理があります。初期化は10分ほど時間がかかりますが、しばらく放っておけばドメインの初期化が完了し、使える状態になります。

画像9

いかがでしょうか。ドメイン名をつけて、インスタンス選んで、パスワード設定するだけで、Elasticsearchのセットアップがあっという間にできてしまいました。とても簡単ですね。

まとめ

AWSのコンソール上でポチポチ設定しただけですが、Elasticsearchを無事に使えるようになりました。実際に運用するのであれば、パフォーマンスやコスト面のことを詳しく検討する必要があると思いますが、テスト的に使うことはとても簡単にできそうです。

次回はElasticsearchにデータを登録して検索などをしてみたいと思います!

この記事が気に入ったらサポートをしてみませんか?