当前位置: 首页 > news >正文

ceph数据迁移数据迁移与bacula配置调整优化实战

#作者:猎人

文章目录

    • 1.1ceph数据迁移&&bacula配置调整
    • 1.2在备份服务器的ceph-client上mount cephfs文件系统
      • 1.2.1迁移数据
      • 1.2.2 调整bacula-sd配置
        • 1.2.2.1T机房
        • 1.2.2.2Y机房
        • 1.2.2.3调整bacula-dir配置

1.1ceph数据迁移&&bacula配置调整

为了规避因单个OSD利用率达90%而导致整个集群错误无法访问,ceph集群现已在原ceph块设备的基础上建立了cephfs文件系统用于存储数据,需要把原备份到块设备上的设备迁移到新建的cephfs上,迁移完毕后把ceph rbd回收,后续所有的备份数据直接写到cephfs。

  • rbd分配的指定空间满了之后需要新创建,cephpfs的空间可以横向扩容,也可以避免单个OSD引起集群故障

1.2在备份服务器的ceph-client上mount cephfs文件系统

  • T机房(1xx.xxx.xxx.x3):ceph-fuse -m 1x.xxx.xx.x9:6789 -r /tt_bacula /cephfs/
  • Y机房(1x.xxx.xx.x1):ceph-fuse -m 1x.xxx.xx.51:6789 /cephfs/

1.2.1迁移数据

  • T:/data1/d0*/下的数全部数据迁移到/cephfs/tt/backup_d0*/
  • Y:/data1/d0*/下的数全部数据迁移到/cephfs/yz/backup_d0*/
    特别注意:在做数据恢复的时候需要把数据还原到原/data1/backup_disk0*/下才能恢复数据

1.2.2 调整bacula-sd配置

1.2.2.1T机房

bacula-sd.conf中添加7个Device F8/9/10/11/12/13/14分别指向/cephfs/tt/下的7个目录
bacula-sd.conf新加配置如下:

Autochanger {
  Name = F8
  Device = F8-Dev1, F8-Dev2
  Changer Command = ""
  Changer Device = /dev/null
}
Device {
  Name = F-Dev1
  Media Type = File8
  Archive Device = /cephfs/tt/backup_d3/
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 10
}
Device {
  Name = F8-Dev2
  Media Type = File8
  Archive Device = /cephfs/tt/backup_d3/
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 10
}

Autochanger {
  Name = F9
  Device = F9-Dev1, F9-Dev2
  Changer Command = ""
  Changer Device = /dev/null
}
Device {
  Name = F9-Dev1
  Media Type = File9
  Archive Device = /cephfs/tt/backup_d1/
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 10
}
Device {
  Name = F9-Dev2
  Media Type = File9
  Archive Device = /cephfs/tt/backup_d1/
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 10
}

Autochanger {
  Name = F10
  Device = F10-Dev1, F10-Dev2
  Changer Command = ""
  Changer Device = /dev/null
}
Device {
  Name = F10-Dev1
  Media Type = File10
  Archive Device = /cephfs/tt/backup_d2/
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 10
}
Device {
  Name = F10-Dev2
  Media Type = File10
  Archive Device = /cephfs/tt/backup_d2/
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 10
}

Autochanger {
  Name = F11
  Device = F11-Dev1, F11-Dev2
  Changer Command = ""
  Changer Device = /dev/null
}
Device {
  Name = F11-Dev1
  Media Type = File11
  Archive Device = /cephfs/tt/backup_d4/
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 10
}
Device {
  Name = F11-Dev2
  Media Type = File11
  Archive Device = /cephfs/tt/backup_d4/
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 10
}

Autochanger {
  Name = F12
  Device = F12-Dev1, F12-Dev2
  Changer Command = ""
  Changer Device = /dev/null
}
Device {
  Name = F12-Dev1
  Media Type = File12
  Archive Device = /cephfs/tt/backup_d5/
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 10
}
Device {
  Name = F12-Dev2
  Media Type = File12
  Archive Device = /cephfs/tt/backup_d5/
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 10
}

Autochanger {
  Name = F13
  Device = F13-Dev1, F13-Dev2
  Changer Command = ""
  Changer Device = /dev/null
}
Device {
  Name = F13-Dev1
  Media Type = File13
  Archive Device = /cephfs/tt/backup_d6/
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 10
}
Device {
  Name = F13-Dev2
  Media Type = File13
  Archive Device = /cephfs/tt/backup_d6/
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 10
}

Autochanger {
  Name = F14
  Device = F14-Dev1, F14-Dev2
  Changer Command = ""
  Changer Device = /dev/null
}
Device {
  Name = F14-Dev1
  Media Type = File14
  Archive Device = /cephfs/tt/backup_d7/
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 10
}
Device {
  Name = F14-Dev2
  Media Type = File14
  Archive Device = /cephfs/tt/backup_d7/
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 10
}
1.2.2.2Y机房

bacula-sd.conf中添加1个Device F3分别指向/cephfs/yz/目录
bacula-sd.conf新加配置如下:

Autochanger {
  Name = F3
  Device = F3-Dev1, F3-Dev2
  Changer Command = ""
  Changer Device = /dev/null
}

Device {
  Name = F3-Dev1
  Media Type = File3
  Archive Device = /cephfs/yz
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 5
}

Device {
  Name = F3-Dev2
  Media Type = File3
  Archive Device = /cephfs/yz
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 5
}
1.2.2.3调整bacula-dir配置
  1. 把前面新添加的7个SD加到bacula-dir.conf中
  2. T机房:把原来Job中的 Storage 都换成对应新建的Storage,例如原Storage = tt-7(/data1/backup_d7/)替换成现在Storage = tt-14(/cephfs/tt/backup_d7/)
  3. Y机房:把原来Job中的 Storage 都换成对应新建的Storage = yz-3(亦庄把yz-1和yz-2在此做一个合并,合并到yz-3)
    bacula-dir.conf新加配置如下:
Storage {
  Maximum Concurrent Jobs = 10
  Name = tt-8
  SDPort = 9103
  Address = xxxxxxxx
  Device = F8
  Password = "TFDk"
  Media Type = File8
}
Storage {
  Maximum Concurrent Jobs = 10
  Name = tt-9
  SDPort = 9103
  Address = xxxxxxxx
  Device = F9
  Password = "TFDk"
  Media Type = File9
}
Storage {
  Maximum Concurrent Jobs = 10
  Name = tt-10
  SDPort = 9103
  Address = xxxxxxxx
  Device = F10
  Password = "TFDk"
  Media Type = File10
}
Storage {
  Maximum Concurrent Jobs = 10
  Name = tt-11
  SDPort = 9103
  Address = xxxxxxxx
  Device = F11
  Password = "TFDk"
  Media Type = File11
}
Storage {
  Maximum Concurrent Jobs = 10
  Name = tt-12
  SDPort = 9103
  Address = xxxxxxxx
  Device = F12
  Password = "TFDk"
  Media Type = File12
}
Storage {
  Maximum Concurrent Jobs = 10
  Name = tt-13
  SDPort = 9103
  Address = xxxxxxxx
  Device = F13
  Password = "TFDk"
  Media Type = File13
}
Storage {
  Maximum Concurrent Jobs = 10
  Name = tt-14
  SDPort = 9103
  Address = xxxxxxxx
  Device = F14
  Password = "TFDk"
  Media Type = File14
}
Storage {
  Maximum Concurrent Jobs = 10
  Name = yz-3
  SDPort = 9103
  Address = xxx
  Device = F3
  Password = "TFDk"
  Media Type = File3
}

相关文章:

  • 做网站哪家公司最好天津放心站内优化seo
  • 网站建设 图片问题西安网站建设公司十强
  • 上海网站建设hxwlkj万能搜索网站
  • 湖北网站推广宣传影响seo排名的因素
  • 我的世界服务器赞助网站怎么做网络推广工作能长久吗
  • 做竞价网站访问突然变少广州seo网络营销培训
  • WindTerm快速更改主密码
  • Nextjs15 实战 - React Notes 项目初始化
  • Java学习总结-字符流
  • 通过案例初步认识机器学习
  • Linux 基础入门操作 第九章 进程之间通讯信号量 2
  • Scala(五)
  • 【Anaconda环境绑定指南】3步将自定义环境注入Jupyter Notebook 内核 | 附详细命令与演示
  • [Redis]Redis学习开篇概述
  • Linux 容器环境磁盘空间不足问题及解决方案
  • 最新源支付V7开源1.9.9版
  • 零基础使用AI从0到1开发一个微信小程序
  • KisFlow-Golang流式实时计算案例(四)-KisFlow在消息队列MQ中的应用
  • 讲解机器学习中的 K-均值聚类算法及其优缺点
  • 哈希表+前缀和+滑动窗口高效查找——蓝桥杯例题
  • 【算法】反转单向链表 链表和数组的区分 时间复杂度
  • 野指针成因及避免方法
  • 制造OA系统怎么选?有没有简单易用的?
  • Android Fresco 框架编解码模块源码深度剖析(三)
  • 数据结构与算法面试题精讲)C++版——day4
  • day20 学习笔记