본문 바로가기

기술 이야기/오픈소스

가상화와 소프트웨어 프로비저닝

오픈나루 전준식 이사님이 만든 KHAN 프로비저닝를 보고, 놀새~네 회사에서 가지고 있는 프로비저닝에 대한 차이점이 문득 궁금하여 기승전결 없이 그냥 나열하려고 합니다. Athena Peacock 프로비저닝도 이러한 제약사항에서 벗어나기는 힘들 것 같습니다.


솔루션이 만들어졌다면 과연 그 솔루션이 고객사에 있어 Must-have 솔루션이냐, Nice-to-Have 솔루션이냐에 따라 판매가 결정난다고도 볼 수 있습니다.


1. WEB/WAS 프로비저닝에 대해


"기술 지원 초기 이슈의 95% 는 구성과 튜닝의 문제"에 대한 부분을 살펴보면, 사실 지원을 받는 회사의 역량과 그 회사가 얼마만큼의 지식 관리 데이터를 가지고 있느냐에 따라 달라집니다.


대부분의 고객사는 프로비저닝에 대한 부분보다는 운영 중인 시스템에 대한 비용 지출이 99:1 정도의 비율을 보인다고 보는 게 맞을 것 같습니다. 게다가 고객사 환경, 시스템적인 특성을 모두 가지고 있기 때문에 모든 WEB/WAS가 천편 일률적인 구성을 가지기 보다는 성격을 파악하고 그에 맞는 시스템 구성을 하는 것이 일반적입니다. 


얼마전 저희 엔지니어라 15개 업무 프로젝트 시스템에 WEB/WAS를 설치할 때 시간이 얼마나 걸렸을까요? 한 세트 기본 구성에 나머지를 모두 디플로이하는 데 4시간 정도면 모든 시스템 구성을 완료할 수 있었습니다. 당연히 사람 손으로 하기 때문에 오류율이 높아질 수 있는데 대부분 고객사에서는 이러한 부분을 없애기 위한 다양한 스크립트를 준비해놓고 있기 때문에 4시간을 몇 분으로 줄일 수도 있습니다. 


중요한 사실은 설치가 문제가 아니라는 것이지요. 설치 이후의 설정 변경, 히스토리 관리, 관리 메타데이터와 운영 시스템 간의 설정 동기화, 긴급 상황의 엔지니어 직접 작업으로 인한 설정 변경 등 설치 이후에 발생하는 작업에 대한 관리가 운영 상에서 훨씬 더 중요하게 되는 것이니까요.


2. 가상화 템플릿을 활용


고객사의 가상화가 적용되기 시작하면서 WEB/WAS에 대한 표준 카탈로그(튜닝이 완료된)를 활용하여 찍어내기 수준으로 상황이 변하고 있습니다. 대규모 프로비저닝을 봤을 경우에는 WEB/WAS보다는 가상머신, 더 나아가 연계 프로세스까지 갖춘 클라우드 프로비저닝(+WEB/WAS 구성 변경)에 초점을 맞추는 것이 조금 좋을 것 같습니다. 


가상화 템플릿 이후의 WEB/WAS 설치는 약간 무의미 해졌을 수도 있습니다. 기업들은 전사에서 관리되고 있는 미들웨어, 애플리케이션 아키텍처를 표준화하여 구성, 운영 유지하고 싶어합니다. 고객사인 모 회사에서는 WEB/WAS 600여대에 달하는 시스템이 정확하게 하나의 구성으로 움직입니다. 


운영체제, 소프트웨어 버전이 업그레이드되면 한 세트에 최적의 상황을 묶어 템플릿화시켜버립니다. 그러면 소프트웨어 나올때마다 번거롭지 않나요? 라는 질문을 할 수 있습니다. 하지만 현실을 생각했을 때 운영팀에서 소프트웨어 하나를 우리 마음처럼 후딱 바꾸는 상황이 발생할까요? 구축, 테스팅 부터 다시 들어가야 하므로, 소프트웨어 자체를 바꾼다는 것 자체가 엄청난 일이라 생각할 게 분명합니다.


3. 표준 운영 환경으로의 전환


고객사 대부분의 관리자분들은 항상 표준 운영환경으로 가기 위해 십수년전부터 부지런히 노력을 해오고 있습니다. 표준으로 전환을 하기 위해서는 애플리케이션 영역부터 시스템 소프트웨어 영역까지 살펴봐야 합니다. 단순히 JBoss만을 프로비저닝할 수 있어도 쉽지 않을 겁니다. 그만큼 고객사 환경이 엄청나게 복잡하고, 앞서 언급된 것처럼 소프트웨어 전환 자체도 마이그레이션이란 용어를 사용하는 이유이기도 할 겁니다. 


대부분 기존 시스템의 표준 운영환경 전환이라는 용어는 업무 재개발(구축), 서버의 내용년수로 인한 교체시, 소프트웨어 감가상각 만료, 차세대 작업 등을 수행할 경우 끼워 맞출 수 있는 내용입니다. 즉, 전환하고 싶지만 전환을 할 수 없는 환경이 대부분이라는 거죠. 이러한 전환은 유지보수 업체 종속성 등을 제거할 수 있는 가장 효과적인 수단이 될 수는 있을겁니다.


4. 프로비저닝 솔루션은 누가 써야할까?


고객사 운영팀이 효과적으로 사용을 할 수 있을까요? 고객은 사실 안움직이는게 일반적입니다. 그냥 벤더나 기술지원을 받고 있는 파트너사에 전화를 하시지요. 왜요? 설정 바꿔달라구요. 운영 환경으로 들어간 이상 그 때부터 프러덕션 자동화에 대한 의심을 가지고 계시는 게 국내 고객들의 특성이라고나 할까요.


고객, 기술지원업체 모두 잘 활용할 수 있겠지만 앞선 사용자 특성을 고려하게 되면 기술지원업체의 엔지니어에게 유리한 솔루션이 아닐까 하는 생각이 듭니다. 


요즘처럼 복잡한 시스템과 운영환경에서는 WEB/WAS 프로비저닝만으로는 승부가 쉽지 않을 것 같다는 개인적인 생각입니다. 이로 인해 ALM(Application Lifecycle Management), VM Provisioning, ITSM 연계 등의 다양한 기능이 추가해야 고객에게 이점을 제공할 수 있을 것으로 봅니다.