日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

通過curl命令訪問與管理Elasticsearch

開源Elasticsearch提供了一系列RESTful風格的API,您可以通過curl命令或在Kibana、Postman中使用這些API。本文介紹如何通過curl命令訪問與管理Elasticsearch實例或Serverless應用。

前提條件

訪問Elasticsearch

執行如下命令,訪問阿里云Elasticsearch實例。

說明

如果系統提示curl command not found,請先執行命令sudo yum install curl,在ECS中安裝curl。

curl -u <user>:<password> http://<host>:<port>

變量名

說明

<user>

Elasticsearch實例的訪問用戶名,或Serverless應用的用戶名稱,在應用詳情頁獲取。

重要
  • 訪問Elasticsearch實例時,支持通過elastic賬號訪問,但建議通過非elastic賬號訪問。因為修改elastic賬號的密碼時,密碼生效期間會影響服務訪問。建議在Kibana控制臺中創建一個符合預期的Role角色用戶進行訪問。具體操作,請參見通過Elasticsearch X-Pack角色管理實現用戶權限管控。

  • 如果您創建的阿里云Elasticsearch實例的版本中包含with_X-Pack信息,則訪問該實例時,必須指定用戶名和密碼。

<password>

輸入Elasticsearch實例或Serverless應用的用戶密碼。

如果忘記密碼,可在Elasticsearch實例詳情頁的安全配置中重置,或在Serverless應用詳情頁的基本信息區域重置。更多信息,請參見重置Elasticsearch實例訪問密碼

<host>

Elasticsearch實例的私網地址,或Serverless應用的公網訪問地址??稍?span data-tag="ph" id="4ca613e048kzh" docid="4424517" class="ph">Elasticsearch實例或Serverless應用的基本信息區域獲取。

<port>

Elasticsearch實例或Serverless應用的訪問端口,一般為9200。

Elasticsearch實例訪問命令示例:

curl -u <user>:<password> http://es-cn-x0r3****.elasticsearch.aliyuncs.com:9200

Serverless應用訪問命令示例:

curl -u qing****-***:<password> http://qin****-***.public.cn-hangzhou.es-serverless.aliyuncs.com:9200

Elasticsearch實例返回結果如下:使用ECS訪問ES結果示例

管理Elasticsearch的curl命令

以下介紹通過管理Elasticsearch的curl命令。更多命令,請參見Elasticsearch官方文檔。

查看Elasticsearch信息

  • 查看Elasticsearch實例健康狀況。

    curl -u <user>:<password> -XGET 'http://xxxxx.public.xxxxx.aliyuncs.com:9200/_cat/health?v'
  • 查看Elasticsearch實例或Serverless應用中包含的索引信息。

    curl -u <user>:<password> -XGET 'http://http://xxxxx.public.xxxxx.aliyuncs.com:9200/_cat/indices?v'

創建索引和文檔

  • 創建索引。

    創建一個名稱為product_info的索引。

    curl -u <user>:<password> -XPUT 'http://xxxxx.public.xxxxx.aliyuncs.com:9200/product_info'
  • 為索引設置mapping。

    設置索引product_info的類型為_doc(7.0及以上版本必須為_doc),包含了productNameannual_ratedescribe字段,并定義了各字段所使用的分詞器。

    curl -u <user>:<password> -XPUT 'http://xxxxx.public.xxxxx.aliyuncs.com:9200/product_info/_doc/_mapping?include_type_name=true' -H 'Content-Type: application/json' -d '
    {
     "_doc":{
       "properties": {
            "productName": {"type": "text","analyzer": "ik_smart"},
            "annual_rate":{"type":"keyword"},
            "describe": {"type": "text","analyzer": "ik_smart"}
          }
      }
    }'
  • 創建文檔并插入數據。

    • 創建單個文檔。

      在類型為_docproduct_info索引中,創建了一個名稱為1的文檔,并向文檔中插入一條數據。

      curl -u <user>:<password> -XPOST 'http://xxxxx.public.xxxxx.aliyuncs.com:9200/product_info/_doc/1?pretty' -H 'Content-Type: application/json' -d '
      {
      "productName":"testpro",
      "annual_rate":"3.22%",
      "describe":"testpro"
      }'
    • 創建多個文檔。

      在類型為_docproduct_info索引中,創建了一個名稱為12的文檔,并分別向文檔中插入了一條數據。

      curl -u <user>:<password> -XPOST xxxxx.public.xxxxx.aliyuncs.com:9200/_bulk -H 'Content-Type: application/json' -d'
      { "index" : { "_index": "product_info", "_type" : "_doc", "_id" : "1" } }
      {"productName":"testpro","annual_rate":"3.22%","describe":"testpro"}
      { "index" : { "_index": "product_info", "_type" : "_doc", "_id" : "2" } }
      {"productName":"testpro1","annual_rate":"3.26%","describe":"testpro"}'

搜索文檔

搜索名稱為1的文檔。

curl -u <user>:<password> -XGET 'xxxxx.public.xxxxx.aliyuncs.com:9200/product_info/_doc/1?pretty'

刪除索引

刪除名稱為product_info的索引。

curl -u <user>:<password> -XDELETE 'xxxxx.public.xxxxx.aliyuncs.com:9200/product_info'

Elasticsearch實例返回結果如下:刪除索引

常見問題

Windows系統終端連接Elasticsearch時,如何安裝curl命令,并通過curl命令訪問集群?