SSD硬盘配置最佳实践

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:

本文原创作者杜霆,京东商城基础平台部MySQL DBA,经作者同意发表于本人博客,如需转载需经本人同意。


一、测试背景

服务器升级SSD后,速度和性能没有得到应有的提升,原因是没有正确使用SSD,主要是raid、linux、mysql数据库等相关参数没有正确的配置,本文对SSD的相关参数进行了对比性能测试,根据相关资料以及测试结果得出相关结论,了解实用场景以及对应优势。

二、测试环境

主机:172.20.166.52

Cpu:32 * Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz

内存:129G

操作系统:CentOS release 6.6

Sysbench:Sysbench 0.5

SSD硬盘:800G*6 raid5

主机:172.20.166.23

Cpu:32 * Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz

内存:129G

操作系统:CentOS release 6.6

Sysbench:Sysbench 0.5

SSD硬盘:800G*6 raid10 /raid0

三、测试工具及内容

使用Sysbench对相同硬件、软件环境的raid、linux、mysql等相关参数进行io性能测试、mysql性能测试,对比io性能。

IO性能测试Sysbench参数:

参数名称

参数值

file-block-size

16k

混合读写比例

1.5(读写比例3:2)

file-num

20

file-total-size

200G

max-time(单位秒)

3600


MySQL性能测试Sysbench参数:

参数名称

参数值

file-block-size

16k

混合读写比例

1.5(读写比例3:2)

oltp-tables-count

15

oltp-table-size

50000000

max-time(单位秒)

3600


四、测试结果

1、Linux系统参数测试结果

Linux对比测试参数如下:

参数类型

对比参数值1

对比参数值2

NUMA

开启

关闭

IO调度算法

Deadline

Noop

Rotational轮转模式

0

1(默认值)

read_ahead_kb预读大小

0

128(默认值)

rq_affinity

2

1(默认值)


对Linux操作系统测试了5组参数,分别如上图表所示,由测试数据可得出如下结论:

1、关闭NUMA,对SSD硬盘性能提高较大;

2、IO调度算法采用Deadline和Noop性能差距不大,Noop调度算法性能略高于Deadline;

3、rotational、read_ahead_kb、rq_affinity参数的调整对SSD硬盘性能几乎没有影响,建议使用默认配置。

2、Raid参数测试结果

Raid对比测试参数如下:

参数类型

对比参数值1

对比参数值2

Write Policy

WriteBack-WB

WriteThrough-WT

Read Policy

Normal(关闭预读功能)

ReadAdaptive

IO Policy

Direct

Cached

BGI(Background initialization)

Disabled(0%)

30%


BGI(Background initialization):

开启BGI,创建好Raid阵列后不必等待初始化完成就可以开始使用,比如分区和格式化,但是系统仍然在后台检查磁盘。

对Raid配置测试了4组参数,分别如上图表所示,由测试数据可得出如下结论:

1、Raid的Write Policy设置为WriteBack,硬盘性能有很大提高,而且性能比较稳定;

2、Raid的Read Policy设置为ReadAdaptive,硬盘性能略高于Normal;

3、Raid的IO Policy设置为Direct,性能明显高于Cached;

4、BGI采用默认配置的30%或者关闭BGI,性能几乎没有变化,建议使用默认配置。

3、Raid0的OP测试结果

OP配置对比如下:

参数类型

对比参数值1

对比参数值2

OP(Over-provisioning:预留空间)

NO-OP(硬盘空间全部分区)

15%-OP(留下15%空间不分区)


对比测试了不设置OP和设置15%的OP,如上图表所示,由测试数据可得出如下结论:

1、io测试时线程数小于128时,15%的OP的性能明显高于不设置OP的性能,随着线程数的增加,15%的OP的性能优势逐渐减少,到1024线程时,两者性能很接近。

2、mysql测试时15%的OP的性能略高于不设置OP的性能,两者性能很接近。

4、MySQL参数测试结果

MySQL对比测试参数如下:

参数类型

对比值1

对比值2

对比值3

对比值4

对比值5

对比值6

对比值7

innodb_write_io_threads

4

8

16

       

innodb_read_io_threads

4

8

16

       

innodb_log_file_size

512M

1024M

1536M

2048M

     

innodb_io_capacity

500

1000

2000

3000

4000

8000

12000

innodb_max_dirty_pages_pct

25

40

75

95

     


对MySQL测试了5组参数,分别如上图表所示,由测试数据可得出如下结论:

1、innodb_write_io_threads/ innodb_read_io_threads设置为8性能比较理想;

2、innodb_log_file_size设置为1536M或者2048M,性能差别不大;

3、innodb_io_capacity测试了从500到12000的参数,性能差别不大,设置为3000时出现测试数据的最大值,从测试数据观察,该参数设置在2000-8000范围内性能相对理想;

4、innodb_max_dirty_pages_pct设置为75性能较为理想。

五、LINUX参数测试数据对比

涉及到的linux对比测试参数如下:

参数类型

对比参数值1

对比参数值2

NUMA

开启

关闭

IO调度算法

Deadline

Noop

Rotational轮转模式

0

1(默认值)

read_ahead_kb预读大小

0

128(默认值)

rq_affinity

2

1(默认值)


对Linux操作系统测试了5组参数,分别如上图表所示,由测试数据可得出如下结论:

1、关闭NUMA,对SSD硬盘性能提高较大;

2、IO调度算法采用Deadline和Noop性能差距不大,Noop调度算法性能略高于Deadline;

3、rotational、read_ahead_kb、rq_affinity参数的调整对SSD硬盘性能几乎没有影响。

1、NUMA测试数据对比
1、IO性能测试

threads

关numa-吞吐量

开numa-吞吐量

关numa-iops

开numa-iops

关numa-load

开numa-load

关numa-iowait

开numa-iowait

8

378.54

266.41

24226.79

17050.5

16

18

6.5

6

16

458.75

360.75

29359.85

23087.8

31

33

11

10

32

553.27

450.82

35409.14

28852.3

53

51

21

20

64

595.53

523.49

38113.78

33503.5

85

85

42

38

128

613.85

539.76

39286.61

34544.5

138

140

63

65

256

605.66

534.08

38762.29

34181.1

260

260

65

72

512

603.14

527.04

38600.85

33730.6

520

520

67

73

2、MySQL性能测试

threads

关numa-tps

开numa-tps

关numa-qps

开numa-qps

关numa-load

开numa-load

关numa-iowait

开numa-iowait

8

2382.1

1363.04

24995.58

24534.7

6

7

4

5

16

2727.46

2608.05

49094.31

46945

7

7

3

6

32

4324.6

4053.62

77842.73

72965.1

5

6.5

3

4.5

64

5317.55

4963.41

95715.96

89341.4

7

7.5

1.7

2.5

128

4758.36

4553.22

85650.52

81958

10

10

1.8

2

256

4494.63

4364.49

80903.31

78560.9

20

27

1.6

1.8

512

4467.94

4411.62

80422.83

79409.1

35

35

1.7

1.8

2、IO调度测试数据对比
1、IO性能测试

threads

deadline-吞吐量

noop-吞吐量

deadline-iops

noop-iops

deadline-load

noop-load

deadline -iowait

noop-iowait

8

255.89

352.8

16377.04

22581.8

18

19.51

6.1

6.71

16

352.47

465.14

22557.94

29768.7

33

34.21

8.7

11.51

32

447.36

558.68

28631.13

35755.7

55

56.09

18

22.56

64

536.64

599.48

34345.19

38366.5

86

83.54

36

43.86

128

581.75

609.07

37231.87

38980.8

145

138.37

60

59.07

256

575.5

626.5

36831.87

40095.8

265

266.36

76

62.77

512

550.95

620.77

35260.53

39729.4

520

520.75

78

64.54

2、MySQL性能测试

threads

deadline-tps

noop-tps

deadline-qps

noop-qps

deadline-load

noop-load

deadline-iowait

noop-iowait

8

1555.47

1173.77

27998.43

21127.9

5

10.89

2

1.57

16

2723.71

2527.73

49026.76

45499.2

6

11.75

2.5

2.35

32

3989.45

3998.67

71810.16

71976.1

5

12.78

2.5

2.96

64

4743.53

4888.79

85363.88

87998.3

7.39

10.57

2.68

2.39

128

4587.23

4821.08

82570.19

86779.5

8.37

13.53

1.87

2.15

256

4446.68

4544.65

80040.23

81803.7

12.39

17.13

1.67

1.61

512

4340.15

4789.82

78122.7

86216.8

35.72

24.92

1.42

2.17

3、rotational测试数据对比

threads

0-吞吐量

1-吞吐量

0-iops

1-iops

8

406.1

406.13

25990.49

25992.03

16

462.09

461.72

29573.52

29550.28

32

477.09

477.66

30533.51

30569.96

64

484.68

484.88

31019.8

31032.59

128

487.97

488.2

31229.86

31244.88

256

488.26

488.25

31248.86

31248.14

512

488.09

488.21

31237.47

31245.54

1024

487.96

487.96

31229.39

31229.69

4、read_ahead_kb测试数据对比

threads

128-吞吐量

0-吞吐量

128-iops

0-iops

8

406

406.61

25988.81

26023.23

16

462.25

462.5

29583.82

29600.2

32

477.61

477.89

30566.8

30584.83

64

484.92

485.05

31035.1

31043.36

128

488.22

488.3

31245.99

31251.39

256

488.27

488.31

31249.47

31251.88

512

488.25

488.19

31247.81

31244.06

1024

488.18

487.98

31243.82

31230.88

5、rq_affinity测试数据对比

threads

1-吞吐量

2-吞吐量

1-iops

2-iops

8

406.36

406.35

26006.89

26006.12

16

462.14

462.14

29577

29577.02

32

477.62

477.51

30567.6

30560.65

64

484.92

485.03

31034.82

31041.8

128

488.21

488.18

31245.61

31243.84

256

488.36

488.37

31254.91

31255.43

512

488.2

488.29

31244.94

31250.27

1024

488

488.09

31232.01

31237.56

六、RAID参数测试数据对比

涉及到的raid对比测试参数如下:

参数类型

对比参数值1

对比参数值2

Write Policy

WriteBack-WB

WriteThrough-WT

Read Policy

Normal

ReadAdaptive

IO Policy

Direct

Cached

BGI(Background initialization)

Disabled(0%)

30%

     


BGI(Background initialization):

开启BGI,创建好Raid阵列后不必等待初始化完成就可以开始使用,比如分区和格式化,但是系统仍然在后台检查磁盘。

对Raid配置测试了4组参数,分别如上图表所示,由测试数据可得出如下结论:

1、Raid的Write Policy使用Writeback,硬盘性能有很大提高,而且性能比较稳定;

2、Raid的Read Policy使用ReadAdaptive,硬盘性能略高于Normal;

3、Raid的IO Policy使用Direct,性能明显高于Cached;

4、BGI采用默认配置30%或者关闭BGI,性能几乎没有变化。

1、Write Policy测试数据对比
1、IO性能测试

threads

WB-吞吐量

WT-吞吐量

WB-iops

WT-iops

8

352.8

298.89

22581.78

19128.82

16

465.14

397.59

29768.72

25445.96

32

558.68

441.74

35755.67

28271.6

64

599.48

460.09

38366.47

29446.06

128

609.07

459.93

38980.8

29435.51

256

626.5

465.37

40095.83

29783.48

512

620.77

112.92

39729.38

7227.12

2、MySQL性能测试

threads

WB-tps

WT-tps

WB-qps

WT-qps

WB-load

WTB-load

WB-iowait

WT-iowait

8

1173.77

1078.65

21127.87

19415.7

10.89

7.15

1.57

3.18

16

2527.73

1778.8

45499.17

32018.3

11.75

9.17

2.35

4.95

32

3998.67

2632.47

71976.13

47384.4

12.78

10.27

2.96

6.32

64

4888.79

3974.11

87998.27

71534

10.57

11.23

2.39

4.98

128

4821.08

3498.19

86779.46

62967.3

13.53

11.69

2.15

3.57

256

4544.65

3495.27

81803.69

62914.8

17.13

22.25

1.61

2.86

512

4789.82

3358.78

86216.75

60458

24.92

20.85

2.17

1.76

2、Read Policy测试数据对比
1、IO性能测试

threads

Normal-吞吐量

ReadAdaptive-吞吐量

Normal-iops

ReadAdaptive-iops

8

312.87

380.72

20023.46

24366.25

16

440.28

479.39

28177.66

30680.9

32

539.43

566.26

34523.69

36240.67

64

591.11

611.28

37831.34

39122.05

128

604.66

619.29

38698.5

39634.77

256

602.61

621.31

38566.82

39763.55

512

606.65

621.09

38825.55

39749.61

1024

604.67

619.26

38698.98

39632.65

2、MySQL性能测试

threads

Normal-吞吐量

ReadAdaptive-吞吐量

Normal-iops

ReadAdaptive-iops

8

312.87

380.72

20023.46

24366.25

16

440.28

479.39

28177.66

30680.9

32

539.43

566.26

34523.69

36240.67

64

591.11

611.28

37831.34

39122.05

128

604.66

619.29

38698.5

39634.77

256

602.61

621.31

38566.82

39763.55

512

606.65

621.09

38825.55

39749.61

1024

604.67

619.26

38698.98

39632.65

3、IO Policy测试数据对比

threads

Direct-吞吐量

Cached-吞吐量

Direct-iops

Cached-iops

8

408.54

375.5

26146.57

24032.03

16

462.81

411.97

29619.75

26366.34

32

487.86

428.27

31222.75

27409.33

64

491.41

432.06

31450.35

27651.82

128

494.34

435.31

31637.56

27859.79

256

494.42

435.96

31642.94

27901.3

512

494.18

436

31627.73

27903.83

1024

493.97

436.11

31614.19

27911.18

4、BGI测试数据对比

threads

30%-吞吐量

disabled-吞吐量

30%-iops

disabled-iops

8

413.43

411.95

26459.45

26364.5

16

469.9

469.59

30073.86

30054.01

32

494.27

493.5

31633.52

31584.15

64

496.97

496.4

31806.23

31769.53

128

499.9

499.41

31993.47

31962.09

256

499.97

499.59

31997.9

31973.49

512

499.69

499.13

31980.14

31944.6

1024

499.31

498.8

31955.78

31923.29

七、Raid0的SSD OP测试数据对比

OP是Over-provisioning(预留空间)的简称,是指用户不可操作的容量,就是留出一部分容量不使用不分区,OP预留的空间一般被用于优化操作。

参数类型

对比参数值1

对比参数值2

OP(Over-provisioning:预留空间)

NO-OP(硬盘空间全部分区)

15%-OP(留下15%空间不分区)


对比测试了不设置OP和设置15%的OP,分别如上图表所示,由测试数据可得出如下结论:

1、io测试时线程数小于128时,15%的OP的性能明显高于不设置OP的性能,随着线程数的增加,15%的OP的性能优势逐渐减少,到1024线程时,两者性能很接近。

2、mysql测试时15%的OP的性能略高于不设置OP的性能,两者性能很接近。

1、IO性能测试

threads

NO_OP-吞吐量

15%OP-吞吐量

NO_OP-iops

15%OP-iops

8

355.44

400.85

22748.07

25654.71

16

496.2

521.74

31756.54

33391.2

32

601.71

612.09

38509.32

39173.7

64

635.39

639.79

40665.1

40946.7

128

641.7

646.56

41069.11

41379.56

256

640.71

644.65

41005.19

41257.91

512

640.51

642.44

40992.81

41116.14

1024

640.96

641.78

41021.33

41074.22

2、MySQL性能测试

threads

NO_OP-tps

15%OP-tps

NO_OP-qps

15%OP-qps

8

1721.79

1745.69

30992.22

31422.41

16

3070.81

2999.36

55274.51

53988.55

32

5024.17

5087.03

90435.04

91706.48

64

5769.8

5800.62

103856.32

104811.25

128

6029.35

6047.59

108528.26

108856.71

256

6163.54

6172.09

110943.75

111097.59

512

5825.3

5870.96

104855.43

105377.31

1024

5263.82

5302.43

94748.79

95443.74

八、MySQL参数测试数据对比

涉及到的MySQL对比测试参数如下:

参数类型

对比值1

对比值2

对比值3

对比值4

对比值5

对比值6

对比值7

innodb_write_io_threads

4

8

16

       

innodb_read_io_threads

4

8

16

       

innodb_log_file_size

512M

1024M

1536M

2048M

     

innodb_io_capacity

500

1000

2000

3000

4000

8000

12000

               

innodb_max_dirty_pages_pct

25

40

75

95

     


对MySQL测试了5组参数,分别如上图表所示,由测试数据可得出如下结论:

1、innodb_write_io_threads/ innodb_read_io_threads设置为8性能比较理想;

2、innodb_log_file_size设置为1536M或者2048M性能较理想,两者性能差别不大;

3、innodb_io_capacity测试了从500到12000的参数,性能差别不大,设置为3000时出现测试数据的最大值,从测试数据观察,该参数设置在2000-8000范围内性能相对理解;

4、innodb_max_dirty_pages_pct设置为75性能较为理想。

1、innodb_write/read_io_threads测试数据

threads

4threads-tps

8threads-tps

16threads-tps

4threads-qps

8threads-qps

16threads-qps

8

1173.77

1492.43

1419.11

21127.9

26863.76

25543.96

16

2527.73

2786.58

2503.45

45499.2

50158.43

45062.06

32

3998.67

4089.44

4047.88

71976.1

73609.92

72861.79

64

4888.79

5007.99

4906.46

87998.3

90143.74

88316.28

128

4821.08

4910.92

4968.95

86779.5

88796.58

89441.11

256

4544.65

4569.68

4576.27

81803.7

82254.23

82372.85

512

4457.77

4471.44

4430.32

80239.9

80485.88

79745.69

2、innodb_log_file_size测试数据

threads

512M-tps

1024M-tps

1536M-tps

2048M-tps

512M-qps

1024M-qps

1536M-qps

2048M-qps

8

1492.43

1673.89

1624.9

1610.53

26863.76

30130.05

29248.2

28989.6

16

2786.58

2842.86

2883.26

2954.41

50158.43

51171.45

51898.65

53179.3

32

4089.44

4400.77

4498.56

4537.56

73609.92

79213.84

80974.15

81676

64

5007.99

5017.13

5095.41

5189.49

90143.74

90308.36

91717.42

93410.9

128

4710.92

5286.19

5309.15

5350.92

84796.58

95151.4

95564.78

96316.6

256

4569.68

5223.62

5460.57

5465.27

82254.23

94025.11

98290.23

98374.9

512

4471.44

5101.56

5403.77

5408.45

80485.88

91828.04

97267.94

97352

3、innodb_io_capacity测试数据

threads

500-tps

1000-tps

2000-tps

3000-tps

4000-tps

6000-tps

8000-tps

12000-tps

8

1658.26

1630.92

1567.11

1616.33

1587.68

1605.74

1616.98

1618.39

16

2889.11

2887.32

2925.1

2946.26

2927.38

2946.93

2933.97

3038.03

32

4485.99

4491.16

4560.83

4564.73

4536.17

4563.98

4563.86

4687.67

64

5115.52

5083.29

5158.46

5158.74

5183.22

5209.63

5136.77

5341.22

128

5323.14

5307.32

5324.14

5356.27

5350.89

5470.49

5439

5461.05

256

5477.86

5492.01

5505.18

5513.2

5473.41

5492.54

5494.19

5465.69

512

5426.18

5414.67

5400.05

5404.58

5277.26

5363.1

5374.89

5364.93

1024

4911.33

4884.97

4901.06

4924.87

4931.67

4924.81

4760.45

4936.01

threads

500-qps

1000-qps

2000-qps

3000-qps

4000-qps

6000-qps

8000-qps

12000-qps

8

29848.7

29356.6

28208.03

29093.9

28578.33

28903.25

29105.55

29131

16

52003.9

51971.8

52651.85

53032.6

52692.87

53044.72

52811.43

54684.6

32

80747.8

80840.9

82094.89

82165.1

81651.13

82151.58

82149.53

84378.1

64

92079.4

91499.3

92852.3

92857.4

93298.04

93773.42

92461.83

96142

128

95816.5

95531.7

95834.49

96412.9

96316.11

98468.76

97902.01

98298.8

256

98601.6

98856.2

95505.18

99237.7

98521.44

98865.67

98895.35

98382.4

512

97671.2

97464.1

97200.94

97282.5

94990.66

96535.85

96747.99

96568.8

1024

88403.9

87929.4

88219.13

88647.6

88770.07

88646.51

85688.05

88848.1

4、innodb_max_dirty_pages_pct测试数据

threads

25-tps

40-tps

75-tps

95-tps

8

1592.35

1635.88

1616.33

1604.2

16

2926.66

2914.71

2946.26

2963.03

32

4621.18

4669.54

4564.73

4640

64

5183.43

5216.98

5158.74

5221.39

128

5374.46

5418.1

5356.27

5346.03

256

5467.12

5465.59

5513.2

5436.56

512

5325.57

5394.82

5404.58

5347.19

1024

4746.07

4899.43

4924.87

4769.11

九、相同硬盘数不同raid测试数据对比

使用6块ssd硬盘,分别配置了raid5、raid10、raid0、raid0-15%OP,进行了io混合随机读写性能测试。

Sysbench测试参数:

参数名称

参数值

file-block-size

16k

混合读写比例

1.5(读写比例3:2)

oltp-tables-count

15

oltp-table-size

50000000


1、不同Raid对比分析结果

1、硬盘利用率

Raid0的硬盘空间使用率是100%,如果预留15%做OP,空间使用率只有全部硬盘大小的75%;Raid5的空间使用率是(n-1)/n(n是磁盘数量,磁盘数量越多,空间使用率越高);Raid10的硬盘使用率只有50%;硬盘使用率顺序是

Raid0 > raid0-15%OP > Raid5 > Raid10

2、读写性能

raid0、raid0-15%OP的读写性能明显高于raid5、raid10,raid0-15%OP的性能略高于raid0。

raid0-15%OP > raid0 > raid10 > raid5

3、稳定安全性

Raid10是最安全稳定的,Raid5提供了一块盘的奇偶检验保证安全,Raid0没有安全保护措施。另外当Raid5一块盘出现故障时候,其性能明显下降。

2、不同Raid测试数据

1、io混合随机读写性能数据

threads

raid5-吞吐量

raid10-吞吐量

raid0-NO_OP-吞吐量

raid0-15%OP-吞吐量

raid5-iops

raid10-iops

raid0-NO_OP-iops

raid0-15%OP-iops

8

486.81

378.54

355.44

400.85

31155.9

24226.79

22748.07

25654.71

16

531.31

458.75

496.2

521.74

34003.5

29359.85

31756.54

33391.2

32

567.32

553.27

601.71

612.09

36308.5

35409.14

38509.32

39173.7

64

588.14

595.53

635.39

639.79

37640.9

38113.78

40665.1

40946.7

128

584.11

613.85

641.7

646.56

37383.2

39286.61

41069.11

41379.56

256

586.53

605.66

640.71

644.65

37537.8

38762.29

41005.19

41257.91

512

584.89

603.14

640.51

642.44

37432.7

38600.85

40992.81

41116.14


2、一块硬盘故障,raid10和raid5性能变化

raid5

MB_read/s

MB_wrtn/s

吞吐量

raid10

MB_read/s

MB_wrtn/s

吞吐量

 

306.98

244.34

551.32

 

342.13

239.01

581.14

 

307.48

240.34

547.82

 

420.18

174.85

595.03

 

311.98

243.11

555.09

 

210.94

319.88

530.82

 

306.69

242.92

549.61

 

396.29

198.82

595.11

 

309.18

241.09

550.27

 

455.8

144.79

600.59

 

317.05

243.94

560.99

 

321.38

248.11

569.49

 

328.3

247.53

575.83

 

269.85

288.21

558.06

 

319.46

257.87

577.33

 

478.38

136.64

615.02

 

311.09

253.59

564.68

 

460.5

134.47

594.97

 

315.82

256.95

572.77

 

377.16

210.37

587.53

 

158.27

156.9

315.17

 

368.72

215.12

583.84

 

160.46

166.41

326.87

 

291.59

267.16

558.75

 

159.12

163.47

322.59

 

414.14

192.47

606.61

 

156.2

162.23

318.43

 

459.39

151.82

611.21

 

160.99

163.99

324.98

 

215.77

325.02

540.79

 

157.78

161.77

319.55

 

391.12

198.15

589.27

 

160.99

163.99

324.98

 

365.72

221.12

586.84

 

158.06

160.86

318.92

 

250.39

297.45

547.84

 

161.4

162.81

324.21

 

457.67

153.27

610.94

 

159.08

161.38

320.46

 

360.43

226.9

587.33


十、SSD推荐参数配置

SSD对应linux、raid、mysql推荐参数以及推荐参数设置方法。

1、Linux推荐参数设置
1、关闭numa

2、io调度算法设置为noop

3、Rotational保持默认值1

4、read_ahead_kb保持默认值128

5、rq_affinity保持默认值1

2、Linux推荐参数设置方法

1、关闭numa

进入System BIOS设置,选择Memory设置,选择Node Interteaving为Enable进行关闭numa,如下图所示。

执行命令“numactl --hardware”进行检查,输出结果available: 1 nodes (0)时表示关闭成功,如下图。

2、修改io调度算法noop

执行命令:echo noop > /sys/block/sda/queue/scheduler

检查命令:cat /sys/block/sda/queue/scheduler

3、Rotational值的调整

执行命令:echo 0 > /sys/block/sda/queue/rotational

查看命令:cat /sys/block/sda/queue/rotational

4、read_ahead_kb值的调整

执行命令:echo 0 > /sys/block/sda/queue/read_ahead_kb

查看命令:cat /sys/block/sda/queue/read_ahead_kb

5、rq_affinity值的调整

执行命令:echo 0 > /sys/block/sda/queue/rq_affinity

查看命令:cat /sys/block/sda/queue/rq_affinity

3、Raid推荐参数设置
1、Write Policy设置为WriteBack(WB)

2、Read Policy设置为ReadAdaptive

3、IO Policy设置为Direct

4、BGI(Background initialization)保持默认设置30%

4、Raid推荐参数设置方法

使用MegaCli命令可以修改Raid参数配置,该命名是官方提供的针对MegaRAID卡的设置命令,如果使用不同品牌Raid卡,可以参照官方提供的命令进行设置。

MegaCli查看Raid参数命令:

查看所有Raid:MegaCli -LDGetProp -Cache -LALL –aALL

查看其中一个Raid:MegaCli -LDGetProp -Cache -L1 -a0

MegaCli修改Raid参数命令:

MegaCli -LDSetProp WT|WB|NORA|RA|ADRA -L1 -a0

or

MegaCli -LDSetProp -Cached|-Direct -L1 -a0

1、Write Policy设置为WriteBack命令

MegaCli -LDSetProp WB -L1 -a0

2、Read Policy设置为ReadAdaptive命令

MegaCli -LDSetProp ADRA -L1 -a0

3、IO Policy设置为Direct命令

MegaCli -LDSetProp -Direct -L1 -a0

4、BGI调整方法

进入Device Settings,选择Interated RAID Controller,选择Controller Managent,选择Change Controller Properties,可以修改BGI参数,如下图。

5、SSD的OP推荐设置

推荐保留15%的硬盘空间不进行分区,这部分空间即是OP的保留空间。

设置方法:分区时候保留15%的硬盘空间不进行分区。

4、MySQL推荐参数设置

1、innodb_write_io_threads/ innodb_read_io_threads推荐设置为8

2、innodb_log_file_size推荐设置为2048M

3、innodb_io_capacity推荐设置为3000

4、innodb_max_dirty_pages_pct设置为75


本文转自 lover00751CTO博客,原文链接:http://blog.51cto.com/wangwei007/1902387,如需转载请自行联系原作者


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
Java
JVM深入学习(十八)-如何查询当前jvm使用的垃圾回收器
如何查看使用的jdk用的垃圾回收器类型?
1189 0
|
存储 固态存储 Java
文件系统使用固态硬盘(SSD)
【10月更文挑战第8天】
445 2
|
2月前
|
安全 物联网 API
Windows 11 24H2 中文版、英文版 (x64、ARM64) 下载 (2025 年 9 月更新)
Windows 11 24H2 中文版、英文版 (x64、ARM64) 下载 (2025 年 9 月更新)
543 1
Windows 11 24H2 中文版、英文版 (x64、ARM64) 下载 (2025 年 9 月更新)
|
JavaScript 前端开发 Java
建立SpringBoot项目
在最新版本中,通过Eclipse建立Spring Boot项目,使用在Eclipse市场安装目前不太稳定,需要重新安装Spring Boot版本的Eclipse,现在介绍如何进行。
1173 0
建立SpringBoot项目
|
编解码 监控 网络协议
HLS 和 RTSP 的优势
【10月更文挑战第25天】HLS和RTSP各自的优势使其在不同的应用场景中发挥着重要作用。HLS适用于需要广泛兼容性、自适应码率和简单部署的场景,如在线视频点播、直播等;而RTSP则更适合对实时性、精确播放控制和互操作性要求较高的专业级实时流媒体应用。了解它们的优势有助于根据具体的项目需求选择最合适的流媒体传输协议。
410 61
pip批量安装python第三方库
pip批量安装python第三方库
|
存储 数据库
|
网络协议 Serverless 网络安全
阿里云函数计算自定义域名的SSL证书免费全自动申请及部署
阿里云函数计算简化了开发部署,让用户专注业务逻辑,降低了运维复杂性。然而,SSL证书支持需额外付费:免费证书有效期缩短至3个月,1年证书及自动化部署均收费。为节省成本,小微企业和个人开发者可以采用一套全自动、全免费的SSL证书申请、续签和部署方案。该方案包括自动向Let's Encrypt申请证书、使用阿里云OpenAPI更新证书以及在证书到期前提前申请。通过Win-Acme(Windows)实现,详细步骤包括设置win-acme、自动DNS验证和更新函数计算证书。
1506 5
|
固态存储 算法 芯片
SSD性能优化之4K对齐
【引语】 你是否听人说 SSD 买来一定要先对齐,不然平时用起来会很顿。究竟是真有这种说法还是人云亦云呢?请往下看,相信聪明的你会自有判断。
|
机器学习/深度学习 存储 自然语言处理
使用Sentence Transformers和Faiss构建语义搜索引擎
使用Sentence Transformers和Faiss构建语义搜索引擎
1647 0
使用Sentence Transformers和Faiss构建语义搜索引擎