zoukankan      html  css  js  c++  java
  • MySQL 如何使用 PV 和 PVC?【转】

    本节演示如何为 MySQL 数据库提供持久化存储,步骤为:

    1. 创建 PV 和 PVC。

    2. 部署 MySQL。

    3. 向 MySQL 添加数据。

    4. 模拟节点宕机故障,Kubernetes 将 MySQL 自动迁移到其他节点。

    5. 验证数据一致性。

    首先创建 PV 和 PVC,配置如下:

    mysql-pv.yml

    mysql-pvc.yml

    创建 mysql-pv 和 mysql-pvc

    接下来部署 MySQL,配置文件如下:

    PVC mysql-pvc Bound 的 PV mysql-pv 将被 mount 到 MySQL 的数据目录 var/lib/mysql

    MySQL 被部署到 k8s-node2,下面通过客户端访问 Service mysql

    kubectl run -it --rm --image=mysql:5.6 --restart=Never mysql-client -- mysql -h mysql -ppassword


    更新数据库:

    ① 切换到数据库 mysql。

    ② 创建数据库表 my_id。

    ③ 插入一条数据。

    ④ 确认数据已经写入。

    关闭 k8s-node2,模拟节点宕机故障。

    一段时间后,Kubernetes 将 MySQL 迁移到 k8s-node1

    验证数据的一致性:

    MySQL 服务恢复,数据也完好无损。

    小结

    本章我们讨论了 Kubernetes 如何管理存储资源。

    emptyDir 和 hostPath 类型的 Volume 很方便,但可持久性不强,Kubernetes 支持多种外部存储系统的 Volume。

    PV 和 PVC 分离了管理员和普通用户的职责,更适合生产环境。我们还学习了如何通过 StorageClass 实现更高效的动态供给。

    最后,我们演示了如何在 MySQL 中使用 PersistentVolume 实现数据持久性。

  • 相关阅读:
    实例:如何设计一款好的Metro UI应用
    给用户和开发者最佳的.Net框架部署方案
    软件测试对嵌入式系统的影响
    如何创造出优秀的用户体验?
    Xamarin:使用C#移植Android操作系统
    WCF数据服务5.0 RTM发布
    演进式数据库建模
    zsh 命令行编辑技巧三则
    Oracle与MySQL的几点区别
    window下mysql表的修复
  • 原文地址:https://www.cnblogs.com/twobrother/p/11114445.html
Copyright © 2011-2022 走看看