网络设备自动备份
admin
2023-01-22 03:25:58
0次

参考链接:https://github.com/ytti/oxidized
测试环境:CentOS Linux release 7.3.1611 (Core)
主要组件:oxidized oxidized-script oxidized-web
注意:oxidized-web需要ruby2.3以上支持,如不安装oxidized-web,配置文件里rest 修改为false

安装依赖组件
  • yum 源修改:本测试环境为办公网测试机,需要修改yum源,通常建议修改为公司线上或测试环境yum源(可找业务运维帮忙倒出上传到/etc/yum.repos.d)
    yum install make cmake which sqlite-devel openssl-devel libssh3-devel ruby gcc ruby-devel libicu-devel gcc-c++
    安装ruby

    centos7默认ruby为2.0版本,需要单独安装。
    yum install centos-release-scl
    yum-config-manager --enable rhel-server-rhscl-7-rpms
    yum install -y rh-ruby25-ruby-devel
    yum install rh-ruby25
    scl enable rh-ruby25 bash
    ruby -v
    ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-linux]
    cp /opt/rh/rh-ruby25/root/usr/lib64/libruby.so.2.5 /usr/lib/
    设置登录时自动启动ruby2.5:
    vim /etc/profile.d/rh-ruby25.sh
    #!/bin/bash
    source /opt/rh/rh-ruby25/enable
    export X_SCLS="scl enable rh-ruby25 'echo $X_SCLS'"
    export PATH=$PATH:/opt/rh/rh-ruby25/root/usr/local/bin

    安装oxidized

    gem install oxidized
    gem install oxidized-script oxidized-web
    useradd -m -d /home/oxidized oxidized
    cp /opt/rh/rh-ruby25/root/usr/local/share/gems/gems/oxidized-0.24.0/extra/oxidized.service /lib/systemd/system
    mkdir -p /home/oxidized/.config/oxidized
    mkdir /home/oxidized/.config/oxidized/logs/
    mkdir /home/oxidized/.config/oxidized/configs
    chown oxidized:oxidized /home/oxidized/.config/oxidized

    config 文件

    username: username
    password: password
    model: junos
    interval: 3600
    log: /home/oxidized/.config/oxidized/logs/oxidized.log
    debug: false
    threads: 30
    timeout: 20
    retries: 3
    prompt: !ruby/regexp /^([\w.@-]+[#>]\s?)$/
    rest: 127.0.0.1:8888
    next_adds_job: false
    vars: {}
    groups: {}
    models: {}
    pid: "/home/oxidized/.config/oxidized/pid"
    input:
    default: ssh, telnet
    debug: false
    ssh:
    secure: false
    output:
    default: file
    file:
    directory: "/home/oxidized/.config/oxidized/configs"
    source:
    default: csv
    csv:
    file: "/home/oxidized/.config/oxidized/router.db"
    delimiter: !ruby/regexp /:/
    map:
    name: 0
    model: 1
    username: 2
    password: 3
    gpg: false
    model_map:
    cisco: ios
    juniper: junos

    router.db 文件

    vim home/oxidized/.config/oxidized/router.db
    172.18.31.11:comware:user:passwd

    启动服务

    systemctl restart oxidized.service
    systemctl status oxidized.service
    至此,自动备份基础功能已完成,可在目录里查看备份的配置文件,接下来配置可用web页面查看比较直观。

    安装nginx

yum install nginx
vim /etc/nginx/conf.d/oxidized.conf
cat /etc/nginx/conf.d/oxidized.conf

server {
listen 80;
server_name 172.18.34.45;
location / {
proxy_pass http://127.0.0.1:8888/;
}

access_log /var/log/nginx/access_oxidized.log;
error_log /var/log/nginx/error_oxidized.log;
}
systemctl restart nginx.service

  • 浏览器打开:http://172.18.34.45/nodes
  • Actions 下有3个图标,第一个点开可看到配置文件。
  • 第二个versions可查看每个版本的配置差异。(需要git支持,安装步骤见下文)
  • 第三个为强制备份。
    默认显示时间不对,需要修改以下配置文件。
    vim /opt/rh/rh-ruby25/root/usr/local/share/gems/gems/oxidized-web-0.11.1/lib/oxidized/web/public/scripts/oxidized.js
    git 安装

    yum -y install git
    yum install libgit2
    git config user.name Oxidized
    git config user.email “o@example.com”

    修改配置文件为git输出

    systemctl restart oxidized.service
    systemctl status oxidized.service
    通过区域按钮可查看每个版本配置差异。

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...