ElasticStack之elasticsearch-7.17.23单机及升级集群部署

jokerLu 2021-12-8 98 12/8

ElasticStack之前elasticsearch-7.17.23单机及升级集群部署

一、单机部署

1、下载ES软件包

[root@elk01 ~]# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.23-amd64.deb

2、安装ES软件包

[root@elk01 ~]# dpkg -i elasticsearch-7.17.23-amd64.deb

3.添加别名(可选操作)

[root@elk91 ~]# vim .bashrc
添加如下配置:
alias yy='egrep -v "^.*#|^$"'

4.修改ES的配置文件

[root@elk01 ~]# vim /etc/elasticsearch/elasticsearch.yml
...
# 指定集群的名称
cluster.name: oldboytest
# 指定数据的路径
path.data: /var/lib/elasticsearch
# 指定日志的路径
path.logs: /var/log/elasticsearch
# 指定监听的IP地址
network.host: 0.0.0.0
# 指定监听的端口号
http.port: 9200
# 指定当前节点是一个单点而非集群
discovery.type: single-node
...

[root@elk01~]# yy /etc/elasticsearch/elasticsearch.yml
cluster.name: oldboytest
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
http.port: 9200
discovery.type: single-node

5.启动ES服务

[root@01~]# systemctl enable --now elasticsearch.service
[root@01 ~]#
[root@01 ~]# ss -ntl | egrep "9200|9300"
LISTEN 0 4096 *:9300 *:*
LISTEN 0 4096 *:9200 *:*

6.访问测试

[root@elk01 ~]# curl 10.0.0.91:9200
{
"name" : "elk01",
"cluster_name" : "oldboytest",
"cluster_uuid" : "-seW9CK4Qi-upG0y1Nt7Vw",
"version" : {
"number" : "7.17.23",
"build_flavor" : "default",
"build_type" : "deb",
"build_hash" : "61d76462eecaf09ada684d1b5d319b5ff6865a83",
"build_date" : "2024-07-25T14:37:42.448799567Z",
"build_snapshot" : false,
"lucene_version" : "8.11.3",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}

[root@elk01 ~]# curl 10.0.0.91:9200/_cat/nodes
10.0.0.91 71 94 4 0.20 0.17 0.25 cdfhilmrstw - elk01

二、单节点升级为ES集群模式

1.拷贝安装包到其他节点

[root@elk01 ~]# scp elasticsearch-7.17.23-amd64.deb 10.0.0.92:~
[root@elk01 ~]# scp elasticsearch-7.17.23-amd64.deb 10.0.0.93:~

2.其他节点安装ES服务

[root@elk02 ~]# dpkg -i elasticsearch-7.17.23-amd64.deb
[root@elk03 ~]# dpkg -i elasticsearch-7.17.23-amd64.deb

3.elk01节点停止服务

[root@elk01~]# systemctl stop elasticsearch.service

4.修改配置文件

[root@elk01 ~]# yy /etc/elasticsearch/elasticsearch.yml
cluster.name: oldboyetest
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["10.0.0.91", "10.0.0.92","10.0.0.93"]
[root@elk01 ~]#

5.将配置文件同步到其他节点

[root@elk01~]# scp /etc/elasticsearch/elasticsearch.yml 10.0.0.92:/etc/elasticsearch/
[root@elk01 ~]#
[root@elk01 ~]# scp /etc/elasticsearch/elasticsearch.yml 10.0.0.93:/etc/elasticsearch/

6.启动服务

[root@elk01 ~]# systemctl enable --now elasticsearch
[root@elk02 ~]# systemctl enable --now elasticsearch
[root@elk03 ~]# systemctl enable --now elasticsearch

7.验证服务是否启动成功

[root@elk01 ~]# curl 10.0.0.93:9200/_cat/nodes
10.0.0.93 78 92 5 0.15 0.18 0.24 cdfhilmrstw - elk03
10.0.0.92 80 92 5 0.20 0.18 0.27 cdfhilmrstw * elk02
10.0.0.91 71 94 4 0.20 0.17 0.25 cdfhilmrstw - elk01
[root@elk01 ~]#
[root@elk01 ~]# for i in 91 92 93; do curl -s 10.0.0.$i:9200 | grep cluster_uuid;done
"cluster_uuid" : "Kb3MqlwYTmqFfQ8Kw_u57A",
"cluster_uuid" : "Kb3MqlwYTmqFfQ8Kw_u57A",
"cluster_uuid" : "Kb3MqlwYTmqFfQ8Kw_u57A",
[root@elk01 ~]#

三、ES常见术语

1. 索引: index

一个ES集群可以有多个索引,索引是用户进行数据读写的逻辑单元。

2. 分片: shard

一个索引最少对应一个分片,实际工作中一个索引尽量对应多个分片,以便于数据的分布式存储。
同一个分片只能属于同一个节点。

3.  副本: replica

对分片进行备份的副本分片。副本和分片不能在同一个节点上。

4. 文档: document

实际用户存储的数据。

4.1 源数据

用户实际存储的数据。

4.2 元数据

用于描述源数据的数据。

5. 分配: allocation

指的是将索引的不同分片分配到整个集群的过程。

四、es集群架构图

ElasticStack之elasticsearch-7.17.23单机及升级集群部署

- THE END -

jokerLu

12月08日11:10

最后修改:2021年12月8日
0

共有 0 条评论