• 容器化 | 在 NFS 备份恢复 RadonDB MySQL 集群数据


    社区于上个月发布了 RadonDB MySQL Kubernetes v2.2.0,集群数据备份恢复的存储类型除了 S3,新增 NFS 存储。本文将为您演示如何进行 NFS 备份及恢复操作。

    环境准备

    • Kubernetes 集群
    • RadonDB MySQL 集群

    过程略,详细请回顾《快速实现 MySQL 高可用集群部署》。

    安装 NFS 服务与资源

    方法一:使用 Helm 安装

    helm install demo charts/mysql-operator  --set nfsBackup.installServer=true  --set nfsBackup.volume.createLocalPV=true
    
    • 1

    或者手动创建 PVC,再执行

    helm install demo charts/mysql-operator  --set nfsBackup.installServer=true  --set nfsBackup.volume.specifiedPVC=XXXX
    
    • 1

    用该方法,可以在安装 Operator 时,也将 NFS 服务的 Pod 和 Service 安装到集群中。

    方法二:使用 kubectl 安装

    kubectl apply -f config/samples/nfs_pv.yaml 
    kubectl apply -f config/samples/nfs_server.yaml
    
    • 1
    • 2

    获取 nfsServerAddress

    例如:

    kubectl get svc nfs-server --template={{.spec.clusterIP}}
    10.98.253.82
    
    • 1
    • 2

    获取到 ClusterIP,即可以使用该地址进行 NFS 备份。这里 IP 地址为 10.96.253.82

    创建 NFS 备份

    配置 NFS 服务的地址

    # 文件 config/samples/mysql_v1alpha1_backup.yaml
    nfsServerAddress: "10.96.253.82"
    
    • 1
    • 2

    创建备份

    kubectl apply -f config/samples/mysql_v1alpha1_backup.yaml
    
    • 1

    注意:备份自定义资源与 MySQL 集群自定义资源必须在同一个命名空间中。

    验证备份

    使用如下命令,可以发现名称格式为 _ 的备份文件夹。

    kubectl exec -it  -- ls /exports
    # 显示结果
    index.html  initbackup  sample_2022419101946
    
    • 1
    • 2
    • 3

    备份恢复

    从已有的 NFS 备份文件中恢复集群。配置 mysql_v1alpha1_cluster.yaml,将 nfsServerAddress 设置为 NFS 服务的地址。

    ...
    restoreFrom: "sample_2022419101946"
    nfsServerAddress: 10.96.253.82
    
    • 1
    • 2
    • 3

    注意:restoreFrom 是备份路径的名称,可以从 NFS 服务加载的路径中看到。然后从 NFS 备份副本恢复集群,如下:

    kubectl apply -f config/samples/mysql_v1alpha1_cluster.yaml
    
    • 1

    恢复完成,已经从名为 sample_2022419101946 的 NFS 备份中恢复一个集群。

  • 相关阅读:
    Azure Data Factory(十二)传参调用 Azure Function
    02.Spring Boot入门案例
    leetcode: 410. 分割数组的最大值
    牛市源码定制,抖音矩阵系统源头开发,here
    密码学承诺之原理和应用 - Kate多项式承诺
    AndroidApp学习笔记
    Cannot find a valid baseurl for repo: HDP-3.1-repo-1
    标准中文电码查询易语言代码
    计算机网络基本知识(八):域名、IP地址简介及分类
    【Linux】软件管理yum | 编辑器vim | vim插件安装
  • 原文地址:https://blog.csdn.net/RadonDB/article/details/126161339