磁盘规划
CBackup的备库和快照信息都是存放在zfs文件系统或LVM上的,所以在使用前必须规划好zfs或LVM的磁盘空间:
- zp01 存放数据库备库,备份,快照等信息。强烈建议使用ssd等快速设备。
- arch 存放归档文件空间,可以使用机械硬盘慢速设备
- redo 存放redo空间,建议使用快速设备,比如ssd等设备
1.创建zpool zp01
这里的sdb 是通过raid卡做好的raid5磁盘
[root@cdutest opt]zpool create zp01 /dev/sdb
[root@cdutest opt]/sbin/modprobe zfs
[root@cdutest opt]zfs set dedup=on zp01
[root@cdutest opt]zfs set atime=off zp01
[root@cdutest opt]zfs set recordsize=8k zp01
[root@cdutest opt]zfs create zp01/lxcroot
2.创建redo,arch
这里使用lvm的方式,用户可以使用其他方式
[root@cdutest opt]pvcreate /dev/sdc
[root@cdutest opt]vgcreate vgredo /dev/sdc
[root@cdutest opt]lvcreate -L 500G -n lvredo vgredo
[root@cdutest opt]pvcreate /dev/sdd`
[root@cdutest opt]vgcreate vgarch /dev/sdd
[root@cdutest opt]lvcreate -L 1000G -n lvarch vgarch
[root@cdutest opt]mkfs.xfs -f -i size=512 -l size=128m,lazy-count=1 -d agcount=16 -L redo /dev/vgredo/lvredo
[root@cdutest opt]mkfs.xfs -f -i size=512 -l size=128m,lazy-count=1 -d agcount=16 -L arch /dev/vgarch/lvarch
[root@cdutest opt]mkdir /redo /arch
[root@cdutest opt]mount /dev/vgredo/lvredo /redo
[root@cdutest opt]mount /dev/vgarch/lvarch /arch
把这个挂载文件系统放到/etc/fstab中:
LABEL=redo /redo xfs defaults 0 0
LABEL=arch /arch xfs defaults 0 0
3.导入备库容器模板
中启乘数科技已经做好PG,Oracle各种主流版本的容器模板。生产库需要什么版本的数据库,就导入对应版本的容器。容器会集成好操作系统数据库环境。当对生产库做备库的时候,CBackup会根据模板容器clone生成对应的容器,也就是我们的备库环境
[root@cdutest opt]zfs receive zp01/lxcroot/tpl_os_oracle11.2.0.4 < /mnt/zfs_template/tpl_os_oracle11.2.0.4@base
[root@cdutest opt]zfs receive zp01/lxcroot/tpl_os_pg12.4 < /mnt/zfs_template/tpl_os_pg12.4@base
因为镜像的 LXC 安装路径与模板的不一致所以需要对模板进行修改,否则会报错:
--报错如下
[root@cbu01 opt]# lxc-ls -f
Failed to load config for pri_111_pg12.5
Failed to load config for tpl_os_pg12.4
--解决如下:
ln -s /usr/share/lxc/ /usr/local/share/
echo "lxc.lxcpath=/zp01/lxcroot" >> /etc/lxc/lxc.conf
echo "lxc.bdev.zfs.root=zp01/lxcroot" >> /etc/lxc/lxc.conf
目录