Elastic Stack:Centos7安装ElasticSearch7.7.1以及开机自启
一.相关环境
Centos7,ElasticSearch7.7.1,kibana7.7.1,jdk11
我这里都是下载的tar.gz包,因为下载太慢,没有去官网下载(下了一个晚上都没下好,几kb每秒),直接去华为镜像站下载
二.搭建jdk11环境
这里不再赘述。
三.搭建ElasticSearch环境(坑贼多,错一步可能环境搭建失败)
我这里将所有软件都放在/opt目录下了
先解压,es的软件包
1 | tar -zxvf elasticsearch- 7.7 . 1 -linux-x86_64.tar.gz |
进入bin目录
1 | cd elasticsearch- 7.7 . 1 /bin |
执行命令:
1 | ./elasticsearch |
直接报错,can not run elasticsearch as root,那就直接创建一个用户。
1 | adduser elk<br>#授权<br>chmod 777 -R /opt/elasticsearch- 7.7 . 1 |
再切换到elk用户,再执行命令
1 | su elk<br>./elasticsearch |
又报错?大致意思是说要我们去配置elasticsearch.yml配置文件
1 | vim ../config/elasticsearch.yml |
主要设置项:
1 2 3 4 5 6 7 8 9 10 11 12 13 | cluster.name: elk #设置集群的名字,要小写 node.name: es- 1 #设置节点的名字 network.host: 0.0 . 0.0 #设置ip地址,使外界可以访问es http.port: 9200 #设置对外服务的端口,默认是 9200 #设置在集群中的所有节点名称,这个节点名称就是之前所修改的,当然你也可以采用默认的也行,目前是单机,放入一个节点即可 cluster.initial_master_nodes: [ "es-1" ] bootstrap.memory_lock: false bootstrap.system_call_filter: false #解决跨域问题 http.cors.enabled: true http.cors.allow-origin: "*" http.cors.allow-methods: OPTIONS, HEAD, GET, POST, PUT, DELETE http.cors.allow-headers: "X-Requested-With, Content-Type, Content-Length, X-User" |
配置完成后,再执行./elasticsearch命令,这里又会报错
支持elasticsearch线程的最大文件数和最大虚拟内存不足。所以要配置这些选项。
在root用户下,修改配置文件。
1 | vim /etc/security/limits.conf |
在文档末尾加上如下配置,保存退出
1 2 3 4 | * soft nofile 65536 * hard nofile 65536 * soft nproc 65536 * hard nproc 65536 |
使limits.conf配置生效:
1 | vim /etc/ssh/sshd_config |
配置:
UsePAM yes
UseLogin yes
修改sysctl.conf配置,保存并退出。
1 | vim /etc/sysctl.conf |
1 2 | #修改后,使配置生效 sysctl -p |
重新开启一个连接,用elk用户执行./elasticsearch命令
1 2 | ./elasticsearch #./elasticsearch -d 后台守护进程方式运行 |
开放端口
1 2 | firewall-cmd --zone= public --add-port= 9200 /tcp --permanent # 开放 9200 端口 firewall-cmd --reload # 配置立即生效 |
在浏览器中打开192.168.10.138:9200
看到如下界面,就说明es已经搭建成功了。
如果,不成功,就reboot,重启。
查看集群健康状态:http://192.168.10.138:9200/_cluster/health
四.配置ElasticSearch7开机自启
1 2 | cd /etc/init.d vim es-server |
编写启动脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | #!/bin/bash #chkconfig: 345 63 37 #description: elasticsearch #processname: elasticsearch- 7.7 . 1 export ES_HOME=/opt/elasticsearch- 7.7 . 1 【这个目录是你Es所在文件夹的目录】 case $ 1 in start) su elk<<! 【es 这个是启动es的账户,如果你的不是这个记得调整】 cd $ES_HOME ./bin/elasticsearch -d -p pid exit ! echo "elasticsearch is started" ;; stop) pid=`cat $ES_HOME/pid` kill - 9 $pid echo "elasticsearch is stopped" ;; restart) pid=`cat $ES_HOME/pid` kill - 9 $pid echo "elasticsearch is stopped" sleep 1 su elk<<! 【es 这个是启动es的账户,如果你的不是这个记得调整】 cd $ES_HOME ./bin/elasticsearch -d -p pid exit ! echo "elasticsearch is started" ;; *) echo "start|stop|restart" ;; esac exit 0 |
修改文件权限
1 | chmod 777 es-server |
添加系统服务,开机自启
1 | chkconfig --add es-server |
启动,关闭、重启服务
1 2 3 | service es-server start service es-server stop service es-server restart |
标签:
Linux
, Elastic Stack
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix