自行部署Elasticsearch是一种强大的选择,让您完全掌握搜索和分析数据的能力。通过自行部署,您可以灵活地配置和优化Elasticsearch来满足您的需求。
版本选择
# PS:建议选择 和最新的IK 分词器相同的版本.->省事
# https://www.elastic.co/cn/downloads/
# https://github.com/medcl/elasticsearch-analysis-ik/releases/download/
解压安装
cd /opt
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.11.3-linux-x86_64.tar.gz
tar -zxvf elasticsearch-8.11.3-linux-x86_64.tar.gz
mv elasticsearch-8.11.3 elasticsearch
cd elasticsearch/plugins
# 安装ik分词器
wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.11.3/elasticsearch-analysis-ik-8.11.3.zip
# 如果unzip 未安装 则根据提示安装
unzip elasticsearch-analysis-ik-8.11.3.zip -d ik
rm elasticsearch-analysis-ik-8.11.3.zip
修改配置
## 配置
cd .. && mkdir data
vim config/elasticsearch.yml
#修改
cluster.name: company-test
node.name: node-1
node.roles: [master,data]
#node.roles: [data]
path.data: /opt/data/elasticsearch/data
path.logs: /opt/data/elasticsearch/logs
network.host: 0.0.0.0
network.publish_host: 127.0.0.1
http.port: 9200
transport.port: 9300
# 集群安装
#cluster.initial_master_nodes: ["node-1","node-2"]
cluster.initial_master_nodes: ["node-1"]
#discovery.seed_hosts: ["192.168.0.1:9300","192.168.0.2:9301"]
discovery.seed_hosts: ["127.0.0.1:9300"]
http.cors.enabled: true
http.cors.allow-origin: "*"
action.destructive_requires_name: false
bootstrap.memory_lock: false
#自动创建索引
action.auto_create_index: true
# 不需要https,可以按照如下两行进行配置。如果需要https 的话,还需要安装https 对应的证书,本文不再列举
xpack.security.http.ssl.enabled: false
#xpack.security.http.ssl.keystore.path: certs/http.p12
xpack.security.enabled: true
xpack.license.self_generated.type: basic
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.client_authentication: required
xpack.security.transport.ssl.keystore.path: ssl/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: ssl/elastic-certificates.p12
生成证书
生成ca证书
bin/elasticsearch-certutil ca #一路敲回车(没设置密码)
生成凭证
bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12 #一路敲回车(没设置密码)
#当前路径生成两个证书
#把生成的 elastic-certificates.p12 文件 移动到 配置文件对应的位置。如果配置集群 就把 elastic-certificates.p12 文件 分发到其他机器上
mkdir -p config/ssl
cp elastic-certificates.p12 config/ssl/
修改内存限制
vim config/jvm.options
# 根据自己的机器内存大小修改(-Xmx2g 前面不要有空格)
系统配置优化
# 使用swapoff禁止所有的交换
##(临时关闭)
sudo swapoff -a
## 永久关闭-> 要永久禁用它,需要编辑/etc/fstab文件并注释掉包含单词swap的所有行。
# 在/etc/sysctl.conf 添加
vm.max_map_count=655360
sysctl -p
# 打开文件数&线程数 (想要极限配置 自行查看相关文档)
$ cat /etc/security/limits.conf
* soft nofile 65536
* hard nofile 131072
* soft nproc 4096
* hard nproc 4096
启动
bin/elasticsearch -d
# 登录任意一台机器 执行
bin/elasticsearch-setup-passwords auto // 自动随机生成并设置密码
记下各个账号生成的密码
在浏览器测试 http://127.0.0.1:9200
能否访问 [需要在浏览器弹框中输入账号密码 如 user:elastic password:123 ]
文章评论