Amazon Elasticsearch Service
開発者ガイド (API バージョン 2015-01-01)

ステップ 1: Amazon ES ドメインを作成する

重要

このプロセスは、簡潔なチュートリアルでテストドメインを設定します。本番稼働用ドメインの作成には使用できません。同じプロセスの包括的なバージョンについては、「Amazon Elasticsearch Service ドメインの作成と設定」を参照してください。

An Amazon ES domain is synonymous with an Elasticsearch cluster. Domains are clusters with the settings, instance types, instance counts, and storage resources that you specify. コンソール、AWS CLI、または AWS SDK を使用して Amazon ES ドメインを作成できます。

Amazon ES ドメイン (コンソール) を作成するには

  1. https://aws.amazon.com にアクセスし、[Sign In to the Console] を選択します。

  2. [分析] で、[Elasticsearch Service] を選択します。

  3. [Define domain (ドメインの定義)] ページの [Elasticsearch domain name (Elasticsearch ドメイン名)] で、ドメインの名前を入力します。この入門チュートリアルでは、チュートリアルの後半にある例で、ドメイン名 movies を使用します。

  4. [Version (バージョン)] で、ドメインの Elasticsearch バージョンを選択します。サポートされている最新バージョンの選択をお勧めします。詳細については、「サポートされる Elasticsearch バージョン」を参照してください。

  5. [Next (次へ)] を選択します。

  6. [Instance count (インスタンス数)] で、必要なインスタンスの数を選択します。このチュートリアルでは、デフォルト値である 1 を使用します。

  7. [Instance type (インスタンスタイプ)] で、Amazon ES ドメインのインスタンスタイプを選択します。このチュートリアルには、テスト用に最適な小規模で安価なインスタンスタイプである t2.small.elasticsearch をおすすめします。

  8. ここでは、[Enable dedicated master (専用マスターの有効化)] および [Enable zone awareness (ゾーン対応の有効化)] のチェックボックスを無視してかまいません。この両方の詳細については、「専用マスターノードについて」と「ゾーン対応の有効化」を参照してください。

  9. [Storage type (ストレージタイプ)] で [EBS] を選択します。

    1. [EBS volume type (EBS ボリュームタイプ)] で、汎用 (SSD) を選択します。詳細については、「Amazon EBS ボリュームの種類」を参照してください。

    2. [EBS ボリュームサイズ] に、データノードの外部ストレージのサイズ (GiB) を入力します。このチュートリアルでは、デフォルト値である 10 を使用します。

  10. ここでは、[Enable encryption at rest (保存時の暗号化の有効化)] を無視してかまいません。この機能の詳細については、「Amazon Elasticsearch Service の保管時のデータの暗号化」を参照してください。

  11. [Automated snapshot start hour (自動スナップショットの開始時間)] では、デフォルト値を使用します。詳細については、「自動スナップショットの設定」を参照してください。

  12. [Next (次へ)] を選択します。

  13. このチュートリアルでは、分かりやすいように IP ベースのアクセスポリシーを使用することをお勧めします。[Set up access (アクセスの設定)] ページの [Network configuration (ネットワーク設定)] セクションで、[Public access (パブリックアクセス)] を選択します。

  14. ここでは、[Kibana authentication (Kibana 認証)] は無視してかまいません。この機能の詳細については、「Kibana の Amazon Cognito 認証」を参照してください。

  15. [Set the domain access policy to (ドメインアクセスポリシーの設定)] で [Allow access to the domain from specific IP(s) (特定の IP からのドメインへのアクセスを許可)] を選択して、パブリック IP アドレスを入力します。このアドレスは、ほとんどの検索エンジンで「私の IP アドレスは何ですか」を検索することで確認できます。次に、[OK] を選択します。

    パブリックアクセス、VPC アクセスと一般的なアクセスポリシーの詳細については、「Amazon Elasticsearch Service アクセスコントロール」および「Amazon Elasticsearch Service ドメインの VPC サポート」を参照してください。

  16. [Next (次へ)] を選択します。

  17. [Review (レビュー)] ページで、ドメイン設定を確認し、[Confirm (確認)] を選択します。

    注記

    新しいドメインの初期化には約 10 分かかります。ドメインが初期化されると、データをアップロードしてドメインに変更を加えることができます。

Amazon ES ドメイン (AWS CLI) を作成するには

  • Amazon ES ドメインを作成するには、次のコマンドを実行します。

    このコマンドは movies という名前のドメインを Elasticsearch バージョン 6.0 を使用して作成します。t2.small.elasticsearch インスタンスタイプの 1 つのインスタンスが指定されます。このインスタンスタイプでは EBS ストレージが必要であるため、10 GiB のボリュームを指定しています。最後に、このコマンドは単一の IP アドレスにドメインへのアクセスを制限する IP ベースのアクセスポリシーを適用します。

    コマンドで your_ip_address をお使いのパブリック IP アドレスに置き換えます。この IP アドレスは、Google で、「私の IP アドレスは何ですか」を検索して確認できます。

    aws es create-elasticsearch-domain --domain-name movies --elasticsearch-version 6.0 --elasticsearch-cluster-config InstanceType=t2.small.elasticsearch,InstanceCount=1 --ebs-options EBSEnabled=true,VolumeType=standard,VolumeSize=10 --access-policies '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":{"AWS":"*"},"Action":["es:*"],"Condition":{"IpAddress":{"aws:SourceIp":["your_ip_address"]}}}]}'

注記

新しいドメインの初期化には約 10 分かかります。ドメインが初期化されると、データをアップロードしてドメインに変更を加えることができます。

新しいドメインのステータスのクエリを実行するには、次のコマンドを使用します。

aws es describe-elasticsearch-domain --domain movies

Amazon ES ドメイン (AWS SDK) を作成するには

AWS SDK では (Android および iOS SDK を除く)、CreateElasticsearchDomain アクションも含めて、Amazon ES 設定 API リファレンスで定義されたすべてのアクションがサポートされています。AWS SDK のインストールと使用の詳細については、「AWS ソフトウェア開発キット」を参照してください。