zoukankan      html  css  js  c++  java
  • Centos 环境一键部署脚本(shell脚本)

    谨以此文纪念吊炸天的Centos环境一键部署方案的新鲜出炉

      辛苦大半年,产品准备上线了,BOSS亲自体验安装部署,看着超过200+页的安装文档直接崩溃了(需要部署23个基础服务),经历了超过3个小时的安装包下载过程,责令整合、优化安装部署过程,简化安装流程,BOSS原话“你们是想玩s现场的运维兄弟吗?统统去出差…”小弟不才,有幸领到这一艰巨的任务,开始了一键部署的艰苦旅程…

    一键部署的目的

    1、简化产品的安装

    能够自动部署相关服务(支持卸载、重复安装)

    提供自动修改配置文件的能力,不需要手工修改配置文件(现场的运维都是大神,我遇到过修改配置文件将服务搞坏的情况)

    2、 服务运维

    能够进行服务运行状态监控

    提供服务启动、停止、查看日志的能力

    方案

    采用shell脚本完成

    具体的流程

    1、系统设置,关闭防火墙、设置主机名之类的

    2、提取公共的部分,例如JDK、多台服务器之间的ssh访问

    3、服务的安装,包括解压、修改配置文件、添加开机自启、服务启动

    4、服务的卸载(文件目录、数据文件、启动项)、重复安装

    5、状态监控

    Shell脚本

    关闭防火墙

    修改主机名

    安装JDK 

    安装服务,以ActiveMQ为例

    卸载服务,仍然以ActiveMQ为例 

    至此安装、部署大体完毕

    使用shell脚本进行控制即可 

    服务状态监控比较有意思,写了个grace脚本,用法如下: 

    grace 接收两个参数:

    第一个参数:接收服务名称,例如 mq

    第二个参数:接收操作内容,包括status、stop、start 

    ActiveMQ脚本 

    至此,完成全部功能的,输出shell脚本超过30个,经过2周的编写、调试,圆满完成BOSS交代的任务

    安装部署的流程简化:

    上传安装包->启动安装脚本->等待安装完成(可以进行喝茶、抽烟之类的活动)->检查安装服务状态->成功->安装结束

    安装耗时大概20分钟,之前手工部署需要1天时间,极大的缩短了安装部署的时间、难度、成本,规范了公司安装部署的流程,经BOSS推广,在整个研发中心,各产品线之间进行推广

    解决了centos环境的安装部署,稍后还有windows环境的安装部署,呵呵

  • 相关阅读:
    設計模式學習(一)觀察者模式(Observer)
    JavaScript對Table進行排序(jQuery)
    一个很好的String组合连接的方法(StringBuffer)
    关于C#静态构造函数的几点说明 (轉載)
    在DataGrid中添加序號
    C# 对象深拷贝、浅铐贝、直接拷贝(转)
    在做數據插入時,傳參數應該注意的小細節!
    JavaScript檢驗時間格式
    獲得鼠標位置(js)
    my tools
  • 原文地址:https://www.cnblogs.com/titan5750/p/6735215.html
Copyright © 2011-2022 走看看