关注
- Elasticsearch开箱即用, 7版本自带java环境
- Elasticsearch运行在9200端口上
- Elasticsearch是分布式搜索引擎, 支持水平扩展及分析能力
环境
- CentOS7
- Elasticsearch7.5.1
Es版本7集成了java的jdk
官网下载
https://www.elastic.co/cn/downloads/elasticsearch
官方下载太慢,有好心网友提供百度下载:https://blog.csdn.net/weixin_37281289/article/details/101483434
目录结构
- bin 脚本文件, 启动文件都在这
- config 集群配置文件,user 相关配置
- data 数据文件
- lib java类库
- logs 日志文件
- modules 包含所有的es模块
- plugins 包含所有已安装插件
浏览是否安装成功
http://localhost:9200
安装插件
- 查看本机安装过的插件
/bin/elasticsearch-plugins list
- 安装插件, 会从网上下载并安装
/bin/elasticsearch-plugins install 插件名称
- 浏览插件
http://localhost:9200/_cat/plugins
安装过程
刚开始我是root权限, 默认不允许使用root运行, 需要创建一个专属用户
-
报root用户不能安装错误
/bin/elasticsearch
-
创建一个es用户与用户组
groupadd es && useradd es -g es -p es
-g 是指定所属组
-p 设置密码 -
解压Gz文件
tar -zxvf elasticsearch-7.5.0-linux-x86_64.tar.gz
-
将elasticsearch拷贝到/usr/local目录下
mv elasticsearch-7.5.0 /usr/local/
-
设置用户与用户组
chown -R es:es elasticsearch-7.5.0/
-
使用es帐号登陆
su es
-
运行Es软件
/bin/elasticsearch
-
验证是否安装成功
curl http://127.0.0.1:9200
安装插件
-
查看插件列表
bin/elasticsearch-plugin list
-
安装插件, 会网上搜索
bin/elasticsearch-plugin install analysis-icu
-
删除插件
bin/elasticsearch-plugin remove analysis-icu
安装遇到的坑
- 不能使用root运行
java.lang.RuntimeException: can not run elasticsearch as root
使用非root帐号运行
- vm.max_map_count 太低
[2020-01-18T18:45:53,408][WARN ][o.e.b.BootstrapChecks ] [kubernetes.master] max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
[2020-01-18T18:45:53,409][WARN ][o.e.b.BootstrapChecks ] [kubernetes.master] max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
解决方法
- 生产环境中必须要配置[discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes] 其中一个.
[2020-01-18T18:51:32,004][INFO ][o.e.n.Node ] [kubernetes.master] starting ...
[2020-01-18T18:51:47,299][INFO ][o.e.t.TransportService ] [kubernetes.master] publish_address {192.168.21.22:9300}, bound_addresses {[::]:9300}
[2020-01-18T18:51:47,480][INFO ][o.e.b.BootstrapChecks ] [kubernetes.master] bound or publishing to a non-loopback address, enforcing bootstrap checks
ERROR: [2] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
[2]: 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
解决, 编辑配置文件
vim config/elasticsearch.yml
去掉一个注释
网友评论