文档章节

Cabot Alert Mysql环境搭建

cdsc
 cdsc
发布于 2017/07/22 18:56
字数 670
阅读 22
收藏 0

Cabot简介

Cabot is a free, open-source, self-hosted infrastructure monitoring platform that provides some of the best features of PagerDuty, Server Density, Pingdom and Nagios without their cost and complexity. (Nagios, I'm mainly looking at you.)

It provides a web interface that allows you to monitor services (e.g. "Stage Redis server", "Production ElasticSearch cluster") and send telephone, sms or hipchat/email alerts to your on-duty team if those services start misbehaving or go down - all without writing a line of code. Best of all, you can use data that you're already pushing to Graphite/statsd to generate alerts, rather than implementing and maintaining a whole new system of data collectors. 官网

Cabot环境搭建

初始化mysql数据库

$ mysql -u root -p -e "CREATE USER cabot@localhost IDENTIFIED BY 'cabot'";
$ mysql -u root -p -e "CREATE DATABASE cabot";
$ mysql -u root -p -e "GRANT ALL PRIVILEGES ON \`cabot\`.* TO \`cabot\`@localhost";

下载cabot

$ git clone https://github.com/arachnys/cabot.git

安装依赖软件

$ sudo yum install ruby
$ sudo gem install foreman
$ sudo pip install fabric
$ sudo yum install python-devel
$ sudo yum install openldap-devel
$ sudo pip install -r requirements.txt 
$ sudo pip install -r requirements-plugins.txt 
$ sudo pip install -r requirements-dev.txt
$ sudo pip install MySQL-python
$ sudo yum install nodejs
$ sudo npm install -g less
$ sudo npm install -g coffee-script

修改配置文件

$ cp production.env.example production.env
$ vi production.env

DEBUG=t
DATABASE_URL=mysql://cabot:cabot@localhost:3306/cabot
DJANGO_SETTINGS_MODULE=cabot.settings
LOG_FILE=log
PORT=5008

# Local time zone for this installation. Choices can be found here:
# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
TIME_ZONE=Asia/Shanghai

# Django settings
CELERY_BROKER_URL=redis://localhost:6379/1
DJANGO_SECRET_KEY=2FL6ORhHwr5eX34pP9mMugnIOd3jzVuT45f7w430Mt5PnEwbcJgma0q8zUXNZ68A

# Hostname of your Graphite server instance
GRAPHITE_API=http://*.*.*.*:12346/
GRAPHITE_USER=username
GRAPHITE_PASS=password

修改启动文件

$ vi .foreman

# vi: set ft=yaml :

procfile: Procfile
env: conf/production.env


$ vi gunicorn.conf

# -*- mode: python -*-
# vi: set ft=python :

import os

bind = '0.0.0.0:%s' % os.environ['PORT']
workers = 3

$ vi Procfile

web:       gunicorn cabot.wsgi:application --config gunicorn.conf
celery:    celery worker -B -A cabot --loglevel=INFO --concurrency=16 -Ofair
beat:      celery beat -A cabot --loglevel=INFO

初始化数据库

$ sh setup_dev.sh

安装redis

$ sudo yum install redis

使用supervisor管理redis

添加redis配置文件

$ sudo vi /etc/supervisord.d/redis.conf

[program:redis]
command=/usr/bin/redis-server
autorstart=true
autorestart=true
redirect_stderr=true
stopsignal=TERM
stdout_logfile=/var/log/redis.log
directory=/usr/bin

重新加载配置文件

$ sudo supervisorctl reload
$ sudo supervisorctl status
redis                            RUNNING   pid 17493, uptime 0:04:06

启动web程序

$ foreman start web

启动celery

foreman start celery

登录管理页面(第一次登录需要设置管理员账号)

http://localhost:5008

使用supervisor管理Cabot,Celery进程

$ sudo vi /etc/supervisord.d/cabot.conf

[program:web]
command=foreman start web
autorstart=true
autorestart=true
redirect_stderr=true
stopsignal=TERM
stdout_logfile=/home/dengsc/app/cabot/log/web.log
directory=/home/dengsc/app/cabot

[program:celery]
command=foreman start celery
autorstart=true
autorestart=true
redirect_stderr=true
stopsignal=TERM
stdout_logfile=/home/dengsc/app/cabot/log/celery.log
directory=/home/dengsc/app/cabot

使用supervisor管理程序

sudo supervisorctl reload

some error

配置中设置DEBUG=False时报错,ValueError: Missing staticfiles manifest entry for 'bootstrap/css/bootstrap.css'

$ foreman run python manage.py collectstatic
$ foreman run python manage.py compress
$ sudo supervisorctl restart web

# 可能引起报错的语句
# settings.py
# if not DEBUG:
#    STATICFILES_STORAGE  = 'whitenoise.storage.CompressedManifestStaticFilesStorage'
#
# stackoverflow: https://stackoverflow.com/questions/44160666/valueerror-missing-staticfiles-manifest-entry-for-favicon-ico

最后上一张Cabot管理页面的截图

Cabot Server

到目前位置Cabot主题已搭建完毕,后面博客会讲一下开发自定义告警模块,目前我也还在钻研中。

© 著作权归作者所有

共有 人打赏支持
cdsc
粉丝 0
博文 11
码字总数 7395
作品 0
深圳
程序员
docker运行cabot

docker-compose dockerfile 运行 docker-compose up打开http://192.168.99.100:8080/admin/admin summary 依赖组件太多,另外没有配置了graphite没有生效,不能在ui进行配置,比较费劲,建议...

go4it
2016/09/25
6
0
CentOS6.x 下 LNMP环境搭建(一、安装 MySQL)

CentOS6.x 下 LNMP环境搭建(准备篇) CentOS6.x 下 LNMP环境搭建(一、安装 MySQL) CentOS6.x 下 LNMP环境搭建(二、安装 Nginx) CentOS6.x 下 LNMP环境搭建(三、安装 PHP) 1. 创建用户...

whoru
2016/09/27
117
0
Error 12154 received logging on to the standby

环境为 操作系统:AIX 6.1 oracle版本:11.2.0.3 (psu5) 本编记录了本人一次DG搭建失败的经历,只是一个小的错误,但却导致我排查了半天。记录本次经历用来警醒自己,作为一名dba任何时候我...

shaochenshuo
06/28
0
0
hive环境搭建

环境准备: hadoop环境搭建 安装mysql hive环境搭建 hadoop环境搭建参考:http://my.oschina.net/u/2311010/blog/508139 安装mysql 卸载自带的mysql rpm -qa | grep mysqlrpm -e mysql-libs...

super_yu
2016/02/28
368
0
从零开始完整搭建LNMP环境+WordPress部署

0.说明 内容会有点多,但是下面的内容都是自己在学习LNMP环境搭建过程中的完整再现,所以非常具有参考价值! 下面用一个以最小化方式(Minimal)安装的CentOS 6.5操作系统为例,演示LNMP环境...

xpleaf
2017/03/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

SSO单点登录PHP简单版

  前面做了一个新项目,需要用户资源可以需要共享。由于之前没有做过这样的东西,回家之后,立马网站百度“单点登录”。帖子很多,甄别之后,这里列几篇认为比较有营养。   http://blog...

slagga
27分钟前
1
0
Java 泛型详解-绝对是对泛型方法讲解最详细的,没有之一

对java的泛型特性的了解仅限于表面的浅浅一层,直到在学习设计模式时发现有不了解的用法,才想起详细的记录一下。 本文参考java 泛型详解、Java中的泛型方法、 java泛型详解 1 概述 泛型在j...

hensemlee
31分钟前
1
0
Annotation注解详细介绍

目录介绍 1.Annotation库的简单介绍 2.@Nullable和@NonNull 3.资源类型注释 4.类型定义注释 5.线程注释 6.RGB颜色纸注释 7.值范围注释 8.权限注释 9.重写函数注释 10.返回值注释 11.@Keep注释...

潇湘剑雨
33分钟前
1
0
一步步编写自己的PHP爬取代理IP项目(二)

这一章节我们正式开展我们的爬虫项目,首先我们先要知道哪个网站能获取到免费代理IP,目前比较火的有西刺代理,快代理等,这里我们拿西刺代理作为例子。 这里就是一个个免费的IP地址以及各自...

NateHuang
52分钟前
2
0
11-利用思维导图梳理JavaSE-Java的反射机制

11-利用思维导图梳理JavaSE-Java的反射机制 主要内容 1.反射与Class类 1.1.反射概念 1.2.Class类 1.3.实例化Class类 1.4.反射的作用 1.5.Class对象的作用 2.反射的深入应用 2.1.调用无参的成...

飞鱼说编程
58分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部