2011.06.29

서버 가상화를 위한 하드웨어 구매 방법

Paul Venezia | InfoWorld
누군들 활용도가 떨어지는 물리적 서버를 즉각적으로 조절 가능한 여러 개의 가상서버로 구축하고 싶지 않겠는가? 하지만 안타깝게도 가상화의 효율성을 극대화하기 위해서는 목적에 적합한 새로운 인프라를 구축해야 한다.

단일 호스트 서버(Host Server)를 찾거나 완전히 가상화된 인프라를 추구하려고 할 때 몇몇 지침사항에 주의한다면, 모자라지도 넘치지도 않는 성능의 장비를 구매할 수 있다.

코어는 많을수록 좋다.
서버 구매는 일반적으로 CPU를 선택하는 것부터 시작된다. 그리고 가상화 호스트의 경우, 코어의 수가 대부분 각 코어의 속도보다 더 중요하다. 고작 1.7GHz 코어이긴 하지만 여러 개의 코어를 갖고 있는 서버가 얼마나 많은 가상 서버를 구동할 수 있는지 안다면 놀랄 것이다.

2.93GHz 웨스트미어 칩이 사용된 서버를 구매할 만한 충분한 예산이 있다면 이를 구매하긴 바란다. 하지만 각 CPU에 6개의 코어가 장착되어 있고 코어당 1.7~2.2GHz의 속도를 내는 AMD 옵테론 4000 시리즈 CPU로도 엄청난 속도를 체감할 수 있다. 이런 CPU 두 개를 장착한 서버 몇 대만으로도 중간 규모의 가상화 프레임워크를 충분히 마련할 수 있다.

"더 빠른 CPU, 더 빠른 서버"라는 전통적인 이론은 싱글 쓰레드(Single Thread)를 이용해 계산에 치중하는 작업에만 통하는 얘기다. 일반적으로 서버를 운영할 때, CPU는 상당히 긴 시간을 휴면(Idle)에 가까운 상태로 대기하게 된다.

또한 작업을 시작하더라도 기타 하부 시스템 때문에 CPU는 데이터가 디스크나 메모리, 네트워크에서 회수될 때까지 기다려야 하고, 이로 인해 작업 속도는 느려지게 된다. 낮은 클럭 속도의 6, 8, 또는 12코어 등의 CPU와 빠른 클럭속도의 4 또는 6코어 CPU 중에 선택을 해야 한다면 코어수가 많은 것을 고르는 편이 훨씬 이득이다.

최대 메모리
가상화 호스트를 구매할 때, 가능한 한 많은 메모리를 확보하기 바란다. 메모리의 용량은 얼마나 많은 가상 서버를 구동할 수 있는지에 가장 큰 영향을 끼친다. 12, 16, 또는 24코어가 장착된 서버에 64GB 이상의 램을 장착하면 이상적인 서버를 꾸밀 수 있다. 물론 메모리 가격의 비중은 확실히 높아진다.

물론 4GB와 8GB DIMM들은 2GB DIMM을 묶어서 구성할 때보다 훨씬 비싸다. 하지만 더 많은 용량의 메모리를 확보하기 위해서 물리적 서버의 수를 늘릴 수는 없지 않은가. 그리고 새로운 서버를 장만하고 나면, 추가적인 라이선스 구매에도 비용을 들여야 한다.

복수의 랙
또 한 가지 조언하자면, 서버 장애를 대비해 충분한 수의 물리적 서버를 확보하는 것이 중요하다. 요즘에는 서버에 화재가 발생하는 경우는 극히 드물지만, 여전히 발생하고 있으며, 재난에도 대비할 필요가 있다.

또한 정기적인 유지/보수 작업을 위한 안전망도 반드시 필요하다. 만약 나머지 서버들이 메모리나 일부 서버의 문제로 인해 발생한 추가 워크로드를 충분히 감당하지 못한다면, 문제가 발생한 DIMM을 교체하기 위해서 물리적 호스트의 접속을 15분간 끊을 수 없다는 말이 된다.

이는 예정된 고장시간의 단축이라는 서버 가상화의 이점을 전혀 누리지 못한다는 것을 의미하며, 심지어 더 더 큰 문제로 이어질 소지가 있다. 사용자는 물리적 서버를 보수하면서도 일부 가상서버를 유지해 전반적인 부하를 감소시키고자 했을지 모르겠다. 하지만 이런 일은 불가능하다. 따라서 최소한 N+1개 이상의 서버를 구축하는 것이 좋다.

스토리지 공유하기
모든 실제적인 가상화 플랫폼은 스토리지를 공유해야 한다. 그렇지 않으면 각 서버는 분리될 수밖에 없으며, 이렇게 분리된 서버에서 구동하는 VM들은 물리적 서버의 영향을 받게 된다. 또한 스토리지를 공유하지 않으면, 가상화된 인프라를 구축하고 확장하는 것이 더 힘들어지고 지루해진다. 사실 매우 작은 규모의 가상화 서버를 구축하는 것이 아니라면 스토리지 공유는 옵션사항이 아니다. 이는 반드시 지켜야 하는 규칙이다.

이를 위해서는 공유하는 스토리지 솔루션이 최대한 안정적이어야 한다. iSCSI, NFS, 파이버 채널의 사용 여부에 상관없이 스위치, HBA, 디스크 등을 구매하기에 앞서 디스크 I/O가 필요한지 반드시 확인하기 바란다.

범용적인 서버 가상화라면 대부분 SATA 드라이브만으로도 충분하다. 그리고 때로는 그날그날의 컴퓨팅에서 NFS가 iSCSI보다 더 나은 성능을 보일 수 있다. 이는 스토리지 업체들이 이야기하는 것과는 다른 방향이 되겠지만, 디스크에 상당한 작업부하가 걸리지 않는 한 처음부터 SSD나 SAS 기반 디스크 어레이를 사용할 필요는 없다.

사실 각 서버에 10G 정도의 작업 부하가 걸리지 않는 한, 이런 고속 스토리지 메커니즘은 의미가 없다. 그리고 저렴한 디스크가 확산되면서 전통적인 RAID5를 고수하기보다는 RAID6나 RAID10을 사용하는 것이 낫다. 이렇게 하면 용량이 줄어드는 것이 사실이다. 하지만 이로 인해 얻을 수 있는 성능과 안정성은 그 값어치가 충분하다고 할 수 있다.

네트워크 연결
네트워크를 구축할 때 복수의 1G 구리 링크를 사용하는 것이 10G 링크보다 훨씬 저렴하지만, 10G를 이용하면 엄청난 성장 잠재력을 확보할 수 있다는 사실을 잊지 말기 바란다. 추후에 가상서버 부하로 과중한 부담을 받는 소수의 고속 서버로 업그레이드하는 것보다 10G NIC로 업그레이드하는 것이 더 간단하고 비용도 저렴할 수 있다는 사실을 기억하자.

범용 가상 서버는 일반적인 서비스 트래픽이나 디스크 I/O에 10G를 사용하지는 않지만, 처리량이 많은 애플리케이션은 10G 네트워크가 필요할 수도 있다. 따라서 용도에 맞는 선택을 하는 것이 중요하다.

마지막으로 서버 가상화를 통해 자신의 인프라가 더 적은 물리적인 서버에 압축되기 때문에 발생 가능한 문제에 대한 준비를 철저히 할수록 더욱 안전해 진다는 사실을 기억하도록 하자. 그리고 소모 전력과 냉각에서 절약되는 돈으로 2차 스토리지 어레이를 마련해 운영하는 것이 비용을 좀 더 절약할 수 있는 방법이 될 것이다. 또한 고민도 훨씬 줄어들게 될 것이다.  editor@itworld.co.kr


2011.06.29

서버 가상화를 위한 하드웨어 구매 방법

Paul Venezia | InfoWorld
누군들 활용도가 떨어지는 물리적 서버를 즉각적으로 조절 가능한 여러 개의 가상서버로 구축하고 싶지 않겠는가? 하지만 안타깝게도 가상화의 효율성을 극대화하기 위해서는 목적에 적합한 새로운 인프라를 구축해야 한다.

단일 호스트 서버(Host Server)를 찾거나 완전히 가상화된 인프라를 추구하려고 할 때 몇몇 지침사항에 주의한다면, 모자라지도 넘치지도 않는 성능의 장비를 구매할 수 있다.

코어는 많을수록 좋다.
서버 구매는 일반적으로 CPU를 선택하는 것부터 시작된다. 그리고 가상화 호스트의 경우, 코어의 수가 대부분 각 코어의 속도보다 더 중요하다. 고작 1.7GHz 코어이긴 하지만 여러 개의 코어를 갖고 있는 서버가 얼마나 많은 가상 서버를 구동할 수 있는지 안다면 놀랄 것이다.

2.93GHz 웨스트미어 칩이 사용된 서버를 구매할 만한 충분한 예산이 있다면 이를 구매하긴 바란다. 하지만 각 CPU에 6개의 코어가 장착되어 있고 코어당 1.7~2.2GHz의 속도를 내는 AMD 옵테론 4000 시리즈 CPU로도 엄청난 속도를 체감할 수 있다. 이런 CPU 두 개를 장착한 서버 몇 대만으로도 중간 규모의 가상화 프레임워크를 충분히 마련할 수 있다.

"더 빠른 CPU, 더 빠른 서버"라는 전통적인 이론은 싱글 쓰레드(Single Thread)를 이용해 계산에 치중하는 작업에만 통하는 얘기다. 일반적으로 서버를 운영할 때, CPU는 상당히 긴 시간을 휴면(Idle)에 가까운 상태로 대기하게 된다.

또한 작업을 시작하더라도 기타 하부 시스템 때문에 CPU는 데이터가 디스크나 메모리, 네트워크에서 회수될 때까지 기다려야 하고, 이로 인해 작업 속도는 느려지게 된다. 낮은 클럭 속도의 6, 8, 또는 12코어 등의 CPU와 빠른 클럭속도의 4 또는 6코어 CPU 중에 선택을 해야 한다면 코어수가 많은 것을 고르는 편이 훨씬 이득이다.

최대 메모리
가상화 호스트를 구매할 때, 가능한 한 많은 메모리를 확보하기 바란다. 메모리의 용량은 얼마나 많은 가상 서버를 구동할 수 있는지에 가장 큰 영향을 끼친다. 12, 16, 또는 24코어가 장착된 서버에 64GB 이상의 램을 장착하면 이상적인 서버를 꾸밀 수 있다. 물론 메모리 가격의 비중은 확실히 높아진다.

물론 4GB와 8GB DIMM들은 2GB DIMM을 묶어서 구성할 때보다 훨씬 비싸다. 하지만 더 많은 용량의 메모리를 확보하기 위해서 물리적 서버의 수를 늘릴 수는 없지 않은가. 그리고 새로운 서버를 장만하고 나면, 추가적인 라이선스 구매에도 비용을 들여야 한다.

복수의 랙
또 한 가지 조언하자면, 서버 장애를 대비해 충분한 수의 물리적 서버를 확보하는 것이 중요하다. 요즘에는 서버에 화재가 발생하는 경우는 극히 드물지만, 여전히 발생하고 있으며, 재난에도 대비할 필요가 있다.

또한 정기적인 유지/보수 작업을 위한 안전망도 반드시 필요하다. 만약 나머지 서버들이 메모리나 일부 서버의 문제로 인해 발생한 추가 워크로드를 충분히 감당하지 못한다면, 문제가 발생한 DIMM을 교체하기 위해서 물리적 호스트의 접속을 15분간 끊을 수 없다는 말이 된다.

이는 예정된 고장시간의 단축이라는 서버 가상화의 이점을 전혀 누리지 못한다는 것을 의미하며, 심지어 더 더 큰 문제로 이어질 소지가 있다. 사용자는 물리적 서버를 보수하면서도 일부 가상서버를 유지해 전반적인 부하를 감소시키고자 했을지 모르겠다. 하지만 이런 일은 불가능하다. 따라서 최소한 N+1개 이상의 서버를 구축하는 것이 좋다.

스토리지 공유하기
모든 실제적인 가상화 플랫폼은 스토리지를 공유해야 한다. 그렇지 않으면 각 서버는 분리될 수밖에 없으며, 이렇게 분리된 서버에서 구동하는 VM들은 물리적 서버의 영향을 받게 된다. 또한 스토리지를 공유하지 않으면, 가상화된 인프라를 구축하고 확장하는 것이 더 힘들어지고 지루해진다. 사실 매우 작은 규모의 가상화 서버를 구축하는 것이 아니라면 스토리지 공유는 옵션사항이 아니다. 이는 반드시 지켜야 하는 규칙이다.

이를 위해서는 공유하는 스토리지 솔루션이 최대한 안정적이어야 한다. iSCSI, NFS, 파이버 채널의 사용 여부에 상관없이 스위치, HBA, 디스크 등을 구매하기에 앞서 디스크 I/O가 필요한지 반드시 확인하기 바란다.

범용적인 서버 가상화라면 대부분 SATA 드라이브만으로도 충분하다. 그리고 때로는 그날그날의 컴퓨팅에서 NFS가 iSCSI보다 더 나은 성능을 보일 수 있다. 이는 스토리지 업체들이 이야기하는 것과는 다른 방향이 되겠지만, 디스크에 상당한 작업부하가 걸리지 않는 한 처음부터 SSD나 SAS 기반 디스크 어레이를 사용할 필요는 없다.

사실 각 서버에 10G 정도의 작업 부하가 걸리지 않는 한, 이런 고속 스토리지 메커니즘은 의미가 없다. 그리고 저렴한 디스크가 확산되면서 전통적인 RAID5를 고수하기보다는 RAID6나 RAID10을 사용하는 것이 낫다. 이렇게 하면 용량이 줄어드는 것이 사실이다. 하지만 이로 인해 얻을 수 있는 성능과 안정성은 그 값어치가 충분하다고 할 수 있다.

네트워크 연결
네트워크를 구축할 때 복수의 1G 구리 링크를 사용하는 것이 10G 링크보다 훨씬 저렴하지만, 10G를 이용하면 엄청난 성장 잠재력을 확보할 수 있다는 사실을 잊지 말기 바란다. 추후에 가상서버 부하로 과중한 부담을 받는 소수의 고속 서버로 업그레이드하는 것보다 10G NIC로 업그레이드하는 것이 더 간단하고 비용도 저렴할 수 있다는 사실을 기억하자.

범용 가상 서버는 일반적인 서비스 트래픽이나 디스크 I/O에 10G를 사용하지는 않지만, 처리량이 많은 애플리케이션은 10G 네트워크가 필요할 수도 있다. 따라서 용도에 맞는 선택을 하는 것이 중요하다.

마지막으로 서버 가상화를 통해 자신의 인프라가 더 적은 물리적인 서버에 압축되기 때문에 발생 가능한 문제에 대한 준비를 철저히 할수록 더욱 안전해 진다는 사실을 기억하도록 하자. 그리고 소모 전력과 냉각에서 절약되는 돈으로 2차 스토리지 어레이를 마련해 운영하는 것이 비용을 좀 더 절약할 수 있는 방법이 될 것이다. 또한 고민도 훨씬 줄어들게 될 것이다.  editor@itworld.co.kr


X