centos安裝elasticsearch6.6

在虛擬機(jī)上安裝elasticsearch出現(xiàn)了比較多的問題,由于官網(wǎng)文檔沒有詳細(xì)介紹,導(dǎo)致問題比較多需要自己一個一個解決,這里介紹下安裝的過程和部分問題解決辦法,以及elasticsearch的啟動停止和遠(yuǎn)程訪問。

測試環(huán)境:centos7.6,jdk1.8,elasticsearch6.6.0

官方文檔地址:https://www.elastic.co/guide/en/elasticsearch/reference/6.6/index.html

elasticsearch需要java8環(huán)境的支持,注意先設(shè)置好java。

[root@localhost ~]# java -version
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)

安裝elasticsearch

安裝目錄

cd /usr/local/src

這里安裝的是6.6.0版本的,其他版本安裝包可自行官網(wǎng)查看

curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.6.0.tar.gz

然后提取如下:

tar -xvf elasticsearch-6.6.0.tar.gz

然后它會在當(dāng)前目錄中創(chuàng)建一堆文件和文件夾。然后我們進(jìn)入bin目錄,如下所示:

cd elasticsearch-6.6.0 /bin

啟動命令

./elasticsearch

啟動之前需要先創(chuàng)建用戶和設(shè)置權(quán)限,由于安全問題elasticsearch不讓用root用戶直接運(yùn)行,所以要創(chuàng)建新用戶

創(chuàng)建新用戶

添加用戶組、用戶、設(shè)置密碼(注意密碼不能太簡單也不行、并且八位以上)

groupadd elastic
useradd elastic -g elastic
passwd elastic

修改用戶操作權(quán)限

chown -R elastic:elastic /usr/local/src/elasticsearch-6.6.0/

切換用戶

su - elastic

由于我是虛擬機(jī)運(yùn)行,導(dǎo)致又報了幾個內(nèi)存不足相關(guān)的錯誤
1、[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

解決辦法:

sudo sysctl -w vm.max_map_count=262144

2、[1]: max file descriptors [65535] for elasticsearch process likely too low, increase to at least [65536]

解決辦法:

sudo vi /etc/security/limits.conf

添加如下配置,elastic為用戶名

elastic hard nofile 65536
elastic soft nofile 65536

3、OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00000006ca660000, 4120510464, 0) failed; error='Cannot allocate memory' (errno=12)

解決辦法:
(1) 修改虛擬機(jī)設(shè)置 處理器-》每個處理器的核心數(shù)量為2(反正比1大就行,自行把握,修改配置需要先關(guān)機(jī),然后開機(jī)生效)
(2) 修改elasticsearch配置

vi /usr/local/src/elasticsearch-6.6.0/config/jvm.options

-Xms1g
-Xmx1g

修改為剛才配置的數(shù)量

-Xms2g
-Xmx2g

啟動elasticsearch和后臺運(yùn)行

elasticsearch啟動比較緩慢,可以給多分配點(diǎn)內(nèi)存加快啟動速度。

1、直接前臺啟動,停止ctrl+c就可以了

[elastic@localhost elasticsearch-6.6.0]$ ./bin/elasticsearch

2、后臺啟動,停止可以使用 kill -9 PID

[elastic@localhost elasticsearch-6.6.0]$ ./bin/elasticsearch -d

啟動成功一半會開啟兩個監(jiān)聽端口,我們可以通過9200端口進(jìn)行訪問

  • 9200 http協(xié)議的RESTful接口和外部通訊
  • 9300 tcp通訊端口,集群間和TCPClient都走的它,
[root@localhost ~]# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      7105/mysqld
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      7110/nginx: master
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      6572/sshd
tcp6       0      0 :::6379                 :::*                    LISTEN      7736/docker-proxy
tcp6       0      0 :::9200                 :::*                    LISTEN      10071/java
tcp6       0      0 :::9300                 :::*                    LISTEN      10071/java
tcp6       0      0 :::22                   :::*                    LISTEN      6572/sshd

訪問結(jié)果一般如下:

[root@localhost ~]# curl 127.0.0.1:9200
{
  "name" : "nJliXyp",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "E2Qf0imzSji5ZKzEZYOBbw",
  "version" : {
    "number" : "6.6.1",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "1fd8f69",
    "build_date" : "2019-02-13T17:10:04.160291Z",
    "build_snapshot" : false,
    "lucene_version" : "7.6.0",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}

但是端口顯示的只可以本地訪問,下面介紹如何開啟遠(yuǎn)程訪問。

配置遠(yuǎn)程訪問

由于安全問題elasticsearch之允許本機(jī)訪問,我們需要修改elasticsearch的配置文件

vim /usr/local/src/elasticsearch-6.6.0/config/elasticsearch.yml

去掉network.host的注釋,并修改為

network.host: 0.0.0.0

開發(fā)環(huán)境可以這樣設(shè)置,用于生產(chǎn)環(huán)境可以修改為固定的ip或者本機(jī)訪問。

然后在外部就可以通過 ip:9200 訪問了,顯示內(nèi)容如上一致。


mysql和elasticsearch數(shù)據(jù)同步請參見:《elasticsearch從mysql同步數(shù)據(jù)之logstash的安裝和使用》

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容