我可以在 glusterfs 之上运行 mysqld 吗?

Ric*_*way 12 mysql mysql-replication glusterfs

我最近一直在玩 glusterfs。

我想尝试以类似的方式在 glusterfs 之上运行 mysqld ,因为可以在 DRBD 之上运行MySQL

我熟悉 MySQL 复制以及使用它代替这种方法的优势,我也知道 MongoDB 和其他 NoSQL 解决方案。

但是,如果我可以保留 MySQL 原样并复制底层文件系统,这将是我即将提出的一些特定项目的简单解决方案。

这是可能的,如果是的话,我在哪里可以找到方法?

Ric*_*way 17

由于相当长的延迟没有答案,我通过反复试验发现。

答案是:是的,我可以在 glusterfs 之上运行 mysqld。

我在 Ubuntu 上进行了设置,以下是步骤:

真正的问题在于 MySQL 如何处理锁。

但是,您可以将所有这些都传递给 glusterfs 进行处理,以便许多 mysqld 进程(在不同的节点上运行)可以访问 /mnt/glusterfs 上的相同数据库文件。您需要仔细阅读此内容

  • 这确实非常有趣!但是,为了记录,我强烈建议不要在您的数据很重要的任何情况下使用它。仅仅因为它似乎有效并不意味着它是安全的。您可能只是幸运,并没有遇到可能导致数据丢失的竞争条件。 (4认同)
  • 您看到了哪些性能问题? (2认同)
  • 您将一次使用 1 台服务器,对吗?我非常有信心它无法在多个服务器上工作。你将会丢失你的数据 (2认同)

小智 5

理论上可以。\n在实践中,特别是在性能方面,Gluster 手册建议它不适合用于复制数据库文件或其他细粒度 I/O 系统。

\n

请参阅此处的 Gluster 官方概述:

\n

http://docs.gluster.org/en/latest/Install-Guide/Overview/#is-gluster-going-to-work-for-me-and-what-i-need-it-to-do

\n
\n

Gluster 适合我吗?我需要它做什么?

\n

...另一方面,在混合中添加足够\nGluster 服务器后,由于\n技术的横向扩展性质,有些人\n发现我们的性能比其他解决方案更好 - Gluster 不支持所谓的 \xe2\x80 \x9c 结构化数据\xe2\x80\x9d,\n表示实时 SQL 数据库。当然,使用 Gluster 来备份和\n恢复数据库会很好 - 当使用至少 16KB 的文件大小(最佳位置约为 128KB\n)时,Gluster 传统上会更好。

\n
\n

再一次,如果你想要 MySQL 复制,我建议:

\n
    \n
  1. 使用传统的 MySQL 主/从复制\n https://dev.mysql.com/doc/refman/5.7/en/replication.html

    \n
  2. \n
  3. 使用 Codership Galera 集群,现在已在各种 MySQL 中实现,例如 Oracle MySQL 或 MariaDB

    \n
  4. \n
\n


Ama*_* B. 5

在 K8 集群上尝试过此操作。MySQL 在容器内运行,GlusterFS 直接安装在节点上(非容器化)。MySQL 容器的亲和力设置为始终在与 GFS 相同的节点上运行,使用 K8 的本机 GFS 卷驱动程序安装卷。

即使启用了 NGINX FastCGI (PHP-FPM) 缓存,WordPress 网站也经历了随机高延迟。切换到 MySQL 容器的 hostPath 卷,延迟问题消失了。