Loading

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
posted @   秋风飒飒吹  阅读(2062)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· 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
点击右上角即可分享
微信分享提示