首页 > 其他分享 >监控keepalived_vip控制容器的状态

监控keepalived_vip控制容器的状态

时间:2023-08-11 09:47:11浏览次数:42  
标签:容器 grep beat keepalived vip docker

需求:监控server服务器的vip状态,如果vip存在,则判断容器是否启动,如果没有启动,则启动容器。如果vip不存在则关闭容器。

方法一:

方法一
 #!/bin/bash
ip add | grep eth0 > /data/keepalived
cat /data/keepalived | grep ${yunguan_svc_vip.ip} &> /dev/null
if [ $? -eq 0 ]; then
		docker ps -a | grep beat | grep Up &> /dev/null
		if [ $? -ne 0 ]; then
			docker restart beat &> /dev/null
	        else
			echo "beat is running" &> /dev/null
		fi
else
		docker stop beat &> /dev/null
fi

方法二:

方法二

#!/bin/bash
vip=`ip a|grep ${yunguan_svc_vip.ip}|awk -F "/" '{print\$1}'|awk '{print\$2}'`
VALUE=`docker ps|grep beat`

if [ ! -z "$vip" ]; then
        if [ -z "$VALUE" ]; 
            then
                        docker start beat && sleep 10
        fi
else 
      docker stop beat

fi

验证:

在svc1机器上测试;
1、keepalived启动状态,vip存在,停止beat容器,执行脚本。
结果:beat容器重新启动。

2、keepalived关闭状态,启动beat容器,执行脚本。
结果:beat容器停止。

加入计划任务:

####将keepalived.sh脚本放到/data/目录
####每小时执行一次脚本

echo "0 * * * * sh /data/keepalived.sh" >> /var/spool/cron/root

标签:容器,grep,beat,keepalived,vip,docker
From: https://www.cnblogs.com/lydongbk/p/17622215.html

相关文章

  • C++系列二:STL教程-容器+迭代器
    目录前言容器迭代器前言……。容器//容器种类 功能1.序列容器 主要包括vector、list、deque。元素在容器中的位置同元素的值无关,即容器不是排序的。将元素插入容器时,指定在什么位置,元素就会位于什么位置。2.排序容器 包括set、multiset、map、multimap。排序容......
  • Docker容器编排
    docker-composecompose安装Compose简介Compose是用于定义和运行多容器Docker应用程序的工具。通过Compose,您可以使用YML文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从YML文件配置中创建并启动所有服务。Compose使用的三个步骤:使用Dockerfile定义......
  • Nginx+keepalived主从双机热备自动切换解决方案
    Nginx+keepalived主从双机热备自动切换解决方案测试环境如下:系统:Ceentos6.464位主nginx服务器:192.168.122.5备nginx服务器:192.168.122.6VIP:192.168.122.15一、Nginx+keepalived安装—脚本安装#!/bin/bash#author:kuangl#mail:kuangl@orient-media.com#description:The......
  • 软件测试|docker ps命令 管理和监视容器的利器
    简介Docker是一种流行的容器化平台,用于构建、分发和运行应用程序。Docker提供了许多命令行工具,其中之一是dockerps命令。本文将深入介绍dockerps命令,解释其用途、参数和功能,以及如何使用该命令来管理和监视运行中的Docker容器。dockerps在Docker中,容器是运行应用程序的独立环境......
  • 软件测试|深入解析Docker Run命令:创建和启动容器的完全指南
    简介Docker是一种流行的容器化平台,用于构建、分发和运行应用程序。其中一个最基本且重要的Docker命令是dockerrun,用于创建和启动容器。本文将详细解析dockerrun命令的用途、参数和示例,帮助您全面掌握创建和启动容器的过程。dockerrun在Docker中,容器是运行应用程序的独立环境。do......
  • 安装docker容器
    写在前面之前写过一篇关于docker安装的博客,那种方式安装有很多缺点。运行docker和使用docker的时候会产生多个进程,占用Linux主机的资源。于是,我找到了新的方式安装docker。重要的三个文件/usr/lib/systemd/system/docker.service/usr/lib/systemd/system/docker.socket/usr......
  • docker容器的使用
    删除docker容器dockerrmmysql批量删除已经停止的容器#方法一#显示所有的容器,过滤出Exited状态的容器,取出这些容器的ID,sudodockerps-a|grepExited|awk'{print$1}'#查询所有的容器,过滤出Exited状态的容器,列出容器ID,删除这些容器sudodockerrm`dockerps-a|g......
  • docker 删除已停止的容器
    docker删除已停止的容器根据容器的状态,删除Exited状态的容器#根据容器的状态,删除Exited状态的容器sudodockerrm$(sudodockerps-qfstatus=exited)删除所有未运行的容器(已经运行的删除不了,未运行的就一起被删除了)sudodockerrm$(sudodockerps-a-q)查询所有......
  • 【通知】有三个人指导以及VIP星球6月份之后升级,你的专属AI顾问了解一下
    文/编辑|言有三所以对于有长期需求的朋友,有三提供有偿个人技术指导,这就是有三AIVIP会员(我们正在打算设计实体卡),这样既能够让有刚需的朋友得到指导,又可以省去我很多麻烦。谁需要VIP指导这里介绍的是言有三本人提供的针对个人的VIP指导,主要面向以下人群。(1) 需要不定期技术支......
  • keepalived 邮件通知无法发送邮件问题解决【亲测有效,没有效果来找我】
    环境keepalivedkeepalived-2.2.7操作系统cenos7安装方式源码编译安装问题最近在安装keepalived高可用服务,环境是安装完了,但是我想要使用邮件通知这个功能,通过网上捞针怎么也不成功,真是绝绝子,折磨我1天多。终于在刚刚得到了解决办法解决在vrrp_instance自定义的名字中添加......