1 Proxmox Backup Server(pbs)介绍
Proxmox Backup Server(pbs)是与pve配套的备份解决方案,用于备份和恢复虚拟机、容器和物理主机。通过支持增量、完全重复数据删除的备份,Proxmox Backup Server(pbs)显着降低了网络负载并节省了宝贵的存储空间。凭借强大的加密和确保数据完整性的方法,确保数据安全。提供web界面,可以极其方便的管理备份文件。
2 环境介绍
2.1 软件版本
本次部署采用当前最新版本:Proxmox Backup Server 1.1-1,可根据当时情况选择最新版本。
2.2 服务器配置
服务器采用一台利旧服务器
型号 | 配置 | 数量 |
---|---|---|
HP ProLiant DL580 G7 | CPU:Intel Xeon CPU E7- 4807 @ 1.87GHz 内存:16GB SSD:800GB 1块 HDD:1.2TB 3块 |
1 |
3 软件获取
访问官网下载ISO镜像文件,根据需要选择版本:
https://www.proxmox.com/en/downloads/category/iso-images-pbs
4 磁盘规划
本案例中采用1块800G SSD作为系统盘,3块 1.2TB HDD作为数据盘使用。
3块数据盘组成RAID0。
5 网络规划
由于备份流量较大,不能备份流量与业务流量放在同一网络中,建议将备份网络与管理网络合并部署或单独规划备份网络。
5.1 物理网络拓扑
此处将pbs服务器部署在管理网络vlan 1当中。
6 pbs安装
- 选择第一个,安装”pbs“
- 同意协议
- 选择系统盘
- 配置国家、地区
- 配置密码、邮箱
如果为生产环境务必配置为强口令。邮箱建议配置为真实邮箱
- 配置网卡、主机名、IP地址、DNS等信息,配置到第一块网卡
- 检查无误后点击安装
- 等待安装过程
- 安装成功
- 安装结束后重启,通过浏览器访问,出现以下页面证明安装成功。
地址:https://你的IP地址:8007
用户名:root
密码:为安装时配置的密码。
域:选择Linux PAM
7 更换软件源
由于自带的软件源速度较慢,此处选择科大源:http://mirrors.ustc.edu.cn
涉及的软件源有三个,分别为debain、pbs、ceph,需要分别修改下列文件。
名称 | source文件路径 |
---|---|
debain | /etc/apt/sources.list |
pbs | /etc/apt/sources.list.d/pbs-enterprise.list |
- 操作流程:
- 通过web管理页面中的shell或ssh登录后台。
- 更换debian源:
vi /etc/apt/sources.list
- 删除默认的源,替换为:
deb http://mirrors.ustc.edu.cn/debian/ buster main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian/ buster main contrib non-free
deb http://mirrors.ustc.edu.cn/debian/ buster-updates main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian/ buster-updates main contrib non-free
deb http://mirrors.ustc.edu.cn/debian-security/ buster/updates main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian-security/ buster/updates main contrib non-free
- 更换pbs源为非订阅源:
- 备份默认源:
mv /etc/apt/sources.list.d/pbs-enterprise.list /root
- 创建pve-no-subscription.list文件:
vi /etc/apt/sources.list.d/pbs-no-subscription.list
- 增加以下内容:
deb http://mirrors.ustc.edu.cn/proxmox/debian/pbs buster pbs-no-subscription
- 更新软件列表
apt update
8. 更新pvs至最新版本
根据实际需求决定是否更新为最新版本(建议更新)。
也可以在shell中输入命令:
apt update #更新软件列表
apt upgrade #更新软件包
输入Y确认安装更新。
9 基础配置
9.1 安装vim
apt install vim
9.2 配置ntp服务
- 配置统一的时钟源
如果有条件建议在内网部署一台ntp服务器,所有节点与内网ntp同步时钟。
如果没有内网NTP服务器,可以采用下列NTP服务器。
阿里云:ntp.aliyun.com
国家授时中心:ntp.ntsc.ac.cn
- 将NTP取消注释,填写ntp服务器地址。
vim /etc/systemd/timesyncd.conf
3. 配置完成后重启时间服务
systemctl restart systemd-timesyncd
10 pbs网络配置
- 打开”配置” – “网络/时间”选项卡。
- 编辑enp4s0f0,将其中”IP”、”网关”删除,点击确定。
网卡名称根据实际情况。
- 创建bond0
本案例bond为主备模式,如需配置LACP模式请参考:PVE集群搭建:Proxmox VE+ceph+物理网络超融合生产环境部署案例。
点击创建Linux Bond。
名称:bond0
IPv4:按需
网关:按需
slaves:enp4s0f0 enp4s0f1,网卡名称根据实际情况。
模式:active-backup
bond-primary:enp4s0f0,网卡名称根据实际情况。
按以上参数配置,然后点击OK。
- 应用配置
如果感觉配置有问题可以点击还原按钮,还原为配置前状态。
如果没有问题,点击应用配置使配置生效。
网络配置不正确可能会导致无法管理节点,应用配置前请确认配置正确,如果出现无法管理的情况需要进入shell手动修改配置。
11 磁盘初始化(硬件RAID或ZFS)
两种方式二选一即可,如果服务器有RAID卡,就采用硬件RAID,如没有硬件RAID卡,就采用软件RAID。如下是配置方式,也可以采用自己的方式。
11.1 硬件RAID与ZFS RAID
- 常用模式:如果不考虑数据保护推荐采用RAID0,考虑数据保护推荐采用RAIDZ-1(RAID-5)。
硬件RAID | ZFS RAID | 最少需要硬盘数量 |
---|---|---|
raid-0 | raid-0 | 1 |
raid-1 | raid-1 | 2 |
raid-10 | raid-10 | 4 |
raid-5 | raidz-1 | 3 |
raid-6 | raidz-2 | 4 |
11.2 硬件RAID方式
- 在服务器RAID卡中配置磁盘,将磁盘按需组成RAID。
- 进入shell,将RAID磁盘格式化后,挂载到服务器目录下(如:/data)。
#假设RAID磁盘:sdk,挂载点:/data,文件系统:ext4
#创建挂载目录:
mkdir /data
#格式化磁盘:
mkfs.ext4 /dev/sdk
#挂载磁盘:
mount /dev/sdk /data/
#配置自动挂载:
vim /etc/fstab
#在/etc/fstab文件最后添加以下内容:
/dev/sdk /data ext4 defaults 0 0
- 添加数据存储时选择相应挂载路径。
11.3 ZFS方式(软RAID)
- 适用于没有硬件RAID卡的情况。
- 可以使用web页面或shell命令创建,注意:raid0只能用shell创建。
- 注意:创建zfs时pool名称必须是字母开头,否则会创建失败。
11.3.1 web创建
按需选择RAID级别。
11.3.2 shell创建
#<pool>字段:替换为pool名称,<device*>:替换为成员磁盘的路径。
#raid-0:条带,最少需要一块硬盘。
zpool create -f -o ashift=12 <pool> <device1> <device2>
#raid-1:镜像,最少需要两块硬盘。
zpool create -f -o ashift=12 <pool> mirror <device1> <device2>
#raid-10:先镜像再条带,最少需要四块硬盘。
zpool create -f -o ashift=12 <pool> mirror <device1> <device2> mirror <device3> <device4>
#raidz-1:类似RAID5,最少需要三块硬盘。
zpool create -f -o ashift=12 <pool> raidz1 <device1> <device2> <device3>
#raidz-2:类似RAID6,最少需要四块硬盘。
zpool create -f -o ashift=12 <pool> raidz2 <device1> <device2> <device3> <device4>
11.4 添加数据存储
zfs配置成功后,会自动添加数据存储,看到数据存储下出现刚才创建的zfs池,说明配置成功。
12 pve与pbs对接配置
- 在pbs服务器shell中输入以下命令,复制“指纹”字段。
proxmox-backup-manager cert info
2. 在pve服务器以下位置点击添加,选择“Proxmox Backup Server”。
- 根据实际情况填写参数。
ID:服务器名称,按需填写。
服务器:填写pbs服务器IP地址。
用户名:填写root@pam
密码:按需
Datastore:填写pbs中数据存储的名称。
指纹:填写第一步中复制的指纹。
13 备份策略配置
- 在pve服务器以下位置点击添加。
- 根据实际情况填写参数。
存储:选择第12章添加的pbs服务器。
邮件、通知:按需
备份开始时间:按需
最下方选择需要备份的虚拟机即可。
14 ”精简/GC“策略配置
通过“精简/GC”配置,可以配置备份数据的保留时间,以及定期进行垃圾回收和精简,提高磁盘利用率。
下图配置的含义是:每周六凌晨5点进行垃圾回收,每周日5点进行精简,备份数据保留62天。
”精简/GC“模拟工具:使用这个工具可以直观看到策略的实际效果。
https://你的pbs服务器IP:8007/docs/prune-simulator/index.html
15 pbs日常维护
15.1 pbs日常维护
在数据存储“内容”选项卡中可以对备份文件进行验证、更改所有者、精简、删除等操作。
16 安全加固
16.1 配置公钥登录
- 生成密钥对
以xshell为例
- 生成密钥
- 设置名称及密码
设置密码为可选项,为保证密钥安全,建议设置。
- 将公钥复制至服务器”/root/.ssh/authorized_keys”文件中,选择”SSH2 – OpenSSH”格式。
vim /root/.ssh/authorized_keys
- 禁止ssh使用密码登录,禁止前先验证一下公钥方式能否登录。
#编辑sshd配置文件
vim /etc/ssh/sshd_config
#将下列配置添加到最后一行
PasswordAuthentication no
#重启sshd服务
systemctl restart sshd