본문 바로가기

OS & network/solaris

솔라리스 10 x86의 I/O 성능 관리


솔라리스 10  x86은 기본적으로 x86의 특성상 IDE 디스크 사용시 성능 저하 현상이 생길 수 있습니다.
당연한 이야기 겠지만, 따라서, 동일한 OS라 하더라도 디스크에 따라 I/O의 차리는 현격하다고 할 수 있습니다.
x86의 기본 디스크가 SCSI가 아니기 때문인거죠.

솔라리스 아키텍쳐상 다음과 같은 구조를 가지고 있습니다.
설명을 단순화 하다 보니 좀 잘못된 부분이 있을 수 있습니다...^^
이점은 양해 바랍니다.


헌데, 솔라리스 10 IDE 기반의 ATAPI는 SCSI HBA 와 달리 블럭의 개수가 56개로 설정되어 있습니다.
이를 적절히 조정해 주면 성능의 향상을 도모 할 수 있습니다.

# tunfs -a 128 /dev/rdsk/c1d0p0

위와 같은 방식으로 블럭 사이즈를 증가 시켜 줄 수 있습니다.

더불어 블럭 개수의 증가에 따라 디스크의 버퍼 크기도 조정해 주는 것이 좋을 것입니다.
maxphys 커널 변수의 값을 증가시켜 주면 해결 됩니다.

# echo "set maxphys=1048576" >> /etc/system

으로 설정 후 재부팅하면 됩니다.
여기서 1048576은 버퍼의 메모리를 1M로 설정한 값입니다.

이러한 옵션들은 UFS 파일시스템에서만 적용되며, ZFS에서는 적용되지 않습니다.
당연히 IDE 타입의 디스크에서만 적용되고 , SCSI , FC 등에는 적용되지 않습니다.
SATA는 적용해보지 않았는데, 가능할 듯 싶네요.

솔라리스 성능 교육 관련해서는 썬 교육센터의 SA-400 , SA-375-s10  과정이 있고 , 후지쯔 교육센터의 솔라리스 성능관리 코스가 있습니다.
그 외에는 솔라리스 스쿨, 솔라리스 시큐리티 테크넷에서 하는 무료/유료세미나가 있습니다.
참고할 서적은 너무나 많지만, 파라미터 관련 정보는 docs.sun.com 에서 찾아 볼 수 있습니다.