AWS EC2监控

一、项目背景

1、项目背景

       由于项目采用微服架构,从云服务定制化程度来看,利用AWS提供的基础性架构EC2比较合适。AWS自带了CloudWatch具有监听EC2功能,但是出现宕机或者达到预警阀值,需要提供发邮件或短信报警功能,需要购买CloudWatch收费项目。项目采用Docker Swarm架构,曾经自己搭建过通过Haproxy+Keepalived方式,通过反向代理来实现负载均衡功能。实际测试,发现在AWS VPC环境下,跟利用AWS ELB负载均衡器,网络吞吐量相比,AWS ELB性能更优。所以用AWS ELB作为微服的负载均衡器。

      服务虽然部署了,对服务的监控也很重要,对Docker Swarm管理,可以利用portainer管理工具。具体怎么安装使用参照其官网安装说明:https://portainer.io/install.html

     对Docker Swarm服务监控,可以采用swarmprom。swarmprom利用Grafana开源版本制作的Docker镜像,能够实现Docker Swarm集群机器大部分功能。如节点CPU,内存,IOPS,容器内存占用使用情况等。

     但是,swarmprom并没有提供针对单个节点,挂载的磁盘使用空间情况的监控。所以针对这种情况,自己写了一个Python脚本程序来监控每个节点,挂载的磁盘使用空间情况,挂载的磁盘超过设定的阀值,就会发送告警邮件通知。

二、Docker Swarm集群节点服务监控

1、安装swarmprom

$ git clone https://github.com/stefanprodan/swarmprom.git

2、配置通过Email发送告警信息

$ vi docker-compose.yml

在第60行左右,配置SMTP邮件信息,具体修改grafana服务参照如下:

   grafana:
    image: stefanprodan/swarmprom-grafana:5.0.1
    networks:
      - net
    environment:
      - GF_SECURITY_ADMIN_USER=${ADMIN_USER:-admin}
      - GF_SECURITY_ADMIN_PASSWORD=${ADMIN_PASSWORD:-admin}
      - GF_USERS_ALLOW_SIGN_UP=false
      #- GF_SERVER_ROOT_URL=${GF_SERVER_ROOT_URL:-localhost}
      - GF_SMTP_ENABLED=${GF_SMTP_ENABLED:-false}
      - GF_SMTP_FROM_ADDRESS=${GF_SMTP_FROM_ADDRESS:-grafana@test.com}
      - GF_SMTP_FROM_NAME=${GF_SMTP_FROM_NAME:-Grafana}
      - GF_SMTP_HOST=${GF_SMTP_HOST:-smtp:25}
      - GF_SMTP_USER=${GF_SMTP_USER}
      - GF_SMTP_PASSWORD=${GF_SMTP_PASSWORD}
    volumes:
      - grafana:/var/lib/grafana
    deploy:
      mode: replicated
      replicas: 1
      placement:
        constraints:
          - node.role == manager
      resources:
        limits:
          memory: 128M
        reservations:
          memory: 64M

3、编辑swarm.sh脚本

$ vi swarmprom.sh

我这里配置的是GMail邮箱,具体修改内容如下:

$ cat sw

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值