SSD硬盤配置最佳實踐

本文原創作者杜霆,京東商城基礎平臺部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


歡迎關注京東商城基礎平臺部公衆號

p_w_picpath

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章