先把20台服务器的ssh登陆语句写进一个文本文件中host_name.txt,确保有一台机器可以通其他的19台服务器。
ssh跳转格式这样写:ssh 用户名@ip
#!/bin/bashcheck_sev()
{
ssh_ip=$1
$ssh_ip<<!
vmstat 1 10
iostat 1 10
exit
!
echo
}
echo `date "+%D"`>>check_host.log
while read line
do
echo "---------------------------------">>check_host.log
echo "$line date '+%F %T'">>check_host.log
check_sev $line>>check_host.log
done<host_name.txt
将上面的脚本放在一个主机上,用crontab提交每日任务,
30 10 * * * 上面脚本的目录地址
将以上内容写进xx.cron中,crontab xx.cron 提交就是每天的10:30运行你上面的检查脚本。
具体crontab的用户你可以百度。
====================================================================
第一个脚本本人纯手打,并没有试,还有不少漏洞,你可以自行修改,比如你这个放脚本的服务器必须能无密码ssh登陆其他19个主机,脚本最好加上错误日志记录,防止某些错误导致脚本异常终止。你可以多调试几遍,有问题的在一起交流。
运维工程师必须掌握的基础技能有:基础命令、基础服务、自动化技能、安全。
这个基础就包括:用户管理命令,文件管理命令,权限管理命令,软件包管理命令,vim命令,网络管理命令等。这些命令好学,因为每个命令都有相应的help帮助文档,而且很多网站都集成了命令帮助,把这些站点进行收藏,时不时的查下就记住了。
2、基础服务:
企业常用的基础服务就包括DHCP,NTP,DNS,Nginx,Apache,Mysql,Redis,Vsftpd,Nfs。基础服务的掌握,相比命令稍微的难一点,但是同样有很多技巧。比如可以去各大视频站获取优质的免费视频学习。
3、自动化技能:
这个自动化就包括脚本自动化,需要熟悉掌握shell脚本或者Python脚本;包括监控自动化,不能靠传统的点击页面,查看进程来判断服务是否在线,需要熟悉掌握zabbix,Prometheus等主流监控软件;还包括工具自动化,需要掌握向ansible,puppet,Jenkins等自动化软件,实现服务的批量部署与业务的自动化。
4、安全:
作为运维工程师,首先就要时刻保障公司业务系统,服务器安全稳定运行。所以安全至关重要,主流的iptables,firewalld防火墙技术要熟练掌握,有必要的话常见的挖矿病毒,ddos等攻击有段也要有所了解。
运维工程师(Operations),负责维护并确保整个服务的高可用性,同时不断优化系统架构提升部署效率、优化资源利用率提高整体的ROI。
运维工程师面对的最大挑战是大规模集群的管理问题,如何管理好几十万台服务器上的服务,同时保障服务的高可用性,是运维工程师面临的最大挑战。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)