OpenSearchを使用したOracle Cloud Infrastructure Searchを使用したデータの検索およびビジュアル化

イントロダクション

OpenSearchを使用したOracle Cloud Infrastructure (OCI)検索は、Oracle管理サービスとして提供されるインサイト・エンジンです。OpenSearchおよびOpenSearchダッシュボード用のOCIの機能を使用すると、大量のデータをすばやく格納、検索および分析し、結果をほぼリアルタイムで確認できます。Oracleは、サービスのパッチ適用、更新、アップグレード、バックアップおよびサイズ変更を含むアクティビティをダウンタイムなしで自動化します。

目的

前提条件

  1. OCIコンソールで必要なサービス・ポリシーを作成します。any-userを目的のグループに変更し、必要に応じてコンパートメントへのパスを指定します。

    機能するポリシー:

    Allow group SearchOpenSearchAdmins to manage vnics in compartment <NETWORK_RESOURCES_COMPARTMENT>
    Allow group SearchOpenSearchAdmins to manage vcns in compartment <NETWORK_RESOURCES_COMPARTMENT>
    Allow group SearchOpenSearchAdmins to manage subnets in compartment <NETWORK_RESOURCES_COMPARTMENT>
    Allow group SearchOpenSearchAdmins to use network-security-groups in compartment <NETWORK_RESOURCES_COMPARTMENT>
    Allow group SearchOpenSearchAdmins to manage opensearch-family in compartment <CLUSTER_RESOURCES_COMPARTMENT>
    
  2. パブリック・サブネットとプライベート・サブネットを持つVCNを作成します。

    • 簡易プロセス:

      1. OCIコンソールに移動し、ナビゲーション・メニューを開きます。

      2. 「Networking」および「Virtual Cloud Networks」をクリックします。

      3. 「VCNウィザードの起動」および「インターネット接続性を持つVCNの作成」をクリックします。

    • カスタム処理:

      1. OCIコンソールに移動し、ナビゲーション・メニューを開きます。

      2. 「Networking」および「Virtual Cloud Networks」をクリックします。

      3. 「VCNの作成」をクリックし、必要な詳細を入力します。

  3. VCNのパブリック・サブネットに仮想マシン(VM)インスタンスを作成します。

    1. OCIコンソールに移動し、ナビゲーション・メニューを開きます。

    2. 「コンピュート」および「インスタンス」をクリックします。

    3. 「インスタンスの作成」をクリックします。

    4. 「名前」を入力し、コンパートメントを選択します。

    5. 「イメージとシェイプ」セクションで、デフォルト値(Oracle Linux 8、VM.Standard.E4)を使用します。フレックス)。

    6. 「ネットワーキング」セクションで、パブリック・サブネットを選択し、パブリックIPを割り当てます。

    7. 「SSH鍵の追加」セクションで、既存のSSH鍵を使用するか、新しいSSH鍵を生成するかを決定します。新しいSSHキーを生成する場合は、忘れずにキーをダウンロードしてください。

ノート:このチュートリアルでは、MacおよびOracle Linuxインスタンスが使用されました。Windowsのコマンド行命令は異なる場合があります。

タスク1: OCI検索サービス・クラスタの作成

  1. OCIコンソールに移動し、「データベース」「OCI検索サービス」「クラスタ」に移動して、「クラスタの作成」をクリックします。クラスタを作成するクラスタ名とコンパートメントを入力し、「次へ」をクリックします。

    イメージ

  2. クラスタ・サイズを選択し、「次」をクリックします。

    イメージ

  3. 「前提条件」セクションで作成したVCN、プライベート・サブネットを選択し、「次」をクリックします。

    イメージ

    クラスタの作成後、OCI検索サービス・クラスタの詳細ページで、APIエンドポイントと、代替で使用できるIPアドレスをメモします。

    イメージ

タスク2: VCNセキュリティ・リストでのセキュリティ・ルールの作成

VCNで、次のセキュリティ・ルールを使用してセキュリティ・リストを作成します。または、VCNのデフォルトのセキュリティ・リストに追加できます。

  1. 仮想クラウド・ネットワークの詳細ページで、「セキュリティ・リスト」「セキュリティ・リスト」および「イングレス・ルールの追加」をクリックします。

    ノート:ポート9200 (OpenSearch)のルールと5601 (OpenSearch Dashboards)のルールを追加します。

    イメージ

    イメージ

    イメージ

タスク3: OCI検索サービスへの接続のテスト- OpenSearchエンドポイント

次のいずれかのオプションを使用できます。

オプション1: 作成されたVMインスタンス内から

  1. SSHを使用してインスタンスに接続します。

    ssh -i ~/.ssh/id_rsa_opensearch.key opc@<your_VM_instance_public_IP>
    
  2. 次のいずれかのコマンドを実行します

    curl https://mycluster.opensearch.us.example.com:9200
    # OpenSearch API endpoint example
    

    または

    curl https://<your_opensearch_private_IP>:9200 --insecure
    # OpenSearch private IP example
    

オプション2: ポート転送を通じてローカル・マシンから

  1. 端末で次のポート転送SSHコマンドを実行します。接続がアクティブなままになるように、端末を閉じないでください。

    ssh -C -v -t -L 127.0.0.1:5601:<your_opensearch_dashboards_private_IP>:5601 -L 127.0.0.1:9200:<your_opensearch_private_IP>:9200 opc@<your_VM_instance_public_IP> -i <path_to_your_private_key>
    
  2. 新しいターミナル・ウィンドウを開き、次のコマンドを実行します。

    curl https://localhost:9200 --insecure
    

ステップが正しく実行されると、使用されるオプションに関係なく、レスポンスが次のように表示されます。

{
"name" : "opensearch-master-0",
"cluster_name" : "opensearch",
"cluster_uuid" : "M6gclrE3QLGEBlkdme8JkQ",
"version" : {
   "distribution" : "opensearch",
   "number" : "1.2.4-SNAPSHOT",
   "build_type" : "tar",
   "build_hash" : "e505b10357c03ae8d26d675172402f2f2144ef0f",
   "build_date" : "2022-02-08T16:44:39.596468Z",
   "build_snapshot" : true,
   "lucene_version" : "8.10.1",
   "minimum_wire_compatibility_version" : "6.8.0",
   "minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "The OpenSearch Project: https://opensearch.org/"
}

タスク4: データの収集

VMインスタンス内から次のコマンドを実行します。

  1. サンプル・データ・セットをダウンロードします。

    curl -O https://raw.githubusercontent.com/oracle-livelabs/oci/main/oci-opensearch/files/OCI_services.json
    
  2. マッピングを作成します(オプション)。このコマンドやバリエーションを実行しない場合、デフォルトのマッピングが自動的に作成されます。

    curl -XPUT "https://mycluster.opensearch.us.example.com:9200/oci" -H 'Content-Type: application/json' -d'
    {
      "mappings": {
        "properties": {
        "id": {"type": "integer"},
        "category": {"type": "keyword"},
       "text": {"type": "text"},
       "title": {"type": "text"},
       "url": {"type": "text"}
        }
      }
    }
    '
    
  3. データ・セットをプッシュします。

    curl -H 'Content-Type: application/x-ndjson' -XPOST "https://<your_opensearch_private_IP>:9200/oci/_bulk?pretty" --data-binary @OCI_services.json
    
  4. 索引を確認します。

    curl "https://mycluster.opensearch.us.example.com:9200/_cat/indices"
    # OpenSearch API endpoint example
    
    curl -X GET "https://<your_opensearch_private_IP>:9200/_cat/indices" --insecure
    # OpenSearch private IP example
    

タスク5: OCI検索サービスの問合せ – 検索問合せの例

次のいずれかのオプションを使用できます。

オプション1: VMインスタンス・シェルから

curl -X GET "https://mycluster.opensearch.us.example.com:9200/oci/_search?q=title:Kubernetes&pretty"
# OpenSearch API endpoint example
curl -X GET "https://<your_opensearch_private_IP>:9200/oci/_search?q=title:Kubernetes&pretty"
# OpenSearch private IP example

オプション2: ポート転送後のローカル端末から

curl -X GET "https://localhost:9200/oci/_search?q=title:Kubernetes&pretty" --insecure

オプション3: ローカル・ブラウザから、ポート転送後

https://localhost:9200/oci/_search?q=title:Kubernetes&pretty

問合せ構文の詳細は、OpenSearchまたはElasticsearchのチュートリアルを参照してください。

タスク6: OpenSearchダッシュボードへの接続

  1. ポート転送を通じてローカル・マシンから。

    ノート:前のステップですでに実行しており、接続がまだ開いている場合は、このステップをスキップします。

    ssh -C -v -t -L 127.0.0.1:5601:<your_opensearch_dashboards_private_IP>:5601 -L 127.0.0.1:9200:<your_opensearch_private_IP>:9200 opc@<your_instance_public_ip> -i <path_to_your_private_key>
    
  2. ブラウザでhttps://localhost:5601にアクセスします。

    ノート:現在、ブラウザに応じて、接続はプライベートではありませんのような警告メッセージが表示されます。続行できるオプションを選択します。

    イメージ

タスク7: OpenSearchダッシュボードでのデータの検索およびビジュアル化

  1. ポート転送接続が設定された状態で、ブラウザのhttps://localhost:5601にアクセスします。

  2. OpenSearchダッシュボードのナビゲーション・メニューを開きます。

  3. 「管理」「スタック管理」にナビゲートし、「索引パターン」をクリックします。ociという名前の索引パターンを作成します。

    イメージ

  4. OpenSearchダッシュボード・メニューに移動し、「検出」をクリックして、OpenSearchダッシュボードUIを使用してデータを検索します。

    イメージ

  5. OpenSearch「ダッシュボード」メニューに移動し、「ダッシュボード」をクリックして、次のステップに従って円グラフのサンプルを作成します。

    1. 「新規作成」「新規ビジュアライゼーション」および「円」をクリックします。

      イメージ

    2. 「ソース」としてociを選択します。

    3. 「バケット」で、「追加」をクリックし、「分割スライス」を展開します。次のイメージに表示されている情報を入力し、「更新」をクリックします。

      イメージ

承認

その他の学習リソース

docs.oracle.com/learnの他のラボを確認するか、Oracle Learning YouTubeチャネルで無料のラーニング・コンテンツにアクセスしてください。また、education.oracle.com/learning-explorerにアクセスしてOracle Learning Explorerになります。

製品ドキュメントは、Oracle Help Centerを参照してください。