Elastic Search 8.6.2集群安装部署
Posted 悦睹人生
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Elastic Search 8.6.2集群安装部署相关的知识,希望对你有一定的参考价值。
Elastic Search 8.6.2集群安装部署
Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。作为 Elastic Stack 的核心,Elasticsearch 会集中存储您的数据,让您飞快完成搜索,微调相关性,进行强大的分析,并轻松缩放规模。
1.安装版本
JDK: 使用Elastic Search自带JDK【Elastic Search 8以上都自带JDK】
Elastic Search 8.6.2最新版本下载地址:
https://www.elastic.co/cn/downloads/elasticsearch
2.服务器规划
主机名 地址 备注
node1 10.1.43.74
node2 10.1.43.75
node3 10.1.43.76
3.创建用户及用户组
Elastic Search安装时不要使用root用户,需要创建一个普通用户elasticsearch来安装,后面执行命令都是以elasticsearch用户来执行的,需要提高权限的地方使用sudo来执行:
groupadd elasticsearch
useradd elasticsearch -g elasticsearh
sudo chown -R elasticsearch.elasticsearh /usr/local/setup
上传 elasticsearch-8.6.2-linux-x86_64.tar.gz包到 /usr/local/setup
4.安装及部署
修改最大连接数
sudo vi /etc/security/limits.conf
soft nofile 65535
hard nofile 65535
soft nproc 32000
hard nproc 32000
-------说明-------
soft nproc:单个用户最大进程数量,超过会警告
hard nproc:单个用户最大进程数量,超过会报错
soft nofile:可以打开的文件最大数,超过会警告
hard nofile:可以打开的文件最大数,超过会报错
调整虚拟内存
sudo vi /etc/sysctl.conf
vm.max_map_count=262144
sudo sysctl -p
sudo chown -R elasticsearch.elasticsearch /data/elasticsearch
cd /data/elasticsearch
mkdir data logs
tar -vzxf elasticsearch-8.6.2-linux-x86_64.tar.gz
vi /usr/local/setup/elasticsearch-8.6.2/config/elasticsearch.yml
#集群名称,所有节点保持一致,同一网段会自动发现
cluster.name: es-cluster
#节点名称,一般为主机名 node-1、node-2、node-3
node.name: node-1
#节点角色,master表示管理节点,data表示数据节点
node.roles: [master,data]
#数据存放路径
path.data: /data/elasticsearch/data
#日志存放路径
path.logs: /data/elasticsearch/logs
#绑定监听IP
network.host: 0.0.0.0
#设置端口
http.port: 9200
#跨域相关设置
http.cors.enabled: true
http.cors.allow-credentials: true
http.cors.allow-origin: "*"
#节点发现
discovery.seed_hosts: ["10.1.43.74:9300","10.1.43.75:9300","10.1.43.76:9300"]
#集群初始化Master节点,会在第一次选举中进行计算
cluster.initial_master_nodes: ["10.1.43.74:9300"]
#启用节点上Elastic Search的xpack安全功能
xpack.security.enabled: false
5.启动服务
su elasticsearch
sh /usr/local/setup/elasticsearch-8.6.2/bin/elasticsearch
验证服务启动情况
curl http://10.1.43.74:9200
"name" : "node-1",
"cluster_name" : "es-cluster",
"cluster_uuid" : "_na_",
"version" :
"number" : "8.6.2",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "2d58d0f136141f03239816a4e360a8d17b6d8f29",
"build_date" : "2023-02-13T09:35:20.314882762Z",
"build_snapshot" : false,
"lucene_version" : "9.4.2",
"minimum_wire_compatibility_version" : "7.17.0",
"minimum_index_compatibility_version" : "7.0.0"
,
"tagline" : "You Know, for Search"
6.配置集群间安全访问证书密钥
(仅在node-1节点上操作即可)
su elasticsearch
#签发CA证书(一直回车)
sh /usr/local/setup/elasticsearch-8.6.2/bin/elasticsearch-certutil ca
#签发节点证书(一直回车)
sh /usr/local/setup/elasticsearch-8.6.2/bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12
创建好的ca证书和server证书默认名称为elastic-stack-ca.p12和elastic-certificates.p12,存放在$ES_HOME目录。
cd /usr/local/setup/elasticsearch-8.6.2/config
mkdir certs
mv /usr/local/setup/elasticsearch-8.6.2/elastic-*.p12 /usr/local/setup/elasticsearch-8.6.2/config/certs/
将证书发送到另外两个节点。
scp /usr/local/setup/elasticsearch-8.6.2/config/certs/elastic-* node2:/usr/local/setup/elasticsearch-8.6.2/config/certs
scp /usr/local/setup/elasticsearch-8.6.2/config/certs/elastic-* node3:/usr/local/setup/elasticsearch-8.6.2/config/certs/
再次修改配置文件
vi /usr/local/setup/elasticsearch-8.6.2/config/elasticsearch.yml
#启用节点上Elastic Search的xpack安全功能
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: certs/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: certs/elastic-certificates.p12
7.验证集群环境
分别启动三个节点。
sh /usr/local/setup/elasticsearch-8.6.2/bin/elasticsearch -d
在浏览器访问 http://10.1.43.74:9200 这时候提示输入用户名密码。
设置用户密码
sh /usr/local/setup/elasticsearch-8.6.2/bin/elasticsearch-setup-passwords interactive
交互式设置密码,把密码hhxxttxs123BoSs465记下来。
查看节点信息
curl -u elastic:hhxxttxs123BoSs465 http://10.1.43.74:9200/_cat/nodes
10.1.43.74 4 51 1 0.01 0.02 0.05 cdfhilmrstw * node-1
10.1.43.75 7 68 0 0.12 0.18 0.12 cdfhilmrstw - node-2
10.1.43.76 8 67 0 0.13 0.12 0.08 cdfhilmrstw - node-3
查看Elastic Search健康信息
curl -u elastic:hhxxttxs123BoSs465 http://10.1.43.74:9200/_cat/health?v
epoch timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
1679537398 02:09:58 es-cluster green 3 3 22 11 0 0 0 0 - 100.0%
如何使用现有索引创建 Elastic App Search Engine(来自 GraphDB Elastic Search Connector 的数据)
【中文标题】如何使用现有索引创建 Elastic App Search Engine(来自 GraphDB Elastic Search Connector 的数据)【英文标题】:How to create an Elastic App Search Engine using an existing index (data from GraphDB Elastic Search Connector) 【发布时间】:2021-10-08 04:30:53 【问题描述】:标题几乎说明了一切。
此时,我们成功地使用 GraphDB Elastic Search 连接器创建了一个测试连接器。我们想在我们的 React.js 项目中使用 Elastic Search UI。为此,我们需要在 Elastic App Search 中创建一个引擎并从我们的连接器导入文档。
我们目前有一个来自 GraphDB 的索引,目前在 Kibana 索引管理部分可用
就像我说的,我们现在的目标是使用来自 GraphDB 连接器的这个索引创建一个测试引擎,但是没有办法导入这个数据。
【问题讨论】:
【参考方案1】:我不认为添加现有索引是一种选择。请参阅 Elastic 论坛上的此讨论 https://discuss.elastic.co/t/can-you-hook-an-existing-elasticsearch-index-to-elastic-app-search/222508
【讨论】:
以上是关于Elastic Search 8.6.2集群安装部署的主要内容,如果未能解决你的问题,请参考以下文章