当前位置: 首页 > news >正文

地区网站建设品牌营销包括哪些内容

地区网站建设,品牌营销包括哪些内容,建网站的公司广州,扬州工程招标网关于实现对docker容器监控以及自动恢复,这里介绍两种实现方案。 方案1: 实现思路: 找到(根据正则表达式)所有待监控的docker容器,此处筛选逻辑根据docker运行状态找到已停止(Exit)类…

关于实现对docker容器监控以及自动恢复,这里介绍两种实现方案。

方案1:

实现思路
找到(根据正则表达式)所有待监控的docker容器,此处筛选逻辑根据docker运行状态找到已停止(Exit)类型的容器

代码清单1:

#!/bin/bash# 获取时间信息,格式为:"年-月-日T时:分:秒"
ctime1=`date +%Y-%m-%dT%k:%M:%S`echo "--------------------------------------------------- Script start at : $ctime1 "# 正则表达式匹配所有已biz-aaa/biz-bbb/biz-ccc开头,且以":v9"结尾的镜像名,结果中排除容器"container_to_be_excluded",获取位于索引为18位置上的docker名称
#set1=($(sudo docker ps -a | grep -E "biz-(aaa|bbb|ccc).*:v9" | grep -v ' container_to_be_excluded' | awk '{print $18}'))# 正则表达式匹配所有已biz-aaa/biz-bbb/biz-ccc开头,且以":v9"结尾的镜像名,且进一步过滤出已停止的容器(status = "Exit"),此时其docker名位于索引为16的位置处
set1=($(sudo docker ps -a | grep -E "biz-(aaa|bbb|ccc).*:v9" | grep "Exit" | awk '{print $16}'))# 获取数组长度
set1_size=${#set1[@]}# A).判断数组长度是否为0,注意数字的判断请使用:
##  -eq : 相等
##  -ne : 不同
# B).如果判断字符串,则为:
##  =   : 相等
##  !=  : 不同
if [[ $set1_size -eq 0 ]]; thenecho ">>>> All business docker processes are health!"
else echo ">>>> Some business docker processes are not health, will be restarted!"sleep 60;# 迭代数组,可以使用${set1[@]},或${set1[?]}# for循环如果一行搞定,可以这样使用: for i in ${set1[@]};do ${CODE_LOGICAL}; donefor i in ${set1[@]};do echo ">>>>>>>> Docker instance - $i will be restarted right now"echo ">>>>>>>> Will execute command : docker restart $i"docker restart $i# Wait some time for resource to be releasedsleep 30# Re-check if docker process is upset2=($(sudo docker ps -a | grep $i | grep "Exit" | awk '{print $16}'))set2_size=${#set2[@]}if (( set2_size != 0 )); then docker restart $ifidonefictime2=`date +%Y-%m-%dT%k:%M:%S`
echo "--------------------------------------------------- Script end   at : $ctime2 "

方案2:

实现思路
找到(根据正则表达式)所有待监控的docker容器,"docker ps -a"匹配出所有需要监控的容器列表,"docker ps"匹配出当前存活的容器列表,差集即为有问题需要重启的容器

代码清单2:

#!/bin/bashset1=($(sudo docker ps -a | grep -E "biz-(aaa|bbb|ccc).*:v9" | grep -v ' container_to_be_excluded' | awk '{print $18}'))
set2=($(sudo docker ps | grep -E "biz-(aaa|bbb|ccc).*:v9" | grep -v ' container_to_be_excluded' | awk '{print $18}'))set1_size=${#set1[@]}
set2_size=${#set2[@]}# Sort sets
printf "%s\n" "${set1[@]}" | sort > set1_sorted.txt
printf "%s\n" "${set2[@]}" | sort > set2_sorted.txtdifference=($(comm -23 set1_sorted.txt set2_sorted.txt))if [[ $set1_size -eq $set2_size ]]; thenecho ">>>> All business docker processes are health!"
else echo ">>>> Some business docker processes are not health, will be restarted!"for i in ${difference[@]};do echo ">>>>>>>> Docker instance - $i will be restarted right now"docker restart $i#echo "-------------------------" $idonefirm -f set1_sorted.txt set2_sorted.txt

配置crontab调度,实现简单定时调度

crontab -e : 编辑crontab
查看已配置的crontab:crontab -l

*/10 * * * * /aaa/bbb/my_docker_ha.sh >> /aaa/bbb/logs/my_docker_ha.log 2>&1
http://www.cadmedia.cn/news/9685.html

相关文章:

  • 贵阳好的网站建设2000元代理微信朋友圈广告
  • 沈阳关键词搜索排名天津百度关键词seo
  • 国内卡一卡二卡三网站视频黄页网站推广公司
  • 网站建设服务合同交印花税吗百度竞价被换着ip点击
  • 昌平做网站的公司关键词优化精灵
  • wordpress 全景图插件江西网络推广seo
  • 中国建设厅网站首页百度官网入口链接
  • 微网站开发平台免费网站优化一年多少钱
  • 韩文网站建设企业邮箱登录入口
  • 怎么自己做游戏软件seo网络推广外包公司
  • 服务商登封搜索引擎优化
  • 网站建设网站公司哪家好统计工具
  • 中国互联网数据平台官网seo引擎优化平台培训
  • 重庆建站公司官网seo助理
  • 上海网站建设网页营销技巧和营销方法
  • 江西商城网站建设网站建设平台哪家好
  • 沈阳市城乡建设局网站惠州网站营销推广
  • 海报素材网重庆seo优
  • 曲阜网站建设哪家便宜西安seo优化培训
  • 企业网站建设源码+微信+手机成免费的crm
  • 南通优普高端网站建设今天刚刚的最新新闻
  • 网页设计素材有两种分别是什么抖音seo优化软件
  • 超市网站建设策划书互联网产品推广是做什么的
  • 毕业设计网站源码百度视频推广
  • 建筑行业真的凉了吗搜狗seo
  • 温州网站建设团队seo公司推荐
  • ps免费模板网站淄博网站seo
  • 旅游景点网站优化排名易下拉软件
  • 天河网站建设企业成都新站软件快速排名
  • 河北中瑞建设集团有限公司网站营销网站建设大概费用