极简体验-shell脚本实现应用服务开机自启

本文介绍了一种基于shell脚本的通用方法,用于解决应用服务在不同部署路径、启动指令、环境下的开机自启问题。通过统一部署路径、判断启动脚本、传参鉴别环境及获取部署目录用户,实现一个脚本适用于所有应用服务的自启,降低了运维工作成本。
摘要由CSDN通过智能技术生成

技术导语: 之前有篇文章已经基本介绍了应用服务开机自启的实现方法,本文着重基于脚本管理方便性、脚本内容通用性、脚本应用环境适配性三大方面的考虑,编写自启脚本,达到一个脚本适用所有应用服务自启的效果。

关于运维工作的最佳实践

在接到这个需求的初期,就在思考如何最小能力成本地编写脚本,包括后续的脚本维护。主要有如下几大难题。

  • 应用部署路径不同
  • 应用启动指令不同
  • 应用部署环境不同
  • 应用部署用户不同

针对三个难题的解决方案更多的还是从部署规范上去思考。

应用部署路径不同

前提: 统一部署路径规范,所有应用部署在同一级目录,每个应用预先定义好路径名称。
脚本实现: 可以通过遍历的方式获取到所有应用的部署路径。

应用启动指令不同

前提: 理想情况下可以统一启动指令,特殊情况下允许不同启动命令的存在。
脚本实现: 可以在自启脚本里面通过判断启动脚本是否存在获知启动指令。

应用部署环境不同

前提: 当前主流的环境分类:开发、测试、预生产、生产。不同环境可能导致启动参数不同,其实也可以归类为启动指令不同。
脚本实现: 通过传参的方式鉴别不同环境。

应用部署用户不同

前提: 为了实现应用间隔离,行业内做法一般是不同应用通过不同的用户部署,从安装部署到启停均适用应用用户进行操作。
脚本实现: 可以在自启脚本里面获取部署目录所属用户。

基于解决这三大问题的逻辑,编写脚本如下:

vi reboot_start_all.sh

#!/bin/bash
cd /app/deploy
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值