51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

【V3/V2】JumpServer 存储目录迁移

1 问题描述 {#1-%E9%97%AE%E9%A2%98%E6%8F%8F%E8%BF%B0}

本文主要介绍 JumpServer 环境中存储目录空间占用率过高后,如何迁移到新的磁盘说明。


问题现象如下:当前根目录磁盘占用率为 92%,需要进行目录迁移(注:如遇磁盘占用率 100% 的情况,造成服务器操作卡顿,可以删除无用软件包或录像来减缓卡顿现象)

df -hT  # 查看磁盘占用率命令
Filesystem              Type      Size  Used Avail Use% Mounted on
/dev/mapper/centos-root xfs        97G   90G   24G  92% /
devtmpfs                devtmpfs  7.8G     0  7.8G   0% /dev
tmpfs                   tmpfs     7.8G     0  7.8G   0% /dev/shm
tmpfs                   tmpfs     7.8G  818M  7.0G  11% /run
tmpfs                   tmpfs     7.8G     0  7.8G   0% /sys/fs/cgroup
/dev/sda1               xfs      1014M  145M  870M  15% /boot
tmpfs                   tmpfs     1.6G     0  1.6G   0% /run/user/0
overlay                 overlay    97G   90G   24G  92% /var/lib/docker/overlay2/d24a7ab1b7470d1d9a6f7f9528fa60e42c02ac400b34488887884cd66008e92e/merged
overlay                 overlay    97G   90G   24G  92% /var/lib/docker/overlay2/d9727428c862dc305de00cf18158c93dbe2851bb0298aba45258a3b8663d044f/merged
overlay                 overlay    97G   90G   24G  92% /var/lib/docker/overlay2/52f5d1cbfbfd32afbde04dc5d79ba6f33474ea8c7d813dad375b7a41fc6ba603/merged
overlay                 overlay    97G   90G   24G  92% /var/lib/docker/overlay2/43c142e913e883c53e6a614c50ef16096dfbca98318c3a42bac3cab5812ae78f/merged
overlay                 overlay    97G   90G   24G  92% /var/lib/docker/overlay2/dd96148abd067ae4edcd415f5abf710b76556f9a57c5e8b31a7296d68e2e9e23/merged
overlay                 overlay    97G   90G   24G  92% /var/lib/docker/overlay2/b63b09a1c125ce9a7f9cce0228fd060fbc68807984de9e3c3a6cb3030ae851bc/merged
overlay                 overlay    97G   90G   24G  92% /var/lib/docker/overlay2/6583defb810d2568d193daf971e6e4804bac084fa9ff6e03aac6eacc7f5fff87/merged
overlay                 overlay    97G   90G   24G  92% /var/lib/docker/overlay2/4f98bf55e3c4e874628597bdcf0be8d3c348b9feb33ebec754a88435cb145eda/merged
overlay                 overlay    97G   90G   24G  92% /var/lib/docker/overlay2/bb960b7c9b807926d56fa3fcaa67d187b5312c35e2a35328a5c0ead3e4bc7b8b/merged

2 操作步骤 {#2-%E6%93%8D%E4%BD%9C%E6%AD%A5%E9%AA%A4}

2.1 准备工作 {#2.1-%E5%87%86%E5%A4%87%E5%B7%A5%E4%BD%9C}

  1. 根据实际情况对环境做数据备份操作。

    • 录像文件默认路径:/data/jumpserver/core/data/media (v2 版本为 /opt/jumpserver)

    • 数据库数据备份:操作命令 jmsctl backup_db

    • 配置文件路径:/opt/jumpserver/config/config.txt

  2. 当前环境各目录迁移位置如下:

| 目录类型 | 迁移前目录位置 | 迁移后目录位置 | |-----------------|------------------|------------------| | Docker 目录 | /var/lib/docker | /home/docker | | JumpServer 存储目录 | /data/jumpserver | /home/jumpserver |

2.2 迁移 Docker 存储目录 {#2.2-%E8%BF%81%E7%A7%BB-docker-%E5%AD%98%E5%82%A8%E7%9B%AE%E5%BD%95}

  1. 查看 Docker 存储位置。

    # 查看 Docker 存储位置
    docker info | grep "Docker Root Dir"
     Docker Root Dir: /var/lib/docker
    
  2. 停止 JumpServer 和 Docker 服务。

    # 停止 JumpServer 服务
    jmsctl down
    
    停止 Docker 服务
    ============
    
    
    `systemctl stop docker`
    
  3. 迁移 Docker 存储目录。

    # 当前从 /var/lib/docker目录迁移至 /home/docker目录
    # 这里建议使用 cp 命令,在确认迁移无误后再操作旧目录的删除,
    # 数据量大的情况,迁移过程需要耐心等待
    cp -r /var/lib/docker/* /home/docker/       #特别注意的是目录前结构,不要多复制了一层目录
    
  4. 确认数据是否迁移完成。

    # 对比新目录与旧目录数据占用大小是否相同
    # 旧目录数据大小
    du -sh /var/lib/docker
    19G    /var/lib/docker
    
    新目录数据大小
    =======
    
    
    `du -sh /home/docker
    19G    /home/docker`
    
  5. 修改 daemon.json 配置文件。

    # 备份 daemon.json 配置文件
    cp /etc/docker/daemon.json /etc/docker/daemon.json.bak
    
    编辑 daemon.json 配置文件
    ===================
    
    
    
    vim /etc/docker/daemon.json
    
    `{
    "data-root": "/home/docker",   # 修改该配置为 /home/docker
    "live-restore": true,
    "log-driver": "json-file",
    "log-opts": {
    "max-file": "3",
    "max-size": "10m"
    },
    "registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "http://f1361db2.m.daocloud.io"
    ]
    }`
    
  6. 修改 JumpServer 配置文件。

    # 备份 config.txt 配置文件
    cp /opt/jumpserver/config/config.txt /opt/jumpserver/config/config.txt.bak
    
    编辑 config.txt 配置文件
    ==================
    
    
    `vi /opt/jumpserver/config/config.txt
    DOCKER_DIR=/home/docker  # 修改该配置为 /home/docker ,没有该参数可以则自行添加`
    
  7. 启动 Docker 服务,确认 Docker 存储位置是否为新目录。

    # 启动 Docker 服务
    systemctl start docker
    
    查看 Docker 存储位置
    ==============
    
    
    `docker info | grep "Docker Root Dir"
    Docker Root Dir: /home/docker`
    
  8. Docker 目录迁移完成,可启动 JumpServer 服务。

    # 启动 JumpServer 服务
    jmsctl start
    
    查看 JumpServer 服务状态
    ==================
    
    
    `jmsctl status`
    
  9. 确认 Docker 新迁移可正常使用后,删除 Docker 旧目录。

    # 删除 Docker 旧目录
    rm -rf /var/lib/docker
    

2.3 迁移 JumpServer 存储目录 {#2.3-%E8%BF%81%E7%A7%BB-jumpserver-%E5%AD%98%E5%82%A8%E7%9B%AE%E5%BD%95}

  1. 停止 JumpServer 服务。

    # 停止 JumpServer 服务
    jmsctl down
    
  2. 迁移 JumpServer 存储目录。

    # 当前从 /opt/jumpserver目录迁移至 /home/jumpserver目录
    # 这里建议使用 cp 命令,在确认迁移无误后再操作旧目录的删除
    # 数据量大的情况,迁移过程需要耐心等待
    cp -r /data/jumpserver/* /home/jumpserver/    
    
  3. 确认数据是否迁移完成。

    # 对比新目录与旧目录数据占用大小是否相同
    # 旧目录数据大小
    du -sh /data/jumpserver
    921M    /data/jumpserver
    
    新目录数据大小
    =======
    
    
    `du -sh /home/jumpserver
    921M    /home/jumpserver`
    
  4. 修改 JumpServer 配置文件。

    # 备份 config.txt 配置文件
    cp /opt/jumpserver/config/config.txt /opt/jumpserver/config/config.txt.bak
    
    编辑 config.txt 配置文件
    ==================
    
    
    `vi /opt/jumpserver/config/config.txt
    VOLUME_DIR=/home/jumpserver  # 修改该配置为 /home/jumpserver ,没有该参数可以则自行添加`
    
  5. JumpServer 存储目录迁移完成,启动服务。

    # 启动 JumpServer 服务
    jmsctl start
    
    查看 JumpServer 服务状态
    ==================
    
    
    `jmsctl status`
    
  6. 确认 JumpServer 页面访问、录像播放等功能正常使用后,可以删除 JumpServer 旧目录。

    # 删除 JumpServer 旧目录
    rm -rf /data/jumpserver
    

赞(0)
未经允许不得转载:工具盒子 » 【V3/V2】JumpServer 存储目录迁移