elasticSearch 安裝

php_yt發表於2020-11-29

elasticsearch 7.10.0 官方文件
learnku Elasticsearch中文文件 7.3
安裝環境:CentOS7.6 1核2G
預記憶體佔用:1300M 左右

安裝 java1.8

  1. yum install java-1.8.0-openjdk.x86_64 預設安裝目錄: /usr/lib/jvm
  2. 配置環境變數 vim /etc/profile
    # java
    # 第一項是 bin目錄的上級目錄路徑
    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.272.b10-1.el7_9.x86_64/jre
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib
    讓配置立即生效 source /etc/profile
  3. 測試安裝
    java -version
    echo $PATH 檢查列印的路徑是否存在

安裝 elasticsearch

  1. 下載原始碼包並解壓 約300M
    wget -c https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.0-linux-x86_64.tar.gz
    mv elasticsearch-7.10.0 /usr/local/
  2. 配置
    配置檔案在 config 下的 elasticsearch.yml
    # 因只有一個伺服器,所以如下配置
    node.name: node-1
    cluster.initial_master_nodes: ["node-1"]
    # 填寫127.0.0.1或為了方便測試修改為所有ip都可以訪問。埠預設9200,可修改如9508。
    network.host: 0.0.0.0
    http.port: 9508
    # 日誌與資料儲存路徑,預設即是如下。這裡不做修改。
    #path.data: /var/lib/elasticsearch
    #path.logs: /var/log/elasticsearch
  3. 出於安全考慮,es 不允許 root 啟動,建立使用者,並將 elasticsearch-7.10.0 資料夾擁有者賦予該使用者。
    groupadd elsearch
    useradd elsearch -g elsearch
    chown -R elsearch:elsearch elasticsearch-7.10.0
  4. 啟動後會報一些環境錯誤,只需要修改幾項配置即可。
    切換到上面建立的 elsearch 使用者啟動:
    ./bin/elasticsearch
    通常會遇見下面三個錯誤:
    (1)可以建立的檔案描述符數量過低 max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
    (2)使用者可以建立的執行緒數太少 max number of threads [1024] for user [leyou] is too low, increase to at least [4096]
    (3)虛擬記憶體不足 max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
    開啟一個新的 CMD 視窗登陸 root 去操作,解決如下:
    (1) vim /etc/security/limits.conf
    elsearch soft nproc 65535
    elsearch hard nproc 65535
    elsearch soft nofile 4096
    elsearch hard nofile 4096
    (2) cd /etc/security/limits.d && vim 20-nproc.conf
    elsearch  soft    nproc     4096
    #root    soft    nproc     unlimited
    (3) vim /etc/sysctl.conf
    # 末尾新增
    vm.max_map_count = 262144
    sysctl -p 使之生效
  5. 測試
    確保安全組與防火牆開放了對應的埠號。雲伺服器埠和防火牆埠配置
    當控制檯出現 [node-1] started 說明啟動成功,由於剛才配置 elasticsearch.yml 的時候,設定的所有 ip 都可以訪問,瀏覽器輸入 http://yourhost:9508/ 驗證。

安裝中文分詞 ik

Github 地址 github.com/medcl/elasticsearch-ana...
注意要按照 Versions 部分與 es版本 的對應關係下載。

elasticSearch 學習記錄

  1. 方法1
    按照官方文件的方式
    ./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.10.0/elasticsearch-analysis-ik-7.10.0.zip
  2. 方法2
    直接下載到 plugins 目錄下的 ik目錄 並解壓即可,啟動時會自動載入。
    elasticsearch 預設到 plugins/ik 目錄下查詢配置,預設沒有 ik 目錄,用 elsearch 使用者手動建立資料夾。
    cd elasticsearch-7.10.0/plugins && mkdir ik && cd ik
    wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.10.0/elasticsearch-analysis-ik-7.10.0.zip

重新啟動 es ,出現
[INFO ][o.e.p.PluginsService ] [node-1] loaded plugin [analysis-ik] 即載入了外掛。

curl -X POST -H "Content-Type:application/json" http://ip:9508/_analyze?pretty=true -d '{"text":"小可愛"}'
{
  "tokens" : [
    {
      "token" : "小",
      "start_offset" : 0,
      "end_offset" : 1,
      "type" : "<IDEOGRAPHIC>",
      "position" : 0
    },
    {
      "token" : "可",
      "start_offset" : 1,
      "end_offset" : 2,
      "type" : "<IDEOGRAPHIC>",
      "position" : 1
    },
    {
      "token" : "愛",
      "start_offset" : 2,
      "end_offset" : 3,
      "type" : "<IDEOGRAPHIC>",
      "position" : 2
    }
  ]      
}

END

本作品採用《CC 協議》,轉載必須註明作者和本文連結
focus

相關文章