SIOS SANless clusters

SIOS SANless clusters High-availability Machine Learning monitoring

  • Home
  • Products
    • SIOS DataKeeper for Windows
    • SIOS Protection Suite for Linux
  • News and Events
  • Clustering Simplified
  • Success Stories
  • Contact Us
  • English
  • 中文 (中国)
  • 中文 (台灣)
  • 한국어
  • Bahasa Indonesia
  • ไทย

Maximise replication performance for Linux Clustering with Fusion-io

November 27, 2018 by Jason Aw Leave a Comment

Maximise replication performance for Linux Clustering with Fusion-io

Tips To Maximise Replication Performance For Linux Clustering With Fusion-io

When most people think about setting up a cluster, it usually involves two or more servers, and a SAN – or some other type of shared storage. SAN’s are typically very costly and complex to setup and maintain. Also, they technically represent a potential Single Point of Failure (SPOF) in your cluster architecture. These days, more and more people are turning to companies like Fusion-io, with their lightning fast ioDrives, to accelerate critical applications.  These storage devices sit inside the server (i.e. aren’t “shared disks”). Therefore it can’t be used as cluster disks with many traditional clustering solutions. Fortunately, there are ways to Maximise replication performance for Linux Clustering with Fusion-io. Solutions that allow you to form a failover cluster when there is no shared storage involved – i.e. a “shared nothing” cluster.

 

Traditional Cluster

 “Shared Nothing” Cluster

When leveraging data replication as part of a cluster configuration, it’s critical that you have enough bandwidth so that data can be replicated across the network just as fast as it’s written to disk.  The following are tuning tips that will allow you to get the most out of your “shared nothing” cluster configuration, when high-speed storage is involved:

Network

  • Use a 10Gbps NIC: Flash-based storage devices from Fusion-io (or other similar products from OCZ, LSI, etc) are capable of writing data at speeds in the HUNDREDS (750 ) of MB/sec or more.  A 1Gbps NIC can only push a theoretical maximum of ~125 MB/sec, so anyone taking advantage of an ioDrive’s potential can easily write data much faster than could be pushed through a 1 Gbps network connection.  To ensure that you have sufficient bandwidth between servers to facilitate real-time data replication, a 10 Gbps NIC should always be used to carry replication traffic
  • Enable Jumbo Frames: Assuming that your Network Cards and Switches support it, enabling jumbo frames can greatly increase your network’s throughput while at the same time reducing CPU cycles.  To enable jumbo frames, perform the following configuration (example from a RedHat/CentOS/OEL linux server)
    • ifconfig <interface_name> mtu 9000
    • Edit /etc/sysconfig/network-scripts/ifcfg-<interface_name> file and add “MTU=9000” so that the change persists across reboots
    • To verify end-to-end jumbo frame operation, run this command: ping -s 8900 -M do <IP-of-other-server>
  • Change the NIC’s transmit queue length:
    • /sbin/ifconfig <interface_name> txqueuelen 10000
    • Add this to /etc/rc.local to preserve the setting across reboots

TCP/IP Tuning

  • Change the NIC’s netdev_max_backlog:
    • Set “net.core.netdev_max_backlog = 100000” in /etc/sysctl.conf
  • Other TCP/IP tuning that has shown to increase replication performance:
    • Note: these are example values and some might need to be adjusted based on your hardware configuration
    • Edit /etc/sysctl.conf and add the following parameters:
      • 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

Adjustments

Typically you will also need to make adjustments to your cluster configuration, which will vary based on the clustering and replication technology you decide to implement.  In this example, I’m using the SteelEye Protection Suite for Linux (aka SPS, aka LifeKeeper), from SIOS Technologies. It allows users to form failover clusters leveraging just about any back-end storage type: Fiber Channel SAN, iSCSI, NAS, or, most relevant to this article, local disks that need to be synchronized/replicated in real time between cluster nodes.  SPS for Linux includes integrated, block level data replication functionality that makes it very easy to setup a cluster when there is no shared storage involved.

Recommendations

In order to Maximise replication performance for Linux Clustering with Fusion-io, let’s try this. SteelEye Protection Suite (SPS) for Linux configuration recommendations:

  • Allocate a small (~100 MB) disk partition, located on the Fusion-io drive to place the bitmap file.  Create a filesystem on this partition and mount it, for example, at /bitmap:
    • # mount | grep /bitmap
    • /dev/fioa1 on /bitmap type ext3 (rw)
  • Prior to creating your mirror, adjust the following parameters in /etc/default/LifeKeeper
    • Insert: LKDR_CHUNK_SIZE=4096
      • Default value is 64
    • Edit: LKDR_SPEED_LIMIT=1500000
      • (Default value is 50000)
      • LKDR_SPEED_LIMIT specifies the maximum bandwidth that a resync will ever take — this should be set high enough to allow resyncs to go at the maximum speed possible
    • Edit: LKDR_SPEED_LIMIT_MIN=200000
      • (Default value is 20000)
      • LKDR_SPEED_LIMIT_MIN specifies how fast the resync should be allowed to go when there is other I/O going on at the same time — as a rule of thumb, this should be set to half or less of the drive’s maximum write throughput in order to avoid starving out normal I/O activity when a resync occurs

From here, go ahead and create your mirrors and configure the cluster as you normally would.

Interested to Maximise Replication Performance For Linux Clustering With Fusion-io, see what else SIOS can offer.
Reproduced with permission from LinuxClustering

Filed Under: Clustering Simplified, Datakeeper Tagged With: Clustering, Fusion-io, Linux, maximise replication performance for linux clustering with fusion io, replication

Achieving High Performance And High Availability For SQL Server

February 4, 2018 by Jason Aw Leave a Comment

Register here to learn how high performance and high availability for Microsoft SQL Server can be achieved with solutions from Fusion-io and SIOS. This powerful combination delivers high-speed storage and high availability for SQL Server without the limitations of single copy clusters or AlwaysOn Availability Groups.

Make the switch and enjoy:

  • Cost savings
  • Higher database performance
  • Smaller floor space requirements
  • Lower cooling and power demands

… all without sacrificing availability.

The end result: faster performance at a fraction of the cost of a typical SAN with 100% data availability.

Ready to learn about how Fusion-io and SIOS could achieve better results with Microsoft SQL Server. Hear from our featured Speakers:

Dave Bermingham is recognized within the technology community as a high availability expert and has been a Microsoft MVP in Clustering for the past three years. David’s work as Sr. Technical Evangelist at SIOS has him focused on delivering high availability and disaster recovery solutions. David holds numerous technical certifications and has over twenty years of technology experience focused on application availability.

Jamila Gunawardena is a Senior OEM Sales Engineer for Fusion-io. Jamila has over 15 years experience in Software Engineering and System Design with expertise in Internet, Bioinformatics, and Semiconductor DFM solutions. Currently, Jamila is focused on ISV and appliance partnerships at Fusion-io.

Geoff Hiten is a Microsoft SQL MVP and is currently an Infrastructure Architect for Intellinet. Geoff began working with SQL Server in 1992 with version 4.2 and has used every version since. He specializes in high-availability and high-performance SQL systems. Geoff is heavily involved in the Microsoft SQL Server Community and was initially awarded MVP status in 2004. Geoff was appointed in 2011 to fill an interim Director position at the National PASS organization.

Reproduced with permission from https://clusteringformeremortals.com/2012/09/12/achieving-high-performance-and-high-availability-for-sql-server/

Filed Under: Clustering Simplified Tagged With: AlwaysOn Availability Groups, Dave Bermingham, Fusion-io, Geoff Hiten, Jamila Gunawardena, Microsoft, SIOS, SIOS DataKeeper Cluster Edition, SQL Server

Sacrifice High Availability For High Performance?

January 31, 2018 by Jason Aw Leave a Comment

Mosey on over to the Fusion-io website and read my guest post in their blog, Do You Have to Sacrifice High Availability for High Performance?

Invitation to join our Webinar

After you are done there, view the joint SIOS and Fusion-io webinar “SQL Server 2008 – High Performance and High Availability Through Fusion-io and SIOS”. Part of this webinar includes some VERY interesting benchmark information…you won’t want to miss it!

Reproduced with permission from https://clusteringformeremortals.com/2011/08/23/do-you-have-to-sacrifice-high-availability-for-high-performance/

Filed Under: Clustering Simplified Tagged With: Fusion-io, High Availability, High Performance, SIOS, SQL Server 2008, Webinar

Recent Posts

  • How to Assess if My Network Card Needs Replacement
  • Application Intelligence in Relation to High Availability
  • Transitioning from VMware to Nutanix
  • Are my servers disposable? How High Availability software fits in cloud best practices
  • Data Recovery Strategies for a Disaster-Prone World

Most Popular Posts

Maximise replication performance for Linux Clustering with Fusion-io
Failover Clustering with VMware High Availability
create A 2-Node MySQL Cluster Without Shared Storage
create A 2-Node MySQL Cluster Without Shared Storage
SAP for High Availability Solutions For Linux
Bandwidth To Support Real-Time Replication
The Availability Equation – High Availability Solutions.jpg
Choosing Platforms To Replicate Data - Host-Based Or Storage-Based?
Guide To Connect To An iSCSI Target Using Open-iSCSI Initiator Software
Best Practices to Eliminate SPoF In Cluster Architecture
Step-By-Step How To Configure A Linux Failover Cluster In Microsoft Azure IaaS Without Shared Storage azure sanless
Take Action Before SQL Server 20082008 R2 Support Expires
How To Cluster MaxDB On Windows In The Cloud

Join Our Mailing List

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