官方指引:​​​​​​Install Elasticsearch with RPM | Elasticsearch Guide [7.16] | Elastic

准备3台虚拟机centos7,每个虚拟机挂一块硬盘/esdata。按照官方指引安装

挂载硬盘、开防火墙等参考:Centos8 常用_leoppeng的专栏-CSDN博客

1、

rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

2、vim常用的功能要熟,编辑文件会用到

vim /etc/yum.repos.d/elasticsearch.repo

[elasticsearch]
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=0
autorefresh=1
type=rpm-md

3、

sudo yum install --enablerepo=elasticsearch elasticsearch

到这就算安装完成、接下来是配置

给elasticsearch用户授权、安装的时候创建的

chown -R elasticsearch:elasticsearch /esdata

修改配置文件,多台机器节点配置文件基本一样:

节点名称(node.name)和节点网络(network.host)改成各个虚拟机的

数据目录(path.data)和日志(path.logs)改成实际的路径

集群名称(cluster.name)一致

discovery.seed_hosts 把所有节点的ip加进来

cluster.initial_master_nodes 主节点

vim /etc/elasticsearch/elasticsearch.yml

# ======================== Elasticsearch Configuration =========================
#
# NOTE: Elasticsearch comes with reasonable defaults for most settings.
#       Before you set out to tweak and tune the configuration, make sure you
#       understand what are you trying to accomplish and the consequences.
#
# The primary way of configuring a node is via this file. This template lists
# the most important settings you may want to configure for a production cluster.
#
# Please consult the documentation for further information on configuration options:
# https://www.elastic.co/guide/en/elasticsearch/reference/index.html
#
# ---------------------------------- Cluster -----------------------------------
#
# Use a descriptive name for your cluster:
#
cluster.name: my-cluster-yq
#
# ------------------------------------ Node ------------------------------------
#
# Use a descriptive name for the node:
#
node.name: node-222
#
# Add custom attributes to the node:
#
#node.attr.rack: r1
#
# ----------------------------------- Paths ------------------------------------
#
# Path to directory where to store the data (separate multiple locations by comma):
#
path.data: /esdata/data
#
# Path to log files:
#
path.logs: /esdata/logs
#
# ----------------------------------- Memory -----------------------------------
#
# Lock the memory on startup:
#
#bootstrap.memory_lock: true
#
# Make sure that the heap size is set to about half the memory available
# on the system and that the owner of the process is allowed to use this
# limit.
#
# Elasticsearch performs poorly when the system is swapping the memory.
#
# ---------------------------------- Network -----------------------------------
#
# By default Elasticsearch is only accessible on localhost. Set a different
# address here to expose this node on the network:
#
network.host: 10.10.30.222
#
# By default Elasticsearch listens for HTTP traffic on the first free port it
# finds starting at 9200. Set a specific HTTP port here:
#
http.port: 9200
#
# For more information, consult the network module documentation.
#
# --------------------------------- Discovery ----------------------------------
#
# Pass an initial list of hosts to perform discovery when this node is started:
# The default list of hosts is ["127.0.0.1", "[::1]"]
#
discovery.seed_hosts: ["10.10.30.220:9300", "10.10.30.221:9300","10.10.30.222:9300"]
#
# Bootstrap the cluster using an initial set of master-eligible nodes:
#
cluster.initial_master_nodes: ["node-220", "node-221","node-222"]
#
# For more information, consult the discovery and cluster formation module documentation.
#
# ---------------------------------- Various -----------------------------------
#
# Require explicit names when deleting indices:
#
#action.destructive_requires_name: true
#
# ---------------------------------- Security ----------------------------------
#
#                                 *** WARNING ***
#
# Elasticsearch security features are not enabled by default.
# These features are free, but require configuration changes to enable them.
# This means that users don’t have to provide credentials and can get full access
# to the cluster. Network connections are also not encrypted.
#
# To protect your data, we strongly encourage you to enable the Elasticsearch security features. 
# Refer to the following documentation for instructions.
#
# https://www.elastic.co/guide/en/elasticsearch/reference/7.16/configuring-stack-security.html

设置防火墙、开9200和9300端口号。

然后启动

systemctl start elasticsearch
systemctl enable elasticsearch

浏览器输入http://ip:9200.出现如下界面说明已成功

输入如下连接http://ip:9200/_cat/health?v​,查看集群状态

输入如下连接http://ip:9200/_cat/nodes?v查看节点情况

 

 可以看到222是主节点。

用yum的安装方式,比较方便。如果自己下载压缩包,解压,创建启动用户、设置权限、编写服务脚本会很麻烦。稍微不注意就会出问题。用yum安装,这些工作都自动完成了

我们查看服务启动脚本可以看到:/usr/lib/systemd/system/elasticsearch.service

如果自己安装是要去修改系统的配置文件的

 后期实际使用过程,再记录相关问题和优化配置

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐