红联Linux门户
Linux帮助

一种不错的使用cacti的方法-dockered cacti

发布时间:2017-08-07 09:49:36来源:linux网站作者:安装怪
ubuntu17.04提供了安装后的cacti 0.8.8h,但同时提供的php7与cacti喜欢的php5.7有冲突。需要修改cacti源码(cmd.php FIXME)才能保证cacti部分工作。
现在将我使用的一种不错的cacti方法说出来。
使用Docker安装cacti最新版本cacti1.1.12
 
方法如下,在ubuntu16.04下,
1.(optional) 克隆 https://github.com/scline/docker-cacti.git
git clone https://github.com/scline/docker-cacti.git
 
2.编写一个docker-compose.xml
参考 https://github.com/scline/docker-cacti/tree/master/docker-compose
时区改一下呵,时区修改参考FIXME
TZ=Asia/Shanghai
 
3.运行 docker-compose up -d
在docker-compose.xml同目录,运行,目的是下载cacti,并安装MySQL,并将二者关联起来。
 
4.经过步骤3此时cacti已经运行起来,按照传统cacti安装步骤,通过http服务访问cacti,进行安装。例如http://**:80(80为docker中指定端口)
 
5.经过步骤4后可以正常运行cacti,其他都可以用docker来对容器进行维护。
 
例如,向cacti里放入脚本文件
docker cp test.pl 2345:/cacti/scripts/   (其中2345是docker容器实例id,/cacti/scripts/是cacti运行目录)
在cacti里执行测试
docker exec 2345 /bin/bash 进入交互模式
2345> snmpwalk ...执行snmpwalk脚本测试
 
此方法的优点:
1]使用docker,与宿主机无关,因而对宿主机操作系统,php等版本无要求(最好是centos7,因centos6不太支持docker)
2]半小时内完成搭建和测试(只是从网上拖文件)
 
附件1
参考 https://github.com/scline/docker-cacti/tree/master/docker-compose
docker-compose.yml
###############
version: '2'
services:
cacti:
image: "smcline06/cacti"
ports:
- "80:80"
- "443:443"
environment:
- DB_NAME=cacti_master
- DB_USER=cactiuser
- DB_PASS=cactipassword
- DB_HOST=db
- DB_PORT=3306
- DB_ROOT_PASS=rootpassword
- INITIALIZE_DB=1
- TZ=America/Los_Angeles
links:
- db
db:
image: "percona:5.7.14"
ports:
- "3306:3306"
command:
- mysqld
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_unicode_ci
- --max_connections=200
- --max_heap_table_size=128M
- --max_allowed_packet=32M
- --tmp_table_size=128M
- --join_buffer_size=128M
- --innodb_buffer_pool_size=1G
- --innodb_doublewrite=OFF
- --innodb_flush_log_at_timeout=3
- --innodb_read_io_threads=32
- --innodb_write_io_threads=16
environment:
- MYSQL_ROOT_PASSWORD=rootpassword
- TZ=America/Los_Angeles
 
本文永久更新地址:http://www.linuxdiyf.com/linux/32250.html