准备
- 创建新用户:因为不能以root身份启动elasticsearch,所以需要先创建一个新用户
# 创建用户组
$ groupadd elastic
# 创建用户
$ useradd -g elastic elasticsearch
# note:在部署过程中要确保相关文件的所属用户是你所创建的,可以使用下面的命令进行修改
# 修改文件所属用户
$ chown -R elasticsearch:elastic [文件夹]
- 安装jdk:es的运行依赖于java,因此需要先安装jdk。也可以使用es自带的openjdk绑定版本。
下载安装Elasticsearch
$ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.2-linux-x86_64.tar.gz
$ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.2-linux-x86_64.tar.gz.sha512
$ shasum -a 512 -c elasticsearch-7.10.2-linux-x86_64.tar.gz.sha512
$ tar -xzf elasticsearch-7.10.2-linux-x86_64.tar.gz
$ cd elasticsearch-7.10.2/
配置
# vi elasticsearch.yaml
# 集群名
cluster.name: mec-elasticsearch
# 节点名
node.name: master
# 数据存储路径
path.data: /var/lib/elasticsearch
# 日志路径
path.logs: /var/log/elasticsearch
# 允许所有网络访问
network.host: 0.0.0.0
# 端口号
http.port: 9200
# 节点发现
discovery.seed_hosts: ["192.168.100.79"]
# 主节点列表
cluster.initial_master_nodes: ["master"]
启动
$ cd bin
$ ./elasticsearch
# 或者以后台进程启动 ./elasticsearch -d
访问
$ curl -X GET "http://{your_ip}:9200/"
{
"name" : "master",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "ESOgzVqmSUuOiichFzRlNg",
"version" : {
"number" : "7.10.2",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "747e1cc71def077253878a59143c1f785afa92b9",
"build_date" : "2021-01-13T00:42:12.435326Z",
"build_snapshot" : false,
"lucene_version" : "8.7.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
关于启动报错
在启动过程中,报出了以下错误:
ERROR: [2] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
解决办法:
[1] 修改 /etc/security/limits.conf,添加以下两行配置
# vi /etc/security/limits.conf
elasticsearch soft nofile 65536
elasticsearch hard nofile 65536
[2] 修改 /etc/sysctl.conf
# vi /etc/sysctl.conf
vm.max_map_count=262144