ElasticSearch (一)linux 安裝及常見的錯誤

1.創建elasticsearch用戶組

[root@VM_0_3_centos ~]# groupadd elasticsearch

2.創建用戶 es 並設置密碼爲es

[root@VM_0_3_centos ~]# useradd es
[root@VM_0_3_centos ~]# passwd es

3.用戶es 添加到 elasticsearch 用戶組

[root@VM_0_3_centos ~]# usermod -G elasticsearch es

4. 設置sudo權限

[root@VM_0_3_centos ~]# visudo
在root ALL=(ALL) ALL 下添加
es ALL=(ALL) ALL

5.下載安裝包https://www.elastic.co/cn/downloads/elasticsearch並上傳/usr/dsa/目錄下,並解壓 tar.gz 

[root@VM_0_3_centos dsa]# tar -xvf elasticsearch-6.3.2.tar.gz 

6.解壓成功後,切換用戶

[root@VM_0_3_centos dsa]# su es

7.更改elasticsearch-6.3.2 文件夾以及內部文件的所屬用戶爲es, 用戶組組爲elasticsearch

[es@VM_0_3_centos dsa]$ sudo chown -R es:elasticsearch elasticsearch-6.3.2

8.修改ElasticSearch.yml 配置

[es@VM_0_3_centos dsa]$ vim elasticsearch-6.3.2/config/elasticsearch.yml

修改內容(沒有就添加)

cluster.name: my-es
node.name: node-1
network.host: 0.0.0.0
http.port: 9200
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

9.切換root用戶修改/etc/sysctl.conf 

[root@VM_0_3_centos dsa]# vim /etc/sysctl.conf

在最後一行添加 vm.max_map_count=262144

保存退出後,使用sysctl -p 刷新生效

[root@VM_0_3_centos dsa]# sysctl -p
kernel.printk = 5
vm.max_map_count = 262144

10.修改文件/etc/security/limits.conf

[root@VM_0_3_centos dsa]# vim /etc/security/limits.conf

添加如下內容:

* hard nofile 65536
* soft nofile 65536
* soft nproc 2048
* hard nproc 4096

11.切換cd /etc/security/limits.d/ 找到 -nproc.conf 文件修改配置文件

[root@VM_0_3_centos dsa]# vi /etc/security/limits.d/20-nproc.conf 

修改如下內容:

* soft nproc 1024
#修改爲
* soft nproc 4096

12.啓動elasticsearch 

[es@VM_0_3_centos dsa]$ cd elasticsearch-6.3.2/bin/
[es@VM_0_3_centos bin]$ ./elasticsearch

13.在瀏覽器輸入localhost:9200 驗證是否啓動成功

在瀏覽器上輸出如下信息代表成功哦

{
  "name" : "node-1",
  "cluster_name" : "my-es",
  "cluster_uuid" : "NBwUIqhUS8uThieUYnspAg",
  "version" : {
    "number" : "6.3.2",
    "build_flavor" : "oss",
    "build_type" : "tar",
    "build_hash" : "053779d",
    "build_date" : "2018-07-20T05:20:23.451332Z",
    "build_snapshot" : false,
    "lucene_version" : "7.3.1",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}

14.es啓動常遇見的錯誤信息及解決方法

異常信息1:expecting token of type [START_OBJECT] but found [VALUE_STRING]]; 

錯誤原因:elasticsearch.yml 文件內部錯誤 
解決辦法:仔細檢查yml文件中的配置項書寫格式: (空格)name:(空格)value

---------------------------------------------------------------------------------
異常信息2:java.lang.UnsupportedOperationException: seccomp unavailable: CONFIG_SECCOMP not compiled into kernel, CONFIG_SECCOMP and CONFIG_SECCOMP_FILTER are needed
 錯誤原因:Centos6不支持SecComp,而ES默認bootstrap.system_call_filter爲true進行檢測,所以導致檢測失敗,失敗後直接導致ES不能啓動
 
解決辦法:修改elasticsearch.yml 添加一下內容 :

bootstrap.memory_lock: false
bootstrap.system_call_filter: false

---------------------------------------------------------------------------------
---------------------------------------------------------------------------------
異常信息3:BindTransportException[Failed to bind to [9300-9400]
解決辦法 打開配置文件elasticsearch.yml 將 network.host: 192.168.0.1 修改爲本機IP 0.0.0.0


--------------------------------------------------------------------------------------------
異常信息4:max number of threads [1024] for user [lish] likely too low, increase to at least [2048]

解決辦法:切換到root用戶,進入limits.d目錄下找到  -nproc.conf文件並 修改配置文件。

vi /etc/security/limits.d/20-nproc.conf 

修改如下內容:

* soft nproc 1024

#修改爲

* soft nproc 2048
異常信息5 在啓動的過程中 進程被殺
[es@VM_0_3_centos bin]$ ./elasticsearch
[2019-07-10T09:31:28,776][INFO ][o.e.n.Node               ] [node-1] initializing ...
[2019-07-10T09:31:28,959][INFO ][o.e.e.NodeEnvironment    ] [node-1] using [1] data paths, mounts [[/ (rootfs)]], net usable_space [38.9gb], net total_space [49gb], types [rootfs]
[2019-07-10T09:31:28,959][INFO ][o.e.e.NodeEnvironment    ] [node-1] heap size [1015.6mb], compressed ordinary object pointers [true]
[2019-07-10T09:31:28,963][INFO ][o.e.n.Node               ] [node-1] node name [node-1], node ID [_i1T3Ze9Q8mePcZkAUO6Bg]
[2019-07-10T09:31:28,963][INFO ][o.e.n.Node               ] [node-1] version[6.3.2], pid[592], build[oss/tar/053779d/2018-07-20T05:20:23.451332Z], OS[Linux/3.10.0-514.26.2.el7.x86_64/amd64], JVM[Oracle Corporation/Java HotSpot(TM) 64-Bit Server VM/1.8.0_131/25.131-b11]
[2019-07-10T09:31:28,963][INFO ][o.e.n.Node               ] [node-1] JVM arguments [-Xms1g, -Xmx1g, -XX:+UseConcMarkSweepGC, -XX:CMSInitiatingOccupancyFraction=75, -XX:+UseCMSInitiatingOccupancyOnly, -XX:+AlwaysPreTouch, -Xss1m, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djna.nosys=true, -XX:-OmitStackTraceInFastThrow, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Djava.io.tmpdir=/tmp/elasticsearch.9XZNDohq, -XX:+HeapDumpOnOutOfMemoryError, -XX:HeapDumpPath=data, -XX:ErrorFile=logs/hs_err_pid%p.log, -XX:+PrintGCDetails, -XX:+PrintGCDateStamps, -XX:+PrintTenuringDistribution, -XX:+PrintGCApplicationStoppedTime, -Xloggc:logs/gc.log, -XX:+UseGCLogFileRotation, -XX:NumberOfGCLogFiles=32, -XX:GCLogFileSize=64m, -Des.path.home=/usr/dsa/elasticsearch-6.3.2, -Des.path.conf=/usr/dsa/elasticsearch-6.3.2/config, -Des.distribution.flavor=oss, -Des.distribution.type=tar]

Killed
-------------------------------------
解決辦法  修改ES中config目錄下的jvm.options文件
vim jvm.options 將
-Xms1g
-Xmx1g
改爲
-Xms512m
-Xmx512m
就啓動成功了

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章