SAN
There are two options to configure MySQL with SAN using the usual two-volume model.
Smaller databases can be placed on a pair of standard LUNs as long as the I/O and capacity demands are within the limits of a single LUN file system. For example, a database that requires approximately 2K random IOPS can be hosted on a single file system on a single LUN. Likewise, a database that is only 100GB in size would fit on a single LUN without creating a management problem.
Larger databases require multiple LUNs. For example, a database that requires 100K IOPS would most likely need at least eight LUNs. A single LUN would become a bottleneck because of the inadequate number of SCSI channels to drives. A 10TB database would similarly be difficult to manage on a single 10TB LUN. Logical volume managers are designed to bond the performance and capacity capabilities of multiple LUNs together to improve performance and manageability.
In both cases, a pair of ONTAP volumes should be sufficient. With a simple configuration, the data file LUN would be placed in a dedicated volume, as would the log LUN. With a logical volume manager configuration, all the LUNs in the data file volume group would be in a dedicated volume, and the LUNs of the log volume group would be in a second dedicated volume.
NetApp recommends using two file systems for MySQL deployments on SAN:
There are multiple reasons for separating data in this manner, including:
|
Use this basic two-volume layout to future-proof the solution so that all ONTAP features can be used if needed. |
NetApp recommends formatting your drive with the ext4 file system because of the following features:
|
NetApp recommends using 4k block size options with the mkfs utility to align with existing block LUN size.
|
NetApp LUNs store data in 4KB physical blocks, which yields eight 512-byte logical blocks.
If you do not set up the same block size, I/O will not be aligned with physical blocks correctly and could write in two different drives in a RAID group, resulting in latency.
It is important that you align I/O for smooth read/write operations. However, when the I/O begins at a logical block that is not at the start of a physical block, the I/O is misaligned. I/O operations are aligned only when they begin at a logical block—the first logical block in a physical block. |