ElasticSearch的基本概念
传送连接 ://www.greatytc.com/p/1b6c0b52cb2e
第一步
资源最好去官方下载
https://www.elastic.co/cn/
https://www.elastic.co/guide/en/elasticsearch/reference/7.6/targz.html(安装说明)
官网上其实有安装步骤,但是写的并不完善,很多时候安装会出现一些错误提示。这里主要记录下一些常见的错误跟解决办法
ES依赖JAVA 并且对版本要求很高,记得升级你的JDK版本 最小也得1.9吧
1.下载资源
我们下载目前最新的版本
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.6.2-linux-x86_64.tar.gz
2.解压
tar -zxvf elasticsearch-7.6.2-linux-x86_64.tar.gz
3.启动
cd elasticsearch-7.6.2
./elasticsearch
这个时候第一个问题就出现了,ES默认不允许root用户直接启动 出现“can not run elasticsearch as root“错误提示,解决办法也很简单
解决办法
创建一个用户 然后赋予权限即可
1.adduser fzh
2.输入两次密码
3.赋予权限 chown -R fzh /root/elasticsearch-7.6.2
4.切换到 fzh用户
4.继续启动
/elasticsearch 启动
这时候大概率你还会报错
1.错误 (启动模式错误)
the default discovery settings are unsuitable for production use;
at least one of [discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes] must be configured
这个错误是ES默认配置为集群,解决办法也很简单,我们只使用一个节点就好了
解决办法
编辑ES 配置文件
vi elasticsearch.yml
找到下面这行
cluster.initial_master_nodes: ["node-1","node-2"] 修改为 cluster.initial_master_nodes: ["node-1"]
2.错误(每个进程最大同时打开文件数太小)
max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
##命令查看当前数量命令
ulimit -Hn
ulimit -Sn
解决办法
修改 vi /etc/security/limits.conf文件,增加配置,用户退出后重新登录生效
##切记 *号不要忘记了 然后必须登出 再登录才能生效
* soft nofile 65536
* hard nofile 65536
#再次查看就修改了
3.错误(最大线程个数太低)
max number of threads [3818] for user [es] is too low, increase to at least [4096]
解决办法
还是修改 vi /etc/security/limits.conf文件
##切记 *号不要忘记了 然后必须登出 再登录才能生效
* soft nproc 65536
* hard nproc 65536
4.错误(虚拟内存地址太小)
max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
解决办法
修改 vi /etc/sysctl.conf文件 增加配置
vm.max_map_count=262144
sysctl -p 立马生效
验证命令 sysctl -a|grep vm.max_map_count
好了修改完毕这些基本上就可以了
但是接着运行前还是要修改一些配置,方便我们测试
http.port: 9200 //默认端口9200 如果有需要这里修改下,劲量不要修改吧
network.host: 0.0.0.0 //默认只允许本机访问,修改成0.0.0.0 就允许外网访问,当然你防火墙得记得关
好了 接下去可以启动了
运行命令
./elasticsearch
访问 http://你的IP:9200/ 出现以下信息显示就说明安装成功了
{
"name" : "node-1",
"cluster_name" : "my-application",
"cluster_uuid" : "hx4OvoENTbKwqzyuhs0GbA",
"version" : {
"number" : "7.6.2",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "ef48eb35cf30adf4db14086e8aabd07ef6fb113f",
"build_date" : "2020-03-26T06:34:37.794943Z",
"build_snapshot" : false,
"lucene_version" : "8.4.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
到此单机版本的ES安装完成了
