Shell之-开机自启所有服务

开机自启所有服务

首先,大家如果看到有什么不懂的地方,欢迎吐槽!!!
我会在当天或者第二天及时回复,并且改进~~


#!/bin/bash

sleep 300;

#####Start_Check#####
function Start_Check () {   

echo -e "\e[;33m -----------------Start_Check------------------ \e[0m"
echo ""
atlas_ip=(192.168.0.223 192.168.0.203)
for ((t = 0; t < ${#atlas_ip[@]}; t++))
do
    while true
    do
        fping ${atlas_ip[$t]} &> /dev/null && echo -e "\e[;32mAtlas:Atlas_${atlas_ip[$t]} up!!!\e[0m"; break || echo -e "\e[;31mAtlas_:Atlas_${atlas_ip[$t]} not start,Please start.\e[0m" ; exit 0
    done
done
echo ""
}

######Auto_Atlas#####
function Atlas_Check () {
echo -e "\e[;33m -----------------Atlas_Check----------------- \e[0m"
echo ""
Atlas_Server=(192.168.0.223 192.168.0.203)
for ((a = 0; a < ${#Atlas_Server[@]}; a++))
do
    file_list=($(ssh root@${Atlas_Server[$a]} "ls /usr/local/mysql-proxy/conf/" | awk -F"." '{print $1}'))
    for ((b = 0; b < ${#file_list[@]}; b++))
    do
        ssh root@${Atlas_Server[$a]} "ps -ef | grep -v grep |grep 'defaults-file=/usr/local/mysql-proxy/conf/${file_list[$b]}.cnf'" &> /dev/null
        if [ $? -eq 0 ]
      then
            echo -e "\e[;32mAtlas:${Atlas_Server[$a]}_${file_list[$b]} is a up\e[0m"
        else
            echo -e "\e[;31mAtlas:${Atlas_Server[$a]}_${file_list[$b]} is a down\e[0m"
            ssh root@${Atlas_Server[$a]} "/usr/local/mysql-proxy/bin/mysql-proxyd ${file_list[$b]} start" >>/dev/null &
        fi
    done
done
echo ""
}

#####Auto_Nginx#####
function Auto_Nginx () {
echo -e "\e[;33m -----------------Nginx_Check----------------- \e[0m"
echo ""
Nginx_Server=(192.168.0.221 192.168.0.203)
for ((c = 0; c < ${#Nginx_Server[@]}; c++))
do
    ssh root@${Nginx_Server[$c]} "ps -ef | grep -v grep | grep /usr/local/nginx/conf/nginx.conf" &> /dev/null
    if [ $? -eq 0 ]
    then
        echo -e "\e[;32mNginx:${Nginx_Server[$c]} Nginx_Server is s !!!\e[0m"
    else
        echo -e "\e[;31mNginx:${Nginx_Server[$c]} Nginx_Server is a down!!!\e[0m"
        ssh root@${Nginx_Server[$c]} "ulimit -SHn 65535;/usr/local/nginx/sbin/nginx"
    fi
done
echo ""
}

#####Auto_Tomcats#####
function Auto_Tomcats () {
echo -e "\e[;33m ---------------Tomcats_Check--------------- \e[0m"
echo ""
Tomcat_Server=(192.168.0.223 192.168.0.221 192.168.0.212 192.168.0.211 192.168.0.209 192.168.0.206  192.168.0.205 192.168.0.203)
for ((i = 0; i < ${#Tomcat_Server[@]}; i++))
do
    tomcats=($(ssh root@${Tomcat_Server[$i]} "ls -l /usr/local/tomcats | grep ^d " | egrep -v "(D:|deploy)" | awk '{print $NF}'))
    for ((n = 0; n < ${#tomcats[@]}; n++))
    do
        ssh root@${Tomcat_Server[$i]} "ps -ef | grep -v grep | grep ${tomcats[$n]}" &> /dev/null
        if [ $? -eq 0 ]
        then
            echo -e "\e[;32mTomcats:${Tomcat_Server[$i]}_${tomcats[$n]} status is a up !!!\e[0m"
        else
            echo -e "\e[;31mTomcats:${Tomcat_Server[$i]}_${tomcats[$n]} status is a down !!!\e[0m"
            ssh root@${Tomcat_Server[$i]} "JAVA_HOME=/usr/local/java;JAVA_BIN=/usr/local/java/bin;PATH=$PATH:$JAVA_BIN;CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar;export JAVA_HOME JAVA_BIN PATH CLASSPATH;/usr/local/tomcats/${tomcats[$n]}/bin/startup.sh"
        fi
    done
done
echo ""
}

#####Auto_Mysqld#####
function Auto_Mysqld () {
echo -e "\e[;33m ----------------Mysqld_Check-------------- \e[0m"
echo ""
Mysql_Server=(192.168.0.207 192.168.0.204 192.168.0.213)
for ((s = 0; s < ${#Mysql_Server[@]}; s++))
do
    ssh root@${Mysql_Server[$s]} "service mysql status | grep -v grep | grep OK" &> /dev/null
    if [ $? -eq 0 ]
    then
        echo -e "\e[;32mMysql:${Mysql_Server[$s]}_Mysqlservice is a up!!!\e[0m"
    else
        echo -e "\e[;31mMysql:${Mysql_Server[$s]}_Mysqlservice is a down!!!\e[0m"
        ssh root@${Tomcat_Server[$s]} "service mysql start"
    fi
done
echo ""
}

######Auto_Zabbix_Proxy#####
function Auto_Zabbix_Proxy () {
echo -e "\e[;33m --------------Zabbix_Proxy_Check------------- \e[0m"
echo ""
Zabbix_Proxy=(192.168.0.221)
for ((z = 0; z < ${#Zabbix_Proxy[@]}; z++))
do
    ssh root@${Zabbix_Proxy[$z]} "ps -ef | grep -v grep | grep zabbix_proxy" &> /dev/null
    if [ $? -eq 0 ]
    then
        echo -e "\e[;32mZabbix:${Zabbix_Proxy[$z]}_Zabbix_Proxy is a up!!!\e[0m"
    else
        echo -e "\e[;31mZabbix:${Zabbix_Proxy[$z]}_Zabbix_Proxy is a down!!!\e[0m"
        ssh root@${Zabbix_Proxy[$z]} "/usr/local/zabbix/sbin/zabbix_proxy"
    fi
done
echo ""
}

#####Auto_Zabbix_Agent#####
function Auto_Zabbix_Agent () {
echo -e "\e[;33m --------------Zabbix_Agent_Check------------ \e[0m"
echo ""
Zabbix_Agent=(192.168.0.206 192.168.0.205 192.168.0.223 192.168.0.214 192.168.0.212 192.168.0.211 192.168.0.209 192.168.0.213 192.168.0.207 192.168.0.204 192.168.0.221 192.168.0.203)
for ((o = 0; o < ${#Zabbix_Agent[@]}; o++))
do
    ssh root@${Zabbix_Agent[$o]} "ps -ef | grep -v grep | grep zabbix_agentd" &> /dev/null
    if [ $? -eq 0 ]
    then
        echo -e "\e[;32mZabbix:${Zabbix_Agent[$o]}_Zabbix_Agent is a up!!!\e[0m"
    else
        echo -e "\e[;31mZabbix:${Zabbix_Agent[$o]}_Zabbix_Agent is a down!!!\e[0m"
        ssh root@${Zabbix_Agent[$o]} "/usr/local/zabbix/sbin/zabbix_agentd"
    fi
done
echo ""
}

Start_Check
Atlas_Check
Auto_Nginx
Auto_Tomcats
Auto_Mysqld
Auto_Zabbix_Proxy
Auto_Zabbix_Agent
时间: 2024-09-02 20:04:40

Shell之-开机自启所有服务的相关文章

sqlserver-SQLServer服务不能开机自启?

问题描述 SQLServer服务不能开机自启? 我SQLServer服务设置的是自动,可是开机都不会自启(刚开始可以,前几天突然就不行了),急死了,求救啊,各位 解决方案 打开→控制面板→管理工具→服务→找到名称为 SQL Server (MSSQLSERVER)→单击选中,选中右键属性→然后看见四个项,点击→常规,看到有一个启动类型,把启动类型改为自动或者自动延迟启动 这样子就可以开机启动了,如果害怕电脑卡,建议选择后者 希望能给你带来帮助 解决方案二: 可能是你用软件把开机启动项给关了吧 解

Windows7 开机自启脚本

背景 如何开机自启 快捷方式 第一步 第二步 第三步 第四步 VB实现 逻辑脚本 VB代码 实现效果 两种方法区别 总结 背景 有些时候,我们需要做一些定时,或者指定时间运行的任务.然而相对于普通电脑和服务器而言,还是有一定的区别的. 对于服务器而言,基本上会一直处于一个运行状态.所以想要在指定的时间运行程序,或者脚本也会是很方面的.大不了写个死循环一直监听呗,虽然消耗了点服务器资源,但这点消耗不会很大,也是可以接受的.如果觉得自己写的不够精简,高效. 还可以使用Celery, Aspsched

开机启动-想通过注册系统服务实现开机自启windows自带计算器

问题描述 想通过注册系统服务实现开机自启windows自带计算器 在网上找到的代码框架,自己填了最后一句,但是运行后没有实现开机自启,求修改 #include #include #include SERVICE_STATUS m_ServiceStatus; SERVICE_STATUS_HANDLE m_ServiceStatusHandle; BOOL bRunning = true; void WINAPI ServiceMain(DWORD argc, LPTSTR argv);//服务

设置utorrent开机自启方法

  Utorrent是一款平台兼容性强.实用性广的BitTorrent软件.如何在开机的同时也自动启动utorrent呢?今天小编就跟各位朋友分享设置utorrent开机自启的方法. 1.安装"windows+r",会显示出,再填入"msconfig".按回车键: 2.来到系统配置窗口.点击:"启动"选项卡,去掉utorrent前面的勾,点击确定就行了: 这就是小编给大家带来的utorrent开机不启动解决办法.

金山毒霸怎么禁用开机自启软件

  金山毒霸怎么禁用开机自启软件?现在,大家都发现,不少软件都会偷偷地设置为开机自启动,比如QQ/PPS/爱奇艺等等.开机自启的软件一多,电脑开机速度就变得很慢很慢,运行速度也变得很卡.那么,金山毒霸怎么禁用开机自启软件呢?一起来看看金山毒霸禁用开机自启软件教程吧. 金山毒霸开机加速使用方法1.打开金山毒霸百宝箱,点击新毒霸,找到开机加速. 金山毒霸禁用开机自启软件 2.勾选要禁止开机自启动的软件,反之不需要禁止的就不要勾选.最后点击一键优化禁止软件开机自启动. 金山毒霸禁用开机自启软件 3.如

C#如何创建计划任务/如何设置开机自启

问题描述 C#如何创建计划任务/如何设置开机自启 所查到的资料都是引用了一个外部dll, 有没有办法不用引用,用C#创建一个计划任务. 或者有没有办法设置程序开机自启,不通过注册表操作,毕竟注册表操作需要管理员权限. 计划任务创建办法有了,可是郁闷的是还是需要管理员权限 解决方案 写cmd命令 应该可以 之前见过 你可以搜下相关信息 at 时间 程序路径 好像是这样吧 开机启动是必须写注册表的亲.

linux centos-虚拟机安装centos6.4重启之后卡在开机界面卡在一个服务

问题描述 虚拟机安装centos6.4重启之后卡在开机界面卡在一个服务 centos来搭建hadoop,我看了虾皮博客园的配置,但是配置完成后重启机子就会卡在进度条上,我换成文字模式发现centos出现failed在staring certmonger:Error connecting to D-bus求大神 解决方案 我也遇到了相同的问题,楼主最好怎么解决的啊?

shell脚本-linux如何设置一个shell在开机登录之后自动运行?

问题描述 linux如何设置一个shell在开机登录之后自动运行? 系统的一些后台应用需要通过运行一个shell来启动,那么如何设置这个shell在开机用户登陆之后自动运行 解决方案 把你shell脚本放到 /etc/init.d/中 同时chmod设置X执行权限,这样系统启动就可以执行了 http://stackoverflow.com/questions/12973777/how-to-run-a-shell-script-at-startup 解决方案二: 现在可以直接在图形化界面中设置,

开机自启无限弹窗-开机自启的无限弹窗程序肿么关闭?

问题描述 开机自启的无限弹窗程序肿么关闭? 自己编的开机自启无限弹窗程序关不了,肿么关呢?可以加我QQ463823030,谢谢了. 解决方案 最简单快捷请重装系统