zoukankan      html  css  js  c++  java
  • 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版本:

    clip_image002

    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.验证httpdphp正常工作

    在服务器/var/www/html目录下新建一个test.php文件,内容为:

    <?php

    echo phpinfo();

    ?>

    终端浏览器输入192.168.0.119/test.php

    clip_image004

    如果出现类似上图,则安装正常。

    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

    看到如下页面:

    clip_image006

    即可输入用户名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文件,就可以恢复到最新的状态

    clip_image008

  • 相关阅读:
    洛谷1076 寻宝
    洛谷1349 广义斐波那契数列 【矩阵乘法】
    BZOJ1008 [HNOI2008]越狱
    vijosP1629 八
    vijosP1687 细菌总数
    vijosP1388 二叉树数
    怎么在windows上安装 ansible How to install ansible to my python at Windows
    阿里邮箱绑定Foxmail失败的解决办法
    Django html页面 'ascii' codec can't encode characters in position 8-10: ordinal not
    python2.X现在不能安装Django了:Collecting django Using cached Django-2.0.tar.gz
  • 原文地址:https://www.cnblogs.com/airoot/p/8930892.html
Copyright © 2011-2022 走看看