2015.11.27

가상 환경에서의 3가지 과제를 극복하는 방법

Kong Yang, SolarWinds Head Geek | Network World
가상화는 성숙기에 접어든 기술이다. 그러나 가상화 환경을 잘 관리하지 못하면 재앙을 초래할 수 있다.

유연성, 확장성, 비용 절감이라는 장점 대신 보안 위험, 자원 낭비, 인프라 성능 저하 등의 단점이 커질 수 있다는 얘기다. 이런 점을 감안했을 때, 가상화 환경에서 자주 직면하는 문제와 이를 해결하는 방법을 이해하는 것이 중요하다.

가상화 환경의 문제는 VM 확장(Sprawl) 현상, 용량 계획, 그리고 변화 관리 등 크게 3가지로 나눌 수 있다. 이들 문제와 해결 방법을 조금 더 자세히 설명해보자.

VM 확장 현상을 해결하라
가상화 관리 업무 종사자라면 VM 확장(Sprawl) 문제를 잘 알고 있을 것이다. 가상화 환경에서 무분별하게 가상 머신(VM)이 증가하는 문제다. 계획 없이 VM을 생성하는 바람에 확장 문제가 발생할 수도 있다.

또한 특정 수명주기 동안만 배치해야 하지만, 일상적인 IT 운영 과정에 퇴역시키지 못한 '악성' VM이 확장 문제를 초래하는 사례도 많다.

이 문제는 자동으로 VM을 생성해 프로비저닝하는 기능과 관련이 있다. 관리자가 일상 운영 과정에 VM 전체를 추적하기가 점차 더 어려워진다. 특히 대기업에서 자주 발생하는 문제다.

관리자가 여러 클러스터, 데이터센터, 지역에 흩어진 수만 개의 방대한 VM과 가상 환경을 모니터해야 하기 때문이다. 더 큰 문제는, 시간이 지나면서 확장 문제가 발생하기 때문에 이를 인식하기가 어렵다는 것이다.

VM 확장 문제를 해결하지 못하면 시간, 돈, 자원이 낭비된다. 또한 패칭되지 않은 구형 VM으로 인해 보안과 컴플라이언스(규제 준수)에 문제가 생긴다. 그러나 확장을 억제할 방법이 있다. 다음은 확장 문제를 극복할 수 있는 방법들이다.

- VM 요청과 승인에 공식적인 프로세스를 적용
- 각 VM 별로 수명주기 동안의 계획을 문서화(책임자, 대상, 시기, 이유, 장소 등 세부 사항 기록)
- 방치 또는 미활용 상태인 VM을 파악하기 위해 VM 자원 활용도를 모니터링하고, 활용도와 관련된 기준을 수립(이는 보안 이상 현상 파악에도 도움을 줌)
- 역할을 기준으로 액세스를 관리
- 가상화 관리 도구를 이용해 이런 작업을 단순화


앞서 설명한 내용을 실현하는 경우에도, 현재 위협 환경을 감안했을 때 안전에 만전을 기하는 것이 좋다. 관리자는 다음과 같은 베스트 프랙티스를 적용, VM 확장이 초래하는 보안 위험으로부터 가상 환경을 보호할 수 있다.

- 역할 기준 액세스 관리로 가상 환경 자원에 대한 액세스를 분리
- VM 사이의 트래픽을 로그로 기록하고 모니터링. 정기적으로 로그에 이상 트래픽이 있는지 파악
- VM 파일 폴더를 잠그고 모니터링(이는 해커가 특정 시스템의 루트를 통제할 수 있는 권한을 얻어, 환경 내에서 통신을 가로채는 등의 루트 킷 해킹을 방지하는데 도움을 줌)
- 호스트 서버의 행위와 이벤트에 대한 로그를 유지(VM웨어에서 링크된 방법으로, 또는 마이크로소프트의 이벤트 뷰어(Event Viewer)를 이용)


용량 계획 및 적합한 크기를 조정하라
가상 환경에서의 용량 계획(Capacity Planning)이란 자원을 낭비하지 않으면서 애플리케이션의 QoS(Quality-of-Service)에 부합하도록 VM에 자원을 할당하는 것을 가리킨다.

이는 아주 중요하다. VM을 적절한 크기로 조정하지 않을 경우, 가상화를 대표하는 '가장 효율적인 자원 활용'이라는 가치 제안이 저해되고, 투자 수익(ROI)이 감소하기 때문이다.

가상 자원에는 제한이 없다는 인식이 용량 계획과 관련된 문제를 초래하는 사례가 많다. 이와 관련, 웹 서핑과 이메일에만 사용하는 VM 하나에 2vCPU, 16GB RAM, 1TB 디스크 등 최대 용량을 요청하는 사례가 많다.

다시 말해, 실제 워크로드 지원에 필요한 것보다 많은 자원(스토리지, 메모리, vCPU 등)이 할당된 VM이 많다.

이는 자원 낭비와 ROI 하락을 초래한다. 또한 더 심각한 문제로 이어질 수 있다. 예를 들어, 물리적 스토리지 공간이 증가하면서 데이터 무결성 문제와 VM 성능 저하 문제가 발생할 수 있다.

그리고 가상화 자원의 크기를 잘못 판단할 경우, 비즈니스 부서들이 자신에게 필요한 인프라를 충족하기 위해 다른 공급업체로 발길을 돌릴 수 있다. 퍼블릭 클라우드 서비스, IT가 아웃소싱 하는 서비스가 여기에 해당된다.

시간을 투자해 용량을 계획하는 것이 아주 중요하다. 이제 그 방법을 알아보자.
현실적으로 VM 용량 계획과 적합한 크기 조정에는 시간과 경험, 성능 분석 및 모델링 등 기술이 필요하다.

이때, 환경에 대한 역사적 데이터를 자동 분석해 확장 현황을 알려주고, 현재 활용 패턴, 역사적인 증가 추세 등을 바탕으로 향후 확장 상태를 예측해주는 도구를 이용해 학습 곡선을 줄일 수 있다. 이런 도구들은 다음과 같은 사항들을 지원할 수 있어야 한다.

- VM이 지나치게 많은지, 적은지 파악
- 자원 활용도를 실시간 모니터링, 용량 문제가 발생하기 전에 이를 파악(이는 관리자가 문제 발생 전에 병목을 찾아 없애도록 도움을 줌)
- 클러스터 공유 자원, 데이터 스토어, VM의 자원 부족(또는 부족 가능성)을 경고, 이를 방지하는 대책을 수립할 수 있도록 지원
- 역사적인 추세를 이용해 자원이 소진되는 시기를 예측
- 환경에 새 자원을 추가했을 때 발생할 현상을 예측
- 애플리케이션/워크로드 수준에서 용량 활용도를 제시(이는 비즈니스 우선순위에 따라 용량을 결정할 수 있게끔 지원)


변화 관리를 능률적으로 시행하라
가상화 기술이 성숙기에 접어들었기 때문에 DRS(Dynamic Resource Scheduling), 하이퍼바이저 메모리 관리, 기타 하이퍼바이저 강화 기능을 이용해 애플리케이션 QoS를 크게 높일 수 있다.

그러나 이로 인해, 관리자는 아주 복잡한 변화 관리 시나리오를 직면해야 한다.

이런 기능과 다른 하이퍼바이저 중심의 기술이 초래하는 도전 과제로는 DRS나 로드 밸런싱 체계에 따라 VM이 클러스트의 호스트를 끊임없이 이동하며 옮겨다니는 문제를 예로 들 수 있다.

애플리케이션이 제대로 기능할 때는 문제가 없다. 그러나 최종 사용자가 전반적인 성능이나 QoS에 대해 불평할 경우, 관리자는 애플리케이션이 위치한 가상 데이터센터를 찾고, 성능 저하를 초래한 문제점을 파악해야 한다. 다음은 가상 환경의 변화를 더 능률적으로 관리할 수 있는 방법이다.

- 정기적으로 가상 자산을 탐색해 VM의 위치와 연결 방식을 파악
- 정기적으로 가상 환경의 상태를 점검해 데이터센터의 상태와 위험에 대한 '시간'대 별 기준을 수립


이렇게 하면 가상 환경의 변화를 사전 관리할 수 있다.

VM 확장, 잘못된 용량 계획, 비능률적인 변화 관리는 데이터센터 경합(Contention) 문제가 반복해 발생하도록 만들 수 있다. 지금까지 설명한 베스트 프랙티스를 적용하면, 이런 과제를 충분히 극복하고, 더 안전하고 효율적인 가상 환경을 구현할 수 있다. editor@itworld.co.kr



2015.11.27

가상 환경에서의 3가지 과제를 극복하는 방법

Kong Yang, SolarWinds Head Geek | Network World
가상화는 성숙기에 접어든 기술이다. 그러나 가상화 환경을 잘 관리하지 못하면 재앙을 초래할 수 있다.

유연성, 확장성, 비용 절감이라는 장점 대신 보안 위험, 자원 낭비, 인프라 성능 저하 등의 단점이 커질 수 있다는 얘기다. 이런 점을 감안했을 때, 가상화 환경에서 자주 직면하는 문제와 이를 해결하는 방법을 이해하는 것이 중요하다.

가상화 환경의 문제는 VM 확장(Sprawl) 현상, 용량 계획, 그리고 변화 관리 등 크게 3가지로 나눌 수 있다. 이들 문제와 해결 방법을 조금 더 자세히 설명해보자.

VM 확장 현상을 해결하라
가상화 관리 업무 종사자라면 VM 확장(Sprawl) 문제를 잘 알고 있을 것이다. 가상화 환경에서 무분별하게 가상 머신(VM)이 증가하는 문제다. 계획 없이 VM을 생성하는 바람에 확장 문제가 발생할 수도 있다.

또한 특정 수명주기 동안만 배치해야 하지만, 일상적인 IT 운영 과정에 퇴역시키지 못한 '악성' VM이 확장 문제를 초래하는 사례도 많다.

이 문제는 자동으로 VM을 생성해 프로비저닝하는 기능과 관련이 있다. 관리자가 일상 운영 과정에 VM 전체를 추적하기가 점차 더 어려워진다. 특히 대기업에서 자주 발생하는 문제다.

관리자가 여러 클러스터, 데이터센터, 지역에 흩어진 수만 개의 방대한 VM과 가상 환경을 모니터해야 하기 때문이다. 더 큰 문제는, 시간이 지나면서 확장 문제가 발생하기 때문에 이를 인식하기가 어렵다는 것이다.

VM 확장 문제를 해결하지 못하면 시간, 돈, 자원이 낭비된다. 또한 패칭되지 않은 구형 VM으로 인해 보안과 컴플라이언스(규제 준수)에 문제가 생긴다. 그러나 확장을 억제할 방법이 있다. 다음은 확장 문제를 극복할 수 있는 방법들이다.

- VM 요청과 승인에 공식적인 프로세스를 적용
- 각 VM 별로 수명주기 동안의 계획을 문서화(책임자, 대상, 시기, 이유, 장소 등 세부 사항 기록)
- 방치 또는 미활용 상태인 VM을 파악하기 위해 VM 자원 활용도를 모니터링하고, 활용도와 관련된 기준을 수립(이는 보안 이상 현상 파악에도 도움을 줌)
- 역할을 기준으로 액세스를 관리
- 가상화 관리 도구를 이용해 이런 작업을 단순화


앞서 설명한 내용을 실현하는 경우에도, 현재 위협 환경을 감안했을 때 안전에 만전을 기하는 것이 좋다. 관리자는 다음과 같은 베스트 프랙티스를 적용, VM 확장이 초래하는 보안 위험으로부터 가상 환경을 보호할 수 있다.

- 역할 기준 액세스 관리로 가상 환경 자원에 대한 액세스를 분리
- VM 사이의 트래픽을 로그로 기록하고 모니터링. 정기적으로 로그에 이상 트래픽이 있는지 파악
- VM 파일 폴더를 잠그고 모니터링(이는 해커가 특정 시스템의 루트를 통제할 수 있는 권한을 얻어, 환경 내에서 통신을 가로채는 등의 루트 킷 해킹을 방지하는데 도움을 줌)
- 호스트 서버의 행위와 이벤트에 대한 로그를 유지(VM웨어에서 링크된 방법으로, 또는 마이크로소프트의 이벤트 뷰어(Event Viewer)를 이용)


용량 계획 및 적합한 크기를 조정하라
가상 환경에서의 용량 계획(Capacity Planning)이란 자원을 낭비하지 않으면서 애플리케이션의 QoS(Quality-of-Service)에 부합하도록 VM에 자원을 할당하는 것을 가리킨다.

이는 아주 중요하다. VM을 적절한 크기로 조정하지 않을 경우, 가상화를 대표하는 '가장 효율적인 자원 활용'이라는 가치 제안이 저해되고, 투자 수익(ROI)이 감소하기 때문이다.

가상 자원에는 제한이 없다는 인식이 용량 계획과 관련된 문제를 초래하는 사례가 많다. 이와 관련, 웹 서핑과 이메일에만 사용하는 VM 하나에 2vCPU, 16GB RAM, 1TB 디스크 등 최대 용량을 요청하는 사례가 많다.

다시 말해, 실제 워크로드 지원에 필요한 것보다 많은 자원(스토리지, 메모리, vCPU 등)이 할당된 VM이 많다.

이는 자원 낭비와 ROI 하락을 초래한다. 또한 더 심각한 문제로 이어질 수 있다. 예를 들어, 물리적 스토리지 공간이 증가하면서 데이터 무결성 문제와 VM 성능 저하 문제가 발생할 수 있다.

그리고 가상화 자원의 크기를 잘못 판단할 경우, 비즈니스 부서들이 자신에게 필요한 인프라를 충족하기 위해 다른 공급업체로 발길을 돌릴 수 있다. 퍼블릭 클라우드 서비스, IT가 아웃소싱 하는 서비스가 여기에 해당된다.

시간을 투자해 용량을 계획하는 것이 아주 중요하다. 이제 그 방법을 알아보자.
현실적으로 VM 용량 계획과 적합한 크기 조정에는 시간과 경험, 성능 분석 및 모델링 등 기술이 필요하다.

이때, 환경에 대한 역사적 데이터를 자동 분석해 확장 현황을 알려주고, 현재 활용 패턴, 역사적인 증가 추세 등을 바탕으로 향후 확장 상태를 예측해주는 도구를 이용해 학습 곡선을 줄일 수 있다. 이런 도구들은 다음과 같은 사항들을 지원할 수 있어야 한다.

- VM이 지나치게 많은지, 적은지 파악
- 자원 활용도를 실시간 모니터링, 용량 문제가 발생하기 전에 이를 파악(이는 관리자가 문제 발생 전에 병목을 찾아 없애도록 도움을 줌)
- 클러스터 공유 자원, 데이터 스토어, VM의 자원 부족(또는 부족 가능성)을 경고, 이를 방지하는 대책을 수립할 수 있도록 지원
- 역사적인 추세를 이용해 자원이 소진되는 시기를 예측
- 환경에 새 자원을 추가했을 때 발생할 현상을 예측
- 애플리케이션/워크로드 수준에서 용량 활용도를 제시(이는 비즈니스 우선순위에 따라 용량을 결정할 수 있게끔 지원)


변화 관리를 능률적으로 시행하라
가상화 기술이 성숙기에 접어들었기 때문에 DRS(Dynamic Resource Scheduling), 하이퍼바이저 메모리 관리, 기타 하이퍼바이저 강화 기능을 이용해 애플리케이션 QoS를 크게 높일 수 있다.

그러나 이로 인해, 관리자는 아주 복잡한 변화 관리 시나리오를 직면해야 한다.

이런 기능과 다른 하이퍼바이저 중심의 기술이 초래하는 도전 과제로는 DRS나 로드 밸런싱 체계에 따라 VM이 클러스트의 호스트를 끊임없이 이동하며 옮겨다니는 문제를 예로 들 수 있다.

애플리케이션이 제대로 기능할 때는 문제가 없다. 그러나 최종 사용자가 전반적인 성능이나 QoS에 대해 불평할 경우, 관리자는 애플리케이션이 위치한 가상 데이터센터를 찾고, 성능 저하를 초래한 문제점을 파악해야 한다. 다음은 가상 환경의 변화를 더 능률적으로 관리할 수 있는 방법이다.

- 정기적으로 가상 자산을 탐색해 VM의 위치와 연결 방식을 파악
- 정기적으로 가상 환경의 상태를 점검해 데이터센터의 상태와 위험에 대한 '시간'대 별 기준을 수립


이렇게 하면 가상 환경의 변화를 사전 관리할 수 있다.

VM 확장, 잘못된 용량 계획, 비능률적인 변화 관리는 데이터센터 경합(Contention) 문제가 반복해 발생하도록 만들 수 있다. 지금까지 설명한 베스트 프랙티스를 적용하면, 이런 과제를 충분히 극복하고, 더 안전하고 효율적인 가상 환경을 구현할 수 있다. editor@itworld.co.kr



X