Elasticsearch 安裝與集群配置


一、軟件版本

操作系統:CentOS-6.5-x86_64

ES版本:5.0

主機:192.168.63.246

主機: 192.168.63.242

 

二、部署環境規划:

 

1、 需求:jdk版本:open-jdk.1.8

[root@www config]# java -version

openjdk version "1.8.0_101"

OpenJDK Runtime Environment (build 1.8.0_101-b13)

OpenJDK 64-Bit Server VM (build 25.101-b13, mixed mode)

 

2、 下載解壓安裝即可:

[root@www src]# cd /test/

[root@www test]# tar zxvf elasticsearch-5.0.0.tar.gz

 

3、 具體配置:

[root@www elasticsearch-5.0.0]# cd config/

[root@www config]# vim elasticsearch.yml

 

配置解析:

集群:

cluster.name: es-log

節點:

node.name: log-1  ##節點保持唯一性。

數據和日志存放目錄:

#path.data: /path/to/data

#path.logs: /path/to/logs     ##默認當前目錄下,可以修改

是否使用swap:

bootstrap.memory_lock:true

廣播配置:

discovery.zen.ping.unicast.hosts: ["192.168.63.242", "192.168.63.247"]

discovery.zen.minimum_master_nodes: 1

 

其他相關系統設置:

 

Vim /etc/sysctl.conf

vm.max_map_count= 262144

sysctl –p

 

系統打開文件數配置:

[root@controller config]# vim /etc/security/limits.conf

*  hard nofile 65536

* soft nofile 65536

 

修改用戶打開的線程數,因為es 的段要經常打開文件控制索引:

vim /etc/security/limits.d/90-nproc.conf

*          soft    nproc     2048

 

切換到普通用戶啟動:

Su – dashuju

[dashuju@www bin]$ ./elasticsearch

 

#####要是提示,報一些沒有啟動的目錄,直接創建即可,但是想寫入日志和數據必須是普通用戶有寫入權限#####

 

啟動之后:測試有如下顯示表示已經安裝成功。

 

[root@www bin]# curl  -XGET '192.168.63.242:9200'

{

  "name" : "log-1",

  "cluster_name" : "es-log",

  "cluster_uuid" : "_na_",

  "version" : {

    "number" : "5.0.0",

    "build_hash" : "253032b",

    "build_date" : "2016-10-26T04:37:51.531Z",

    "build_snapshot" : false,

    "lucene_version" : "6.2.0"

  },

  "tagline" : "You Know, for Search"

}

 

4、 集群啟動設置:

 

加入說只有一個節點,那么es就當做自己是一個集群。

一個節點(node)就是一個Elasticsearch實例,而一個集群(cluster)由一個或多個節點組成,它們具有相同的cluster.name,它們協同工作,分享數據和負載。

當加入新的節點或者刪除一個節點時,集群就會感知到並平衡數據。

 

 

1、 我們已經啟動了192.168.63.242這台機器,我們可以現在創建一條索引,然后查看一下單集群的狀態:

[root@www elasticsearch-5.0.0]# curl -XPOST '192.168.63.242:9200/test/name/1' -d '

{

  "name": "xiaoluo"

}'

####創建一條test的索引,type為name,id=1

 

2、 然后我們查看一下集群當前的狀態:

 

ticsearch-5.0.0]# curl  -XGET '192.168.63.242:9200/_cluster/health?pretty'

{

  "cluster_name" : "es-log",

  "status" : "yellow",

}

 

主要看一下集群的幾個狀態:

 

green    所有主要分片和復制分片都可用

yellow   所有主要分片可用,但不是所有復制分片都可用

red  不是所有的主要分片都可用

 

#####可以看到我們現在顯示為:yellow的,因為我們只有主分片,而沒有復制分片的。

 

現在我們啟動配置好192.168.63.246這個節點:

 

cluster.name: es-log

node.name: log-2

bootstrap.memory_lock: true

network.host: 192.168.63.246

discovery.zen.ping.unicast.hosts: ["192.168.63.246", "192.168.63.242"]

discovery.zen.minimum_master_nodes: 1

 

可以看到相關啟動日志:

 

我們知道已經加入這個集群了,現在我們看一下集群的相關狀態:

 

[root@www elasticsearch-5.0.0]# curl  -XGET '192.168.63.242:9200/_cluster/health?pretty'

{

  "cluster_name" : "es-log",

  "status" : "green",

}

可以看到集群已經變成綠色,說明我們復制分片是已經可以使用了的,我們在192.168.63.246上面查看一下我們剛剛創建的數據看:

 

[root@www elasticsearch-5.0.0]# curl -XGET '192.168.63.246:9200/test/name/1?pretty'

{

  "_index" : "test",

  "_type" : "name",

  "_id" : "1",

  "_version" : 1,

  "found" : true,

  "_source" : {

    "name" : "xiaoluo"

  }

}

############可以看到數據已經被復制到192.168.63.246上面了。

 

后面我們測算成功之后,我們集群的配置要稍作修改:

discovery.zen.minimum_master_nodes: 2   ###開始設置成1是為了一台測試,宣講我們推薦大於1台。

 

ELK stack 學習資源


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM