技术流ken

运维拯救世界

ELK系列:Elasticsearch分布式搜索引擎–集群技术详解(二)–技术流ken

 

 

Elasticsearch集群部署

192.168.64.4

192.168.64.5

两台节点需要执行如下的操作

第一步:安装elaseticsearch6.6版本

[root@ken2 ~]# yum install java -y
[root@ken2 ~]# yum install elasticsearch-6.6.0.rpm  -y

 

第二步:修改配置文件

192.168.64.5节点配置文件如下

[root@ken2 ~]# grep  "^[a-z]" /etc/elasticsearch/elasticsearch.yml
cluster.name: ken   #集群名称。集群内各节点必须相同
node.name: node-2
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 192.168.64.5
http.port: 9200
discovery.zen.ping.unicast.hosts: ["192.168.64.4", "192.168.64.5"]  #节点IP
discovery.zen.minimum_master_nodes: 2   #主阶段选举

 

192.168.64.4节点配置文件如下

[root@ken1 ~]# grep  "^[a-z]" /etc/elasticsearch/elasticsearch.yml
cluster.name: ken
node.name: node-1
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
bootstrap.memory_lock: true  #锁定内存大小,练习当中不开启也可以
network.host: 192.168.64.4
http.port: 9200
discovery.zen.ping.unicast.hosts: ["192.168.64.4", "192.168.64.5"]
discovery.zen.minimum_master_nodes: 2  #计算方法 集群节点总数/2 + 1

 

第三步:重启服务

[root@ken2 ~]# systemctl daemon-reload
[root@ken2 ~]# systemctl restart elasticsearch

 

重启服务之后会生成一个以集群名称命名的日志文件,可以查看到集群状态信息

[root@ken2 ~]# tail -f /var/log/elasticsearch/ken.log 

 

第四步:浏览器访问

出现以下信息表示集群创建成功

 

增加集群节点

新增节点192.168.64.7

第一步:下载安装

[root@ken ~]# yum install java -y
[root@ken ~]# yum install elasticsearch-6.6.0.rpm -y

 

第二步:准备配置文件

可以从其他节点发送一份已经修改好的文件给新的节点

[root@ken2 ~]# scp /etc/elasticsearch/elasticsearch.yml 192.168.64.7:/etc/elasticsearch/elasticsearch.yml

 

第三步:修改配置文件

[root@ken ~]# grep "^[a-z]" /etc/elasticsearch/elasticsearch.yml 
cluster.name: ken
node.name: node-3
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 192.168.64.7
http.port: 9200
discovery.zen.ping.unicast.hosts: ["192.168.64.4", "192.168.64.7"] 
discovery.zen.minimum_master_nodes: 2

 

discovery.zen.ping.unicast.hosts这里只需要写上新的节点IP地址以及集群内部分某一台节点的IP即可

 

第四步:重启服务

[root@ken ~]# systemctl restart elasticsearch

 

第五步:浏览器查看

 

集群的相关API

 

1.查看集群健康状态

[root@ken1 ~]# curl -XGET 'http://192.168.64.5:9200/_cluster/health?pretty'

 

2.查看系统检索信息

[root@ken1 ~]#  curl -XGET 'http://192.168.64.5:9200/_cluster/stats?human&pretty'

 

3.查询节点的信息

可以查询到集群有那些节点

[root@ken1 ~]# curl -XGET 'http://192.168.64.5:9200/_cat/nodes?human&pretty'
192.168.64.7 15 99 0 0.01 0.02 0.05 mdi - node-3
192.168.64.5 13 93 0 0.00 0.01 0.05 mdi - node-2
192.168.64.4 19 92 0 0.03 0.05 0.05 mdi * node-1

 

4.设置索引分片

可以在创建索引的时候指定分片数量及副本数

创建后的索引无法改变分片数量但是可以改变副本数量

curl -XPUT '192.168.64.5:9200/blogs?pretty' -H 'Content-Type: application/json' -d'
{
"settings" : { 
   "number_of_shards" : 3, 
   "number_of_replicas" : 1
 } 
}'

 

 

5.调整副本数

分片数一旦创建就不能再更改了,但是我们可以调整副本数
curl -XPUT '192.168.47.75:9200/index2/_settings?pretty' -H 'Content-Type: application/json' -d'
{
"settings" : {
"number_of_replicas" : 2
}
}

 

 

elasticsearch优化

 

1.JVM最大最小内存调整

2.关闭SWAP分区

3.vm.max_map_count调整

4.ulimit调整

5.磁盘性能

 

发表评论

电子邮件地址不会被公开。