Linux 下使用 Monit 实现服务挂掉自动拉起

Linux 下使用 Monit 实现服务挂掉自动拉起,第1张

由于应用稳定性或者服务器资源限制等问题,应用就会出现自动挂掉的情况,此时就需要自动拉起应用。

生产环境,为了防止因为意外宕机造成服务长时间中断,一般都会设置服务进程监控拉起机制。

Monit 是 Unix 系统上的服务监控工具。可以用来监控和管理进程、程序、文件、目录和设备等。

优点

缺点

命令格式: monit [options]+ [command]

yum 安装后的默认配置文件如下:

全局参数配置文件 : /etc/monitrc

服务监控配置文件目录:/etc/monit.d

日志文件: /var/log/monit.log

web 控制台地址:http://10.0.0.2:2812/

主页面:

监控运行信息:

系统监控信息:

进程监控信息:

根据机架的不同,拿下服务器的方式也不一样。一般导轨会有一个卡扣, 在导轨左右两侧,向里按压在向上抬服务器就可以了,您可以试一下。

联想服务器的导轨和IBM的是一样的,完全拉出服务器,按压导轨足有两侧的锁扣向上抬起服务器即可。

使用IBM Power系列处理器的System p服务器统称为“小型机”,是区别于X86构架的System X系列服务器的一种称呼。不要以为这个系列的服务器名称中带一个“小”字就小看了他的性能,要知道基于X86构架的计算机设备是被成为“微型机”的。Power处理器区别于Intel至强、AMD皓龙的根本性指标是前者运行精简指令集,而后两者运行复杂指令集,相比之下Power效率更高,并发处理能力更强。采用IBM Power处理器的服务器运行基于UNIX开发的操作系统AIX,一般应用于网络基础构架的后端数据库访问控制或者高性能科学计算领域。

说说我以前最常用的三种批量部署方案(有疑问接受私信):

第一:服务器一般都会用两块磁盘做RAID1作为系统盘,手动安装完第一台操作系统,RAID1的功能是两块盘中具有相等的数据,所以两块盘都存在了刚刚安装好的linux系统,拔出一块系统盘(服务器认为你这块盘坏了),再插入一块新盘到刚刚拔出磁盘的位置,此时服务器会再次向新磁盘自动同步数据,保持1:1备份。接下来刚刚拔出的那块系统盘派上用场,把刚刚扒出来的那块有系统的盘插到另外一台无系统的服务器上,自动完成与另外一块盘的同步,以此类推,1生2,2生4,4生8,8生16,16生32

第二种:刻录无人值守光盘

第三种:PXE批量部署

PXE实例:

我3年前做过一套PXE部署系统(以下是当时用于机房部署系统的截图界面)。可以部署windows+linux的各个版本,部署服务器采用的windows系统(因为windows能通过easybcd制作syslinux引导),syslinux就可以成功引导起win和linux,引导成功后,调用kickstart制作的linux无人应答文件,wds &AKT制作的windows无人应答文件,完成系统安装。你的需求只需要安装统一的linux版本,所以相对来说比较容易,花两天学习下kickstart基本就能在虚拟机上实践成功,但是如果要应用到物理服务器,还需要考虑驱动,raid,格式化等问题

解决办法当然是PXE+Kickstart了,学会一次就能一直用很方便。

你需要准备:

1、交换机,用于连接Server和客户机(必须临时关闭DHCP)

2、部署用server主机(由此台主机接管DHCP服务)

3、其他一堆客户机(需要调节至PXE引导模式)

然后按照教程

https://andyx.net/pxe_kickstart_automatic_deployment_of_linux_system/对Server

主机进行部署PXE+Kickstart,完成之后客户端开机即可自动安装。

没有部署同时过100多台,但是曾经部署26台ECS集群,支撑1500左右tps。部署的方案是:阿里云ECS+镜像+弹性伸缩+负载均衡。开发测试环境用的是Vagrant直接控制多台虚拟机,曾经也使用过VMware ESXi和VMware VCenter管理虚拟机集群

腾讯有个蓝鲸平台,只需要录入你的服务器ip就可以批量操作。

还有一个ansible的来源运维工具。

还可以通过pexpect脚本,自己用python结合ssh搭建一个运维平台。

如果是批量买机器的话,各个云厂商都提供有接口,写个简单都shell就可以了。

阿里云前天刚发布的,叫什么servicefee,忘了,可视化部署,一键拉起,可设置拉起顺序,定时弹性容灾,服务之间的调用可视化,其他数据也是可监控

会 python 和 shell 可以搞搞 fabric ,我在用,还不错!

看你部署应用还是系统,平台是什么。

系统简单,做个模板机,复制就行了。

应用也不麻烦,跟上边的一样做个镜像就行,或者用批量管理工具ansible salt 这类的工具。云服务器的话,镜像市场也有公用的。

ansible,puppet和chef是常用的自动化运维工具。你说的需求用这三个都能做

1.部署操作系统,制作系统模板,批量创建或调用api接口即可

2.部署应用软件,可使用自动化工具如ansible或者编写脚本来批量部署

linux有类似ghost那样的克隆工具,推荐clonezilla。ghost for Linux也可以。

另外,Linux下的dd命令可以完成一个源驱动器对目标驱动器的镜像操作。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/472155.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-06-06
下一篇2023-06-06

发表评论

登录后才能评论

评论列表(0条)

    保存