ITDB系统搭建及实时备份
ITDB系统搭建及实时备份
ITDB简介
ITDB一款来自希腊的开源IT资产管理系统,它是基于Web的IT资产信息管理系统。对于那些IT设备较多而又缺少管理IT资产信息工具的公司,ITDB是一个不错的选择,ITDB经过三年的开发、更新无论从功能还是界面都是一个成熟的产品了。
官方地址:http://www.sivann.gr/software/itdb/
ITDB资产管理系统搭建
1.安装环境
操作系统:CentOS7_X86_64
IP:192.168.0.119
Sqlite版本:

2.安装httpd以及php以及php-pdo(php操作数据库的工具,默认的sqlite已经安装)
#yum install httpd php php-pdo -y
3.确保httpd开机启动
#systemctl enable httpd.service
4.启动httpd
#systemctl start httpd.service
5.验证httpd和php正常工作
在服务器/var/www/html目录下新建一个test.php文件,内容为:
<?php
echo phpinfo();
?>
终端浏览器输入192.168.0.119/test.php

如果出现类似上图,则安装正常。
6.下载压缩包
登录官网:http://www.sivann.gr/software/itdb/,下载合适的版本,本文档使用的是itdb-1.23.zip ,下载完成上传到服务器。
7.解压文件并拷贝到web服务器根目录
#unzip itdb-1.23.zip
然后拷贝解压后的文件到/var/www/html目录下:
#cp -r itdb-1.23/* /var/www/html/
进入/var/www/html,重命名数据库:
#cp data/pure.db data/itdb.db
添加相关权限:
#chown apache itdb.db
#chmod u+w itdb.db
#chown apache /var/www/html/data/files/
# chmod u+w /var/www/html/data/files/
#systemctl restart httpd.service
8.在浏览器输入服务器IP
看到如下页面:

即可输入用户名admin密码admin登录系统,至此ITDB系统部署完成。
ITDB资产管理系统实时备份
选择一台服务器作为备份,存放备份的文件
以下操作在备份服务器(192.168.88.8)上进行:
1.安装rsync
#yum install rsync -y
2.手动添加rsync用户,此用户是用来运行rysnc daemon进程的
#useradd rsync -s /sbin/nologin
3.创建rsync daemon工作模式的模块目录
#mkdir -p /backup/itdb
4.修改目录属主属组
#chown rsync.rsync /backup/itdb
5.修改rsync配置文件/etc/rsyncd.conf ,以下为一个配置文件案例
uid = rsync
gid = rsync
use chroot = no
max connections = 50
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
# exclude = lost+found/
# transfer logging = yes
timeout = 300
# ignore nonreadable = yes
# dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2
# [ftp]
# path = /home/ftp
# comment = ftp export area
#
[itdb]
path = /backup/itdb/
read only = false
list = false
host allow = 192.168.0.0/24
host deny = 0.0.0.0/32
auth_users = rsync_backup
secrets file = /etc/rsync.password
这个配置文件主要修改:
Ø uid,gid为rsync,是修改运行rsync daemon的账号
Ø 修改use chroot改为no
Ø 修改timeout超时时间
Ø [itdb] 识别ID,后面的同步需要用到,
Ø Path 后面是同步目录,会把文件同步到这个目录中
Ø Read only = false 是否只读
Ø host allow = 192.168.64.0/18 允许哪个网段同步
Ø host deny = 0.0.0.0/32 其他网段不允许同步
Ø Auth_users = rsync_backup 用来同步的用户
Ø Secrets file =/etc/rsync.password 用来同步的用户以及密码,需要创建此文件
6.创建同步用户密码文件
#vi /etc/rsync.password
rsync_backup:leesir
rsync_backup是同步用户,leesir是密码
7.设置密码文件读取权限
#chmod 600 /etc/rsync.password
8 第八步启动rsync 守护进程
#rsync --daemon
9 第九步查看873端口是否监听
#netstat -tnlp
tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN 19568/rsync
看到873端口监听,则已经正常工作。
以下操作在itdb服务器进行:
1.查看当前系统是否支持inotify
#ll /proc/sys/fs/inotify/
总用量 0
-rw-r--r-- 1 root root 0 4月 22 14:56 max_queued_events
-rw-r--r-- 1 root root 0 4月 22 14:56 max_user_instances
-rw-r--r-- 1 root root 0 4月 22 14:56 max_user_watches
显示这三个文件则证明支持。
2.安装编译及下载以及同步需要的安装包
#yum install wget gcc gcc-c++ make rsync -y
3.下载inotify源码包并编译安装
#wget http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz -P /opt
#cd /opt && tar xvf inotify-tools-3.14.tar.gz
#cd /opt/inotify-tools-3.14/ && ./configure --prefix=/usr/local/inotify
#make && make install
4.增加同步用户密码文件/etc/rsync.password
leesir
这里只需要密码,不需要写用户
5.编写监控监本,监控文件变动信息,实时同步到备份服务器,itdb系统使用的数据库是sqlite3,数据全部存储在itdb.db文件里面,只要同步好这个文件就可以了,itdb.db一般在/var/www/html/data目录下,所以同步此目录就可以。
下面是一个同步例子/opt/inotify_itdb.sh
#!/bin/bash
#para
host01=192.168.88.80
src=/var/www/html/data
dst=itdb
user=rsync_backup
rsync_passfile=/etc/rsync.password
inotify_home=/usr/local/inotify
#judge
if [ ! -e "$src" ] \
|| [ ! -e "${rsync_passfile}" ] \
|| [ ! -e "${inotify_home}/bin/inotifywait" ] \
|| [ ! -e "/usr/bin/rsync" ];
then
echo "Check File and Folder"
exit 9
fi
${inotify_home}/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e close_write,delete,create,attrib $src \
| while read file
do
# rsync -avzP --delete --timeout=100 --password-file=${rsync_passfile} $src $user@$host01::$dst >/dev/null 2>&1
cd $src && rsync -aruz -R --delete ./ --timeout=100 $user@$host01::$dst --password-file=${rsync_passfile} >/dev/null 2>&1
done
exit 0
解释:
host01是备份服务器IP地址,根据实际情况修改
src是需要同步的目录,目录中所有文件都将实时同步到备份服务器
dst是备份服务器的识别ID,对应上文备份服务器设置,就是/backup/itdb目录
User是同步用户
rsync_passfile是同步用户密码文件
inotify_home是inotify源码安装的家目录
下面脚本的意思是任何改动影响到/var/www/html/data目录下文件内容的,都会立马同步到备份服务器
6.后台运行脚本
#bash /opt/inotify_itdb.sh &
7.在itdb网页修改或增加内容,然后到备份服务器ls -l查看文件的时间,可以发现,文件已经同步了
8.如果有需要(恢复),可以在itdb的网页找到导入—》选择文件,选择备份的itdb.db文件,就可以恢复到最新的状态

ITDB系统搭建及实时备份的更多相关文章
- 通过rsync搭建一个远程备份系统(二)
Rsync+inotify实时备份数据 rsync在同步数据的时候,需要扫描所有文件后进行对比,然后进行差量传输,如果文件达到了百万或者千万级别以上是,扫描文件的时间也很长,而如果只有少量的文件变更了 ...
- 性能测试五十:Jmeter+Influxdb+Grafana实时数据展示系统搭建
如果用生成jtl文件再分析结果的方式的话,每一次请求就会往jtl里面写一条数据,在进行长时间的稳定性测试的时候,特别是当TPS很高的时候,写入的数据会非常的大,这个时候等稳定性测试完成,再对jtl进行 ...
- 搭建rsync+inotify实现实时备份
一.环境搭建说明 系统环境 CentOS7.5 备份节点 主机名:backup01 IP地址:172.16.2.41 数据节点 主机名:nfs-master IP地址:172.16.2.31 二.在备 ...
- 部署web01,web02,nfs,db01,backup,搭建wordpress,WeCenter,实现共享,热备,实时备份
小结 部署web01,web02,nfs,db01,backup,搭建wordpress,WeCenter,实现共享,热备,实时备份 1)在web01和web02上安装nginx和php 2)创建ww ...
- 快速搭建ELK7.5版本的日志分析系统--搭建篇
title: 快速搭建ELK7.5版本的日志分析系统--搭建篇 一.ELK安装部署 官网地址:https://www.elastic.co/cn/ 官网权威指南:https://www.elastic ...
- 通过rsync+inotify实现数据的实时备份
我讲到过利用rsync实现数据的镜像和备份,但是要实现数据的实时备份,单独靠rsync还不能实现,本文就讲述下如何实现数据的实时备份. 一.rsync的优点与不足 与传统的cp.tar备份方式相比,r ...
- Windows7 64位系统搭建Cocos2d-x-2.2.1最新版以及Android交叉编译环境(详细教程)
Windows7 64位系统搭建Cocos2d-x-2.2.1最新版以及Android交叉编译环境(详细教程) 声明:本教程在参考了以下博文,并经过自己的摸索后实际操作得出,本教程系本人原创,由于升级 ...
- 【web】 亿级Web系统搭建——单机到分布式集群
当一个Web系统从日访问量10万逐步增长到1000万,甚至超过1亿的过程中,Web系统承受的压力会越来越大,在这个过程中,我们会遇到很多的问题.为了解决这些性能压力带来问题,我们需要在Web系统架 ...
- [转]亿级Web系统搭建:单机到分布式集群
当一个Web系统从日访问量10万逐步增长到1000万,甚至超过1亿的过程中,Web系统承受的压力会越来越大,在这个过程中,我们会遇到很多的问题.为了解决这些性能压力带来问题,我们需要在Web系统架构层 ...
随机推荐
- MLP 之手写数字识别
0. 前言 前面我们利用 LR 模型实现了手写数字识别,但是效果并不好(不到 93% 的正确率). LR 模型从本质上来说还只是一个线性的分类器,只不过在线性变化之后加入了非线性单调递增 sigmoi ...
- ckfinder在IE10,IE9中的弹出框不能选择,或者不能上传解决方法
在IE9,或IE10中ckfinder在IE10,IE9中的弹出框不能选择,或者不能上传解决方法 把弹出框嵌入到jquery dialog中.可以解决 I did: // javascript f ...
- 图灵机器人聊天api
图灵机器人,功能非常强大,可用于聊天.查询等多个领域 图灵机器人官网:http://www.tuling123.com api地址:http://www.tuling123.com/openapi/a ...
- delphi VCL研究之消息分发机制-delphi高手突破读书笔记
1.VCL 概貌 先看一下VCL类图的主要分支,如图4.1所示.在图中可以看到,TObject是VCL的祖先类,这也是Object Pascal语言所规定的.但实际上,TObject以及TObject ...
- 【架构】Nginx如何设置X-Request-ID请求头,记录请求时间:毫秒?
Nginx is awesome, but it’s missing some common features. For instance, a common thing to add to acce ...
- MySQL数据库如何与EXCEL的XLS格式相互转换
1 将SQL导出为EXCEL方法,有如下数据库(my_impa),里面有两张表 2 如果是EXCEL格式,一定要勾选"将字段名称放在首行",否则待会儿导入的时候就需要你手工新建字段 ...
- ITFriend创业阶段的server环境搭建手冊
创业阶段,进一步实践了Linux环境搭建和维护,以下是一些经常使用软件的搭建步骤和參考资料,仅供自己和诸位參考. 我个人还是比較倾向"一站式Web开发"的.自己想做点事.须要太多的 ...
- webDriver API——第5部分Special Keys
The Keys implementation. class selenium.webdriver.common.keys.Keys Bases: object Set of special keys ...
- Executor / Executors / ExecutorService /
Java SE5的java.util.concurrent包中的执行器(Executor)将为你管理Thread对象,从而简化了并发编程.Executor在客户端和执行任务之间提供了一个间接层,Exe ...
- WebBrowser.ExecWB
CreateTime--2017年9月22日16:30:10 Author:Marydon js操作浏览器的ExecWB命令 一.准备工作: 以ie浏览器为例,需要更改IE安全级别为:" ...