What's New in Solaris 10 Update 7 (5/09)
2009년 5월 12일자로 솔라리스 10의 업데이트 7 버전인 Solaris 10 5/09가 릴리즈 되었습니다. 지난 2008년 10월 31일 10/08 버전의 업데이트 6가 발표된 뒤로 약 6개월만으로 sun.com 사이트를 통한 다운로드는 4월 29일부터 가능(RR)했었고, 5월 11일부터 릴리즈 노트 및 설치 문서 등 각종 문서가 링크(GA)된 것을 확인할 수 있습니다. 새로운 Update 7에 대한 정보는 아래 문서들을 참조하실 수 있습니다.
주요 링크 :
이번 업데이트는 지난 업데이트 6와 같이 'ZFS 루트 파일시스템 지원' 등의 눈길을 끌만한 신기능까지는 담고 있지 않습니다. 하지만 '솔라리스 컨테이너와 ZFS 파일시스템의 결합'이라든가 '솔라리스 10의 인텔 네할름 프로세서 지원' 등 의미 있는 기능 들을 담고 있는 릴리즈입니다. 참고로 네할름 프로세서를 지원하는 최초의 운영체제는 OpenSolaris 2008.11 버전이며 업데이트 7은 솔라리스 10이 네할름을 지원하는 최초의 업데이트 버전입니다.
이번 릴리즈의 주요 내용들은 아래와 같습니다.
- 솔라리스 컨테이너 - 컨테이너를 클로닝(Cloning)하는데에 있어서 ZFS 파일시스템의 클로닝 기능을 이용하여 컨테이너 클로닝시 걸리는 시간과 용량을 현저히 절감할 수 있게 되었습니다.
- IPSec(Internet Protocol Security ) 기능의 SMF 통합 - IPSec 기능이 SMF(Solaris Service Manager Facility)와 결합되어 전체 보안 기능의 관리가 간소화되었습니다. 또한 Solaris Cluster의 인터커넥트 채널간의 통신에 IPSec 을 적용하여 페일오버(Fail over) 세션 간에 보다 빠르고 시큐어한 통신이 가능해졌습니다.
- LDom 기능 향상 - 가상 디스크(Virtual Disk) 기능 향상 및 VNET과 VSW의 점보 프레임 지원이 가능합니다.
- 인텔 Xeon 5500 프로세서 지원 최적화 - 향상된 멀티쓰레딩 기능인 인텔 하이퍼쓰레딩, CPU 스피드 지원 기술인 터보부스트, CPU 소켓간 인터커넥트 기술인 퀵패스 등 지원 및 최적화되었습니다.
- Power Aware Dispatcher - 솔라리스가 전력소모를 최소화하면서 최대의 성능을 낼 수 있도록 자동으로 시스템을 모니터하고 프로세스의 실행을 최적화할 수 있습니다. 인텔 네할름 프로세서의 새로운 Deep C-States 기능과 결합하면 아이들(idle) 상태의 코어에 의해서 소모되는 전력도 절감할 수 있습니다.
- CMT 시스템에서의 SSH 성능 향상 - UltraSPARC T2 프로세서를 장착한 시스템에서 프로세서 자체 장착된 암호화 가속기(Crypto Acceleration) 등을 이용하여 성능 향상이 있습니다.
- Sun Validation Test Suite (VTS) 업데이트 - 새로운 시스템의 진단정보를 지원하도록 업데이트되었습니다.
Solaris 10 5/09 What's New 컬렉션 문서를 통해서 본 상세한 업데이트 내용은 다음과 같습니다.
System Resources Enhancement
- 존 클로닝 시에 ZFS 클로닝 사용 지원 등 ZFS와 컨테이너의 결합
자세한 내용은 다음 포스트에서 다루겠습니다만 ZFS 파일시스템 위에 zonepath가 지정되는 경우 존 인스톨 시 자동으로 ZFS 데이터셋을 생성하는 기능 및 존 클로닝시 ZFS 파일시스템 위에 설치된 다른 존의 경로와 zonename을 부여하면 ZFS 파일시스템이 자동으로 클로닝되어 새로운 존을 생성하는데 걸리는시간과 공간을 절감할 수 있는 등 ZFS와 컨테이너가 통합된 기능들을 제공하고 있습니다.
- zoneadm attach -b 옵션 지원
업데이트 6에서 Update-on-attach라는 기능이 소개된 바 있습니다. Update-on-attach는 로컬 존을 Attach할 때 글로벌 존의 패치 버전이 높은 경우 기존에는 패치 버전이 상이하므로 Attach가 불가능했지만 업데이트 6 부터는 존을 Attach 할 때 패치 버전의 차이 만큼 패치를 자동으로 업데이트함으로서 존을 Attach 할 수 있는 기능입니다. 이번에 소개된 -b 옵션은 Update-on-attach가 일어날 때 특정 패치들은 제외할 수 있는 기능입니다. (오픈솔라리스의 IPS 패키지에는 적용 가능하지 않고 SVR4 패키지에만 적용 가능합니다.)
System Administration Enhancements
- IPsec의 SMF services를 통한 관리
IP 레이어에 보안 암호화를 하는 IPSec 프로토콜이 아래 4가지 서비스로 관리가 됩니다.
- svc:/network/ipsec/policy:default – 정책을 관리하는 서비스로 /etc/inet/ipsecinit.conf 파일을 체크하여 IPsec Security Policy Database (SPD)에 정책을 적용합니다. IPSec 서비스 사용을 위해서는 이 서비스가 항상 활성화돼 있어야 하고 부팅시에 IPSec 정책 구성을 위해 /etc/inet/ipsecinit.conf 파일이 있어야 합니다.
- svc:/network/ipsec/ike:default – Internet Key Exchange (IKE) 데몬을 관리하는 서비스입니다.
- svc:/network/ipsec/manual-key:default – manual-key 서비스는 /etc/inet/secret/ipseckeys 파일을 체크하여 IPsec Security Association Database (SADB)에 키를 제공하는 역할을 합니다. 기존에는 /etc/inet/secret/ipseckeys 파일만 존재하면 키를 제공할 수 있었지만 업데이트 7부터는 manual-key 서비스가 활성화 되어있어야 합니다.
- svc:/network/ipsec/ipsecalgs:default – 기본으로 활성화되어 있는 서비스로 솔라리스 암호화 프레임워크의 알고리즘(Solaris Cryptographic Framework algorithms)을 IPSec에 적용할 수 있는 서비스입니다.
IPSec이 Service Manager Facility를 통해 관리됨으로서 관리 인터페이스가 더 간결해지고, 서비스 가용성이 더 높아지며 장애 발생시 추적이 더 쉽게 되었습니다.
Security Enhancement
- NAT-Traversal for IPsec Key Management Developers
IPSec을 위한 NAT Traversal 의 엔드포인트 역할을 하는 API를 제공합니다. 이 기능을 통하여 IPSec 키관리 소프트웨어 개발자들이 NAT 디바이스를 통하는 키 관리 프로토콜을 개발할 수 있습니다.
- IPsec 알고리즘 강화.
Three larger Diffie-Hellman integer-modulus groups (2048-bit, 3072-bit, and 4096-bit) 지원
SHA2 including sha256, sha384, and sha512, SHA-2 using HMAC 지원
- SunSSH With OpenSSL PKCS#11 Engine 지원
Device Management Enhancements
- x86 : 인텔 프로세서의 T-State 모드를 지원
업데이트 7부터 전력관리 기능의 일환으로 프로세서 클럭 쓰로틀링(Processor Clock Throttling)을 지원합니다. 솔라리스가 펌웨어로부터 ACPI_TPC 메시지를 받으면 이에 따라 프로세서의 클럭 속도를 조절함으로서 전력소모를 줄일 수 있습니다. Marc Haywood의 블로그 포스팅에서 더 자세한 정보를 볼 수 있습니다.
System Performance Enhancements
- Intel PCI Express 10Gb NIC Driver에서 Large Segment Offload(LSO) 지원
ixgbe 드라이버에 대해서 LSO 기능을 지원합니다. 10GB Ethernet과 같이 고대역폭의 네트워크 장치에 대해서는 LSO가 더욱 중요하다 할 수 있는데, LSO를 통해 네트워크 전송에 있어 CPU의 오버헤드를 줄임으로서 전송 속도를 증가시킬 수 있습니다.
- Solaris Power Aware Dispatcher 및 인텔 네할름 프로세서의 Deep C-State지원
솔라리스 10의 인텔 네할름 지원에 대해서는 별도의 포스팅을 할 계획입니다만, 간단히 정리하자면 솔라리스 10의 CPU 전력 관리에 있어서 3가지 정도의 기능이 추가되었습니다.
- 이벤트 중심 CPU 전력 관리 - Power Aware Dispatcher 또는 커널 스케줄러가 CPU 사용량에 따라 전력소모를 최소화하는 방안으로 스케줄링을 하는데, 기존의 CPU 사용량을 확인하는 것은 솔라리스가 각 CPU에 대해 주기적으로 폴링(Polling)을 하여 가능하였지만, 이번 업데이트부터는 전력 관리가 가능한 종류의 CPU가 Power State가 변경될 때 발생시키는 이벤트에 따라 솔라리스 10이 CPU 사용량을 확인함으로서 전력을 더욱 절감할 수 있게 됩니다. 기본적으로 이벤트 중심 방법으로 되어 있지만 설정을 통해 폴링을 통해 하도록 변경할 수도 있습니다.
- 인텔 네할름 프로세서의 Deep C-State 지원 - 필요에 따라 코어를 아이들(Idle) 상태로 되돌림으로서 코어가 작업중이 아니더라도 단지 on 상태에 있는 것만으로도 소모되는 전력을 절감하는 Deep C-State를 지원합니다.
- 인텔 네할름 프로세서의 터보 모드 지원 - CPU 온도가 허용하는 수준에서 필요에 따라 코어의 동작 클럭을 높일 수 있는 기능인 터보 모드(turbo mode)를 지원합니다. 솔라리스 10에서는 kstat 커맨드를 통해서 터보 모드의 상태와 프로세서 클럭을 확인할 수 있습니다.
Developer Tools Enhancements
- SunVTS 7.0 Patch Set 5
Sun Validation Test Suit은 시스템 진단정보를 통해 시스템의 정상동작 여부를 테스트하는 소프트웨어인데 새로운 시스템에 대한 진단정보 등 많은 업데이트가 있었습니다.
- x86: CPU Performance Counter Updates for Intel Processors
최근의 프로세서들은 프로세서의 동작과 관련한 하드웨어 이벤트의 측정을 위해 하드웨어 성능 카운터를 가지고 있는데 업데이트 7부터 cputrack, cpustat 등의 커맨드를 통해 CPU 성능 카운터에 억세스할 수 있습니다.
- SUNWpatchutils Tool
패치를 관리하는 패키지에 업데이트가 있었습니다. 자세한 정보는http://cyberelk.net/tim/software/patchutils 페이지 참조
Driver Enhancements
- hermon Driver지원
- iSCSI Target 성능, 확장성, 호환성, 안정성 업그레이드
- x86: NetXen 10-GigE Device Driver지원
- Intel ICH10 and Hartwell NIC Support in E1000g Driver지원
- xge Driver Can Enable Multiple Receive Rings and MSI-X
Other Enhancements
- 카자흐스탄어 및 우크라이나어를 위한 로케일 지원
- SPARC: Fp-scrubber Daemon
참고
이번 포스트에서는 새 기능들을 간략하게 살펴보았는데요. 다음 포스트에서는 순서대로 'ZFS 클론을 이용한 Zone 클로닝' 및 '솔라리스 10의 Nahalm 지원'에 대해 자세하게 이야기해 보겠습니다.