Elasticsearch 是一个 Java 应用,因此,第一步就是安装 Java。
以 root 或者其他 sudo 用户身份运行下面的命令,去安装 OpenJDK 软件包
ElasticSearch 7.x默认自带x-pack认证,开启后可提高集群安全性。
1.安装 Java环境
yum install -y java java-devel java-11-openjdk-devel
2.安装 Elasticsearch
Elasticsearch 在标准的CentOS 8 源中不可用。我们将会从 Elasticsearch RPM 源中安装它。
使用rpm命令导入源的 GPG:
sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
编辑/etc/yum.repos.d/elasticsearch.repo源
tee /etc/yum.repos.d/elasticsearch.repo <<-'EOF'
[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
确认主机limit相关参数
grep vm.max_map_count /etc/sysctl.conf && sed -i "s@vm.max_map_count.*@vm.max_map_count=655360@g" /etc/sysctl.conf || echo 'vm.max_map_count=655360' >>/etc/sysctl.conf
sysctl -p
确认主机无其他ElasticSearch软件包
#执行此命令输出为yes即可
rpm -qa | grep elasticsearch >/dev/null && echo exists || echo -e "\e[1;32myes\e[0m"
使用YUM源进行安装
yum install -y elasticsearch-7.17.6
#或直接使用rpm包安装。rpm包见文章顶部
rpm -ivh elasticsearch-7.17.6-x86_64.rpm
修改配置文件 /etc/elasticsearch/elasticsearch.yml
- 第一步
复制以下命令直接修改
#将以下ES_CLUSTER_NAME变量赋值修改为了自己设定的集群名,如:test1-es
ES_CLUSTER_NAME=test1-es
sed -i "s/#cluster.name: my-application/cluster.name: $ES_CLUSTER_NAME/" /etc/elasticsearch/elasticsearch.yml
sed -i "s/#network.host: 192.168.0.1/network.host: 0.0.0.0/" /etc/elasticsearch/elasticsearch.yml
- 第二步
手动修改/etc/elasticsearch/elasticsearch.yml文件中的以下两项:
1).修改cluster.initial_master_nodes为本机提供服务的IP
2).修改gateway.recover_after_nodes为1
设置密码,修改配置文件,增加配置,开启认证
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
systemctl start elasticsearch
-
第三步
运行以下命令设置密码,需设置提示的各个用户的密码 -
/usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive
-
第四步
安装IK分词 -
由于elastic官方未提供ik分词插件,需下载插件进行安装。
elasticsearch-analysis-ik-7.17.6.zip文件链接:https://pan.baidu.com/s/1dVZ9iR0mQXv0SS3a1V-0PQ?pwd=le06
提取码:le06
/usr/share/elasticsearch/bin/elasticsearch-plugin install file:///root/elasticsearch-analysis-ik-7.17.6.zip
将elasticsearch加入开机自启动,并立即启动。
sudo systemctl enable elasticsearch.service --now
检验elasticsearch启动情况
curl -u elastic -XGET "192.168.7.131:9200"
单点配置文件实例(/etc/elasticsearch/elasticsearch.yml)
cluster.name: elasticsearch
node.name: master
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
bootstrap.memory_lock: false
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["master"]
cluster.initial_master_nodes: ["master"]
node.master: true
node.data: true
node.ingest: true
http.cors.enabled: true
http.cors.allow-origin: "*"
indices.fielddata.cache.size: 30%
cluster.max_shards_per_node: 50000