Bootstrap

搭建Elastic search群集

一、实验环境

二、实验步骤

  • Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎
  • Elasticsearch目录文件:

/etc/elasticsearch/elasticsearch.yml#配置文件

/etc/elasticsearch/jvm.options#java虚拟机

/etc/init.d/elasticsearch#服务启动脚本

/etc/sysconfig/elasticsearch#elasticsearch服务变量

/usr/lib/sysctl.d/elasticsearch.conf#设置elasticsearch用户使用的内存大小

/usr/lib/systemd/system/elasticsearch.service  #添加系统服务文件

/var/log/elasticsearch/elasticsearch.log #日志文件路径

  • Elasticsearch群集状态颜色:

灰色:未连接

绿色:数据完整态

黄色:副本不完整

红色:数据分片不完整

紫色:数据分片复制过程

  • 群集主机角色:

主节点master:负责管理调度

工作节点:   负责处理数据

默认情况,所有节点都是工作节点,即主节点也处理数据

1、安装Elasticsearch(Elasticsearch1、Elasticsearch2、Elasticsearch3)

需要jdk Java环境

java -version

将elasticsearch-6.6.0包拖入

rpm -ivh elasticsearch-6.6.0.rpm

2、创建数据目录并修改权限(Elasticsearch1、Elasticsearch2、Elasticsearch3)

mkdir -p /data/elasticsearch

chown -R elasticsearch.elasticsearch /data/elasticsearch/

3、修改配置文件

Elasticsearch1:

vim /etc/elasticsearch/elasticsearch.yml

修改添加:

     

Elasticsearch2:

vim /etc/elasticsearch/elasticsearch.yml

修改添加:

     

Elasticsearch3:

vim /etc/elasticsearch/elasticsearch.yml

修改添加:

 

4、启动Elasticsearch(Elasticsearch1、Elasticsearch2、Elasticsearch3)

启动需要等待才能看到端口

systemctl daemon-reload

systemctl start elasticsearch

netstat -anpt | grep 9200

5、上传扩展工具(win10)

将es-head.crx文件夹拖入win10桌面

打开微软浏览器

选择扩展

 

6、创建索引(win10)

 

刷新浏览器页面

发现进行了分片处理

7、删除索引(win10)

8、将第二台主机添加到群集(Elasticsearch2)

vim /etc/elasticsearch/elasticsearch.yml

修改添加:

systemctl restart elasticsearch

netstat -anpt | grep 9200

9、将第三台主机添加到群集(Elasticsearch3)

vim /etc/elasticsearch/elasticsearch.yml

修改添加:

systemctl restart elasticsearch

netstat -anpt | grep 9200

10、创建索引(win10)

 

刷新浏览器页面

粗框为主分片,细框为副分片

11、群集管理监控命令

1)查看索引信息(Elasticsearch1)

curl -XGET '192.168.8.5:9200/_cat/indices?pretty'

2)查看群集健康状态(Elasticsearch1)

curl -XGET '192.168.8.5:9200/_cluster/health?pretty'

3)统计群集节点(Elasticsearch1)

curl -XGET '192.168.8.5:9200/_cat/nodes?human&pretty'

4)查看群集所有节点详细信息(Elasticsearch1)

curl -XGET '192.168.8.5:9200/_nodes/_all/info/jvm.process?human&pretty'

5)使用命令创建索引vipinfo、类型user、序号1、数据部分……

Elasticsearch1:

curl -XPUT '192.168.8.5:9200/vipinfo/users/1?pretty&pretty' -H 'Content-Type: application/json' -d '{"name": "liudehua","age": "60","job": "mingxing"}'

curl -XPUT '192.168.8.5:9200/vipinfo/users/2?pretty&pretty' -H 'Content-Type: application/json' -d '{"name": "guofucheng","age": "61","job": "mingxing"}'

win10:

刷新浏览器页面

查看写入的内容

6)使用命令创建索引index1,修改分片为3、副本为2

Elasticsearch1:

curl -XPUT 192.168.8.5:9200/index1  -H 'Content-Type: application/json' -d '{

"settings" : {

"index" : {

"number_of_shards" : 3,

"number_of_replicas" : 2

}

}

}'

win10:

刷新浏览器页面

7)使用命令将索引index1的副本数从2改为1

注:已经存在的索引,不能修改分片数,只能修改副本数

Elasticsearch1:

curl -XPUT '192.168.8.5:9200/index1/_settings?pretty'  -H 'Content-Type: application/json' -d '{

"settings": {

"number_of_replicas": "1"

}

}'

win10:

刷新浏览器页面

;