SIOS SANless clusters

SIOS SANless clusters High-availability Machine Learning monitoring

  • Home
  • 产品
    • SIOS DataKeeper for Windows
    • SIOS Protection Suite for Linux
  • 新闻与活动
  • 服务器集群简单化
  • 成功案例
  • 联系我们
  • English
  • 中文 (中国)
  • 中文 (台灣)
  • 한국어
  • Bahasa Indonesia
  • ไทย

使用Fusion-io最大化Linux群集的复制性能

Date: 11月 27, 2018
标签:Fusion-io的

使用Fusion-io最大化Linux群集的复制性能

使用Fusion-io最大化Linux群集的复制性能的技巧

当大多数人考虑设置群集时,它通常涉及两个或更多服务器,以及SAN或其他类型的共享存储。SAN的设置和维护通常非常昂贵且复杂。此外,它们在技术上代表了集群架构中潜在的单点故障(SPOF)。如今,越来越多的人开始使用Fusion-io这样的公司,以及他们闪电般快速的ioDrives,来加速关键应用。  这些存储设备位于服务器内(即不是“共享磁盘”)。 因此,它不能用作具有许多传统群集解决方案的群集磁盘。幸运的是,有一些方法可以最大化使用Fusion-io进行Linux群集的复制性能。 允许您在不涉及共享存储时形成故障转移群集的解决方案 – 即“无共享”群集。

传统集群 使用Fusion-io - 传统集群最大化Linux集群的复制性能  “无共享”集群使用Fusion-io - 无共享群集最大化Linux群集的复制性能

在将数据复制作为群集配置的一部分时,充足的带宽至关重要,这样才能在网络上复制数据,就像写入磁盘一样快。  以下是调优技巧,可让您在涉及高速存储时充分利用“无共享”群集配置:

网络

  • 使用10Gbps网卡:Fusion-io(或OCZ,LSI等其他类似产品)的基于闪存的存储设备能够以MB /秒或更高的百万分之一(750)的速度写入数据。  1Gbps网卡只能推动理论最大值~125 MB /秒,因此任何利用ioDrive潜力的人都可以比通过1 Gbps网络连接推送更快地写入数据。  为确保服务器之间有足够的带宽以促进实时数据复制,应始终使用10 Gbps NIC来承载复制流量
  • 启用巨型帧:假设您的网卡和交换机支持它,启用巨型帧可以大大提高网络吞吐量,同时减少CPU周期。  要启用巨型帧,请执行以下配置(例如来自RedHat / CentOS / OEL linux服务器)
    • ifconfig <interface_name> mtu 9000
    • 编辑/ etc / sysconfig / network-scripts / ifcfg- <interface_name>文件并添加“MTU = 9000”,以便在重新启动后更改仍然存在
    • 要验证端到端巨型帧操作,请运行以下命令:ping -s 8900 -M do <IP-of-other-server>
  • 更改NIC的传输队列长度:
    • / sbin / ifconfig <interface_name> txqueuelen 10000
    • 将其添加到/etc/rc.local以保留重新启动后的设置

TCP / IP调整

  • 更改NIC的netdev_max_backlog:
    • 在/etc/sysctl.conf中设置“net.core.netdev_max_backlog = 100000”
  • 已显示可提高复制性能的其他TCP / IP调整:
    • 注意:这些是示例值,有些可能需要根据您的硬件配置进行调整
    • 编辑/etc/sysctl.conf并添加以下参数:
      • net.core.rmem_default = 16777216
      • net.core.wmem_default = 16777216
      • net.core.rmem_max = 16777216
      • net.core.wmem_max = 16777216
      • net.ipv4.tcp_rmem = 4096 87380 16777216
      • net.ipv4.tcp_wmem = 4096 65536 16777216
      • net.ipv4.tcp_timestamps = 0
      • net.ipv4.tcp_sack = 0
      • net.core.optmem_max = 16777216
      • net.ipv4.tcp_congestion_control = HTCP

调整

通常,您还需要对群集配置进行调整,这将根据您决定实施的群集和复制技术而有所不同。  在这个例子中,我使用的是SIOS Technologies的SteelEye Protection Suite for Linux(又名SPS,又名LifeKeeper)。 它允许用户利用几乎任何后端存储类型形成故障转移群集:光纤通道SAN,iSCSI,NAS,或者与本文最相关的本地磁盘,需要在群集节点之间实时同步/复制。  SPS for Linux包括集成的块级数据复制功能,这使得在没有共享存储时很容易设置集群。

建议

为了最大化使用Fusion-io的Linux群集的复制性能,让我们试试这个。SteelEye Protection Suite(SPS)for Linux配置建议:

  • 分配位于Fusion-io驱动器上的小(~100 MB)磁盘分区以放置位图文件。  在此分区上创建一个文件系统并将其挂载,例如,在/ bitmap:
    • #mount | grep /位图
    • / dev / fioa1 on / bitmap type ext3(rw)
  • 在创建镜像之前,请在/ etc / default / LifeKeeper中调整以下参数
    • 插入:LKDR_CHUNK_SIZE = 4096
      • 默认值为64
    • 编辑:LKDR_SPEED_LIMIT = 1500000
      • (默认值为50000)
      • LKDR_SPEED_LIMIT指定重新同步将采用的最大带宽 – 应设置为足够高以允许重新同步以尽可能最大的速度运行
    • 编辑:LKDR_SPEED_LIMIT_MIN = 200000
      • (默认值为20000)
      • LKDR_SPEED_LIMIT_MIN指定当同时进行其他I / O时允许重新同步的速度 – 根据经验,这应该设置为驱动器的最大写入吞吐量的一半或更少,以避免挨饿重新同步发生时,正常的I / O活动

从这里开始,像往常一样创建镜像并配置群集。有兴趣通过Fusion-io最大化Linux群集的复制性能,请参阅SIOS可以提供的其他内容。经LinuxClustering许可转载

Copyright © 2025 · Enterprise Pro Theme on Genesis Framework · WordPress · Log in