运行Sentinel得有JDK环境,没有安装的参考JDK安装教程
一、官网下载
百度网盘
进入release
页面下载
将下载好的sentinel-dashboard.jar
上传到服务器上,我上传到了/usr/download
二、开放端口
firewall-cmd --add-port=8080/tcp --permanent
firewall-cmd --reload
# 查看开放端口列表
firewall-cmd --permanent --list-port
三、创建Sentinel目录
mkdir /usr/local/sentinel
cp /usr/download/sentinel-dashboard-1.8.7.jar /usr/local/sentinel/sentinel-dashboard.jar
四、启动命令
根据官网的命令启动编写脚本
五、编写脚本
-
启动脚本
vi /usr/local/sentinel/start.sh
内容如下:
#!/bin/bash echo "sentinel start......" nohup /usr/local/jdk/bin/java -Dserver.port=8080 -Dcsp.sentinel.dashboard.server=localhost:8080 -Dproject.name=sentinel-dashboard -jar /usr/local/sentinel/sentinel-dashboard.jar > /usr/local/sentinel/sentinel.log 2>&1 &
授权:
chmod +x /usr/local/sentinel/start.sh
-
停止脚本
vi /usr/local/sentinel/stop.sh
内容如下:
#!/bin/bash echo "sentinel stop......" PID=$(pgrep -f :8080) if [ -z "$PID" ]; then echo "sentinel is not running." else kill -s 9 $PID TIMESTAMP=$(date +"%Y-%m-%d %H:%M:%S") echo "stop sentinel at $TIMESTAMP stop" >> /usr/local/sentinel/sentinel.log fi
授权:
chmod +x /usr/local/sentinel/stop.sh
-
重启脚本
vi /usr/local/sentinel/reload.sh
内容如下:
#!/bin/bash echo "sentinel reload......" echo "step 1 try stop sentinel......" /usr/local/sentinel/stop.sh echo "step 2 try start sentinel......" /usr/local/sentinel/start.sh
授权:
chmod +x /usr/local/sentinel/reload.sh
六、测试脚本
cd /usr/local/sentinel
七、开机自启
-
编辑systemctl脚本
vi /lib/systemd/system/sentinel.service
内容如下
#启动顺序与依赖关系 [Unit] #配置文件的描述信息 Description=sentinel #在那个服务后面启动 一般是network.target syslog.target守护进程需要 After=network.target syslog.target #启动行为 [Service] #以守护进程的方式启动 Type=forking #哪一个分组的用户来启动 User=root Group=root #服务启动时要执行的命令:执行的命令的路径 [命令的参数] ExecStart=/usr/local/sentinel/start.sh #服务停止时要执行的命令 ExecStop=/usr/local/sentinel/stop.sh #服务重启时要执行的命令 ExecReload=/usr/local/sentinel/reload.sh #只有当服务异常退出时才重启 Restart=on-failure #私有的临时目录 PrivateTmp=true #表示如何安装配置文件。 [Install] #表明当系统以多用户方式(默认的运行级别)启动时,这个服务需要被自动运行 WantedBy=multi-user.target
-
重新加载systemctl脚本
systemctl daemon-reload
-
开启开机自启
systemctl enable sentinel
-
重启验证
reboot systemctl --no-pager status --full sentinel