2015-02-07 11 views
0

게스트 성능이 호스트와 비교되는 방식을 테스트하기 위해 KVM 게스트가있는 시스템을 설정했습니다. 시스템 하드웨어 사양은 다음과 같다 :KVM 게스트의 IO 성능 향상

  • HDD : ATA SAMSUNG HD502HI
  • CPU : 인텔 (R) 코어 (TM) (I3)의 CPU
  • 메모리 크기 : 8기가바이트

I 6GB의 RAM, 4 개의 가상 CPU, 원시 형식, virtio 인터페이스, 쓰기 쓰루 캐시 모드 및 게스트의 원시 io 모드를 가진 디스크 이미지 파일을 설정합니다.

OS는 호스트와 게스트에서 Ubuntu-14.04 64 비트 (커널 : 3.13.0-45- 일반)입니다.

그런 다음 fio 벤치 마크 도구로 시작하여 호스트와 게스트 모두에서 디스크 io를 벤치 마크했습니다. 당신은 아래 표에 결과보고 (옵션은 크기 FIO 명령 = 512m에서와 = 1이 포함되었다 무효화) 할 수 있습니다

|  | Random Read | Random write|Seqential Read |Seqential write| 
| Host | 465347B/s | 1199.7MB/s | 107878KB/s | 1434.2MB/s | 
| Guest | 46389KB/s | 989223KB/s | 1418.3MB/s | 1096.4MB/s | 

IOPS

|  | Random Read | Random write|Seqential Read |Seqential write| 
| Host | 113   | 306960  | 26969  | 367148  | 
| Guest | 11597  | 247305  | 363080  | 280668  | 

대역폭

나는 또한 호스트와 게스트에서 간단한 복사본 (파일 크기 = 564M)을 수행했으며 그 결과는 거의 같았다. (호스트의 시간 : 6.282 초 및 게스트의 시간 : 6.352 초).

나는 Mysql 데이터베이스에서 3,000,000 개의 레코드를 읽고 Elasticsearch에 색인 된 다른 벤치 마크를 실행했습니다. 게스트가 훨씬 빠르게 작업을 수행했기 때문에 결과가 불합리한 것으로 나타났습니다 (호스트 시간 : 5m6.827s 및 게스트 시간 : 2m19.469s).

나는 정말로 혼란 스럽다. 일부 테스트에서 게스트 IO 성능이 더 좋은 이유는 무엇입니까? 마음에 봄 가능한 몇 가지 이유가있다

답변

0

:

  1. 당신은 KVM에서 쓰기 저장 캐싱을 사용하는 경우가 종종 호스트보다 게스트의 더 나은 I/O 성능을 볼 수 있습니다. 이 부스트는 하드웨어 RAID 컨트롤러에 배터리 백업 쓰기 캐시를 설치하는 경우 볼 수있는 I/O 부스트와 유사합니다. 쓰기 저장 캐싱의 단점은 정전시 디스크 손상 위험이 있다는 것입니다.
  2. 벤치 마크는 정확한 시계를 사용합니다. 게스트에서 벤치 마크를 실행하면 VM 클럭의 안정성에 대한 많은 믿음을 갖게됩니다. 귀하의 경우에는 몇 분 차이가 나는 것을 볼 수 있습니다. 이것이 제가 생각할 수있는 일이지만, VM을 벤치마킹 할 때 알아야 할 사항이기 때문에 언급합니다.