ElasticSearch Centos7 安装
准备工作
开放端口
关闭防火墙
1 | systemctl stop firewalld |
或者开放对应的端口号,比如ElasticSearch的9300、9200,Kibana的5601
1 | sudo firewall-cmd --zone=public --add-port=9300/tcp --permanent |
新建用户
1 | 添加用户备用 |
创建安装目录
1 | mkdir /usr/local/elastic |
下载安装包
下载安装包 elasticsearch、kibana、IK Analysis,这里下载的是7.5.1版本,大家选择自己需要的版本
1 | wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.5.1-linux-x86_64.tar.gz |
解压安装包到安装目录
1 | tar -zxvf elasticsearch-xxxx.tar.gz -C /usr/local/elastic |
修改安装目录的所有者
1 | chown -R elastic:elastic /usr/local/elastic |
预先解决可能会遇到的问题
启动问题
问题一:max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
问题二:max number of threads [1024] for user [lish] likely too low, increase to at least [2048]
需要服务器增大文件、线程等的限制数
解决:修改切换到root用户修改配置limits.conf 添加下面两行
命令:vi /etc/security/limits.conf
1 | * hard nofile 65536 |
问题三:max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
解决:切换到root用户修改配置sysctl.conf
vi /etc/sysctl.conf
添加下面配置:
1 | vm.max_map_count=655360 |
并执行命令:
1 | sysctl -p |
调整内存
配置elasticsearch的运行堆大小,默认是1g,如果是学习用可调小,如果是生成用可根据资源情况调大。注意:最大、最小堆大小需相同
1 | vi /usr/local/elastic/elasticsearch-xxx/config/jvm.options |
1 | ################################################################ |
启动elasticsearch
配置调整
1 | vi /usr/local/elastic/elasticsearch-xxx/config/jvm.options |
设置3个点:
node.name: node-1 # 1 设置节点名称
network.host: 0.0.0.0 # 2 设置网络地址绑定
cluster.initial_master_nodes: [“node-1”] # 3 设置初始主节点
1 | # ======================== Elasticsearch Configuration ========================= |
中文分词器
1 | 将前面下载的IK分词器,加入ElasticSearch插件目录 |
启动ElasticSearch
以elastic用户身份启动elasticsearch
1 | su elastic |
如要后台运行 加 -d
1 | /usr/local/elastic/elasticsearch-xxx/bin/elasticsearch -d |
访问:
浏览器访问:http://192.168.1.168:9200
看到以下响应内容:
1 | { |
启动Kibana
配置kibana
1 | vi /usr/local/elastic/kibana-xxx/config/kibana.yml |
配置kibana地址绑定
server.host: 0.0.0.0 # 1 设置网络地址绑定
如果kibana要访问的elasticsearch 和它不在一台机器上,则需要配置elasticsearch 的访问地址:
elasticsearch.hosts: [“http://localhost:9200"]
如果开启了安全认证,则需要配置访问elasticsearch的用户密码:
elasticsearch.username: “user”
elasticsearch.password: “pass”
1 | # Kibana is served by a back end server. This setting specifies the port to use. |
启动并使用Kibana
以elastic用户启动 kibana
1 | /usr/local/elastic/kibana-xxx/bin/kibana |