1. 정보시스템 하드웨어 규모산정의 개요
(1) 정보시스템 하드웨어 규모산정의 개념
| 구분 | 정의 | 관점 | 시간성 |
|---|---|---|---|
| 용량관리 | 업무 요구사항을 충족시키기 위한 현재와 미래의 용량계획을 수립하고 비용(Cost)과 용량(Capacity)의 균형을 맞추는 것 | 조직 | 지속적 |
| 용량계획 | 개략적인 시스템 아키텍처와 응용 업무를 기반으로 시스템에 요구되는 성능 요구사항과 성능을 결정하기 위한 계획 | 조직, 시스템 | 지속적 |
| 규모산정 | 기본적인 용량과 성능 요구사항이 제시되었을 때, 그것을 시스템 요구사항으로 변환하는 것 | 시스템 | 일시적 |
(2) 정보시스템 하드웨어 규모산정 방법
| 방법 | 세부 방식 | 특징 |
|---|---|---|
| 수식계산법 | 사용자 수 등 규모사정을 위한 수요를 토대로 용량 수치를 계산하고 보정치를 적용 | – 초기 계획 가능 – 산정 용이 |
| 참조법 | 업무량(사용자 수, DB 크기)따라, 기본 데이터를 토대로 대략적 시스템 규모를 비교하여 비슷한 규모를 산정 | – 경험기반 산정 – 유사 산업 유리 |
| 시뮬레이션법 | 대상 업무에 대한 작업부하를 모델링하고 이를 시뮬레이션하여 규모를 산정 | – 모델링 수행 – 높은 정밀도/비용 |
(3) 정보시스템 하드웨어 규모산정의 대상
| 대상 | 상세 설명 | 특징 |
|---|---|---|
| CPU | 해당 업무 처리를 위해 CPU 규모를 계산한 후, 적정 성능의 서버 기종 선정 | OLTP, WEB/WAS 작업 부하 특성 반영 |
| 메모리 | CPU 규모 산정에 따른 서버 구성 방안에 의거, 서버별 시스템 S/W, 응용 프로그램 등의 메모리 사용량 산정 | 메모리 유형/용량 |
| 디스크 | CPU 규모 산정에 따른 서버 구성 방안에 의거, 서버별 OS, 시스템 S/W, DB 의 데이터, DB 의 아카이브 및 백업 영역 산정 | SW 및 데이터별 용량 검토 |
| 스토리지 | CPU 를 기준으로 산정된 서버 규모 따라 필요 스토리지 산정 | IOPS 성능 검토 |
- 규모 산정 시 사용되는 성능 측정치로 OLTP용 CPU는 tpmC, WEB/WAS용 CPU는 max-jOPS, 스토리지는 IOPS를 사용하고, 성능 참조 기준으로 OLTP용 CPU는 TPC-C, WEB/WAS용 CPU는 SPECjbb2015, 스토리지는 SPC-1 준용
2. 하드웨어 규모산정 절차
(1) 하드웨어 규모산정 절차도
(2) 하드웨어 규모산정 절차의 주요 활동
| 단계 | 주요 활동 | 세부 활동 내용 |
|---|---|---|
| 구축방향 및 자료조사 | 구축 방향 파악 | – 전체 시스템에 포함되는 대략적 서버 수, 통신 환경 파악 – APP 아키텍처(2-계층, 3-계층), 업무 성격, 정보 흐름 파악 |
| 기초 자료 조사 | – 공통/OLTP : 응답속도, 최대 사용자, 업무 내용 등 조사 – WEB/WAS : 시스템 용도, 서비스 형태, 사용자 수 등 조사 | |
| 업무 분석 | 기준 부하 산정 | – OLTP: 동시 사용자 수 및 분당 트랜잭션 수(TPM) 산정 – WEB/WAS: 동시 사용자 및 세션 수, 단위 오퍼레이션 산정 |
| 업무 내용 검증 | – 비즈니스 요구사항 포함, 트랜잭션 타입, 특성, 가중치 – 온라인/배치 구분, 요구시간, 처리 볼륨, 복잡성 분석 | |
| 참조모델 결정 및 서버 규모산정 | 참조 모델 선택 | – 참조모델 1 : WEB/WAS/DB 가 단일 서버에서 처리 – 참조모델 2 : WEB/WAS 와 DB 서버를 분리 – 참조모델 3 : WEB, WAS, DB 서버를 각각 분리 |
| 요소별 규모산정 | – 2 단계에서 조사된 업무 분석 자료 기반 보정 계수 설정 – CPU, 메모리, 디스크 구성요소에 대해 각각 규모 산정 수행 | |
| 참조모델별 가중치 적용 | 참조모델 1 적용 | – 총 2.1 적용 (WEB : 0.4, WAS : 0.7, DB : 1) – WEB/WAS/DB 역할을 동시에 수행하여, 가중치 적용 |
| 참조모델 2 적용 | – WEB/APP, DB 구성의 경우, 1.6 적용 (WEB : 0.6, WAS : 1) – WEB, APP/DB 구성의 경우, 1.7 적용 (APP : 0.7, DB : 1) | |
| 참조모델 3 적용 | – 별도의 서버 가중치 미적용 ( WEB: 1, WAS: 1, DB: 1) |
- 서버별로 규모산정 항목에 따라 규모산정이 완료되면, 아키텍처 형태에 따라 서버별 가중치를 적용하여 최종적인 규모산정 값을 산출
3. 하드웨어 규모산정 요소별 가중치 적용 방식
(1) CPU 가중치 적용 방식
1) OLTP용 CPU 가중치 적용 방식
| 산정 항목 | 내용 | 적용 범위 | 일반값 |
|---|---|---|---|
| 분당 트랜잭션 수 | 분당 트랜잭션 발생 추정치의 합 | – | 업무 수: 2 업무당 트랜잭션 수: 4~6개 |
| 기존 tpmC 보정 | tpmC 수치를 복잡한 실제 환경에 맞게 적용하기 위한 보정치 | – | 5 |
| 피크타임 부하 보정 | 업무 과중 시간대 원활하게 운영될 수 있도록 피크타임을 고려한 보정치 | 1.2 ~ 1.5 | 1.3 |
| 데이터베이스 크기 보정 | 데이터베이스 테이블의 레코드 건수와 전체 DB 볼륨을 고려한 보정치 | 1.5 ~ 2.0 | 1.7 |
| 애플리케이션 구조 보정 | App의 구조와 요구되는 응답 시간에 따른 성능 차이를 고려한 보정치 | 1.1 ~ 1.5 | 1.2 |
| 애플리케이션 부하 보정 | 온라인 작업 피크타임에 배치 작업 동시 수행을 고려한 보정치 | 1.3 ~ 2.2 | 1.7 |
| 연계 부하 보정 | 타 시스템과의 연계로부터 발생하는 작업부하를 고려한 보정치 | 1 ~ 1.2 | 1 |
| 클러스터 보정 | 클러스터 환경에서 장애 발생 시를 대비한 보정치 | 2노드 1.4 ~ 1.5 3노드 1.3 | – |
| 시스템 여유율 | 예기치 못한 업무 증가를 고려한 추가 여유 정도 | 1.3 | |
| 시스템 목표 활용률 | 시스템 안정운영을 전제로한 최대 CPU 활용 목표 | 0.7 | |
| CPU(tpmC 단위) = (분당 트랜잭션 수 * 기본 tpmC 보정 * 피크타임 부하 보정 * DB 크기 보정 * 애플리케이션 구조 보정 * 애플리케이션 부하 보정 * 연계 부하보정 * 클러스터 보정 * 시스템 여유율) / 시스템 목표 활용률 | |||
2) WEB/WAS용 CPU 가중치 적용 방식
| 산정 항목 | 내용 | 적용 범위 | 일반값 |
|---|---|---|---|
| 동시 사용자 수 | 시스템을 동시 사용하는 사용자 수 | – | 산정값 |
| 사용자당 오퍼레이션 수 | 사용자 당 1초에 발생시키는 오퍼레이션 수 | 3~6개 | 5개 |
| 기본 OPS 보정 | ops 수치를 복잡한 실제 환경에 맞게 적용하기 위한 보정치 | – | 3 |
| 업무용도 보정 | 적용 대상 시스템 유형에 따른 보정치 | – | WEB: 0.7 WAS: 2 |
| 인터페이스 부하 보정 | 서버간 통신 시 인터페이스 발생 부하를 고려한 보정치 | 1.1 ~ 1.2 | 1.1 |
| 피크타임 부하 보정 | 급격한 부하 발생을 해결하기 위한 보정치 | 1.2 ~ 1.5 | 1.3 |
| 연계 부하 보정 | 타 시스템과 연계로부터 발생하는 작업 부하를 고려한 보정 | 1 ~ 1.3 | 1 |
| 클러스터 보정 | 클러스터 환경에서 장애 발생을 대비한 보정 | 2노드: 1.4 ~ 1.5 3노드: 1.3 | – |
| 시스템 여유율 | 예기치 못한 업무의 증가를 고려한 추가 여유 정도 | 1.3 | – |
| 시스템 목표 활용률 | 시스템의 안정 운영을 전제로 한 최대 CPU 활용 목표 | 0.7 | – |
| 단위 보정 | 산정결과를 max-jOPS 단위로 변환하는 환산치 | 24 ~ 31 | – |
| CPU(max-jOPS단위) = (동시 사용자 수 * 사용자당 오퍼레이션 수 * 기본 OPS보정 * 업무용도 보정 * 인터페이스 부하보정 * 피크타임 부하보정 * 연계부하보정 * 클러스터 보정 * 시스템 여유율) / (시스템 목표 활용률 * 단위 보정) | |||
(2) 메모리 가중치 적용 방식
| 산정 항목 | 내용 | 적용 범위 | 일반값 |
|---|---|---|---|
| 시스템 영역 | OS, DBMS 엔진, 미들웨어 엔진, 기타 유틸리티 등의 소요공간 | – | 산정값 |
| 사용자당 필요 메모리 | App, 미들웨어, DBMS 사용에 필요한 사용자 당 메모리 | 1 ~ 3 MB | 2 MB |
| 동시 사용자 수 | 소프트웨어나 시스템을 네트워크 상에서 동시에 사용하는 사용자 | – | 산정값 |
| OS 버퍼 캐시 보정 | 처리 속도 향상을 위해 일정량의 데이터를 임시로 저장하기 위한 보정치 | 1.1 ~ 1.3 | 1.15 |
| 애플리케이션 필요 메모리 | DBMS 공유메모리, WAS heap size 등 미들웨어에서 사용하는 캐시 영역 | – | 산정값 |
| 시스템 여유율 | 시스템의 안정된 운영을 위한 보정치 | 1.3 | – |
| 메모리(MB단위) = {시스템 영역 + (사용자당 필요 메모리 * 사용자 수) + 애플리케이션 필요 메모리} * 버퍼 캐시 보정 * 시스템 여유율 | |||
(3) 디스크 가중치 적용 방식
| 산정 항목 | 내용 | 적용 범위 | 일반값 |
|---|---|---|---|
| 시스템 OS 영역 | 운영체제 및 시스템 소프트웨어 등을 위한 영역 | – | 산정값 |
| 응용 프로그램 영역 | 미들웨어 및 응용 소프트웨어, 데이터베이스, 기타 유틸리티 설치 영역 | – | 산정값 |
| 스와프(SWAP) 영역 | 시스템 장애 시 덤프 역할, 메모리 대용의 효율적 수행 위한 작업 공간 | – | 산정값 |
| 파일 시스템 오버헤드 | 슈퍼 유저 관리 및 I-node Overhead, 슈퍼 블럭 등 파일 관리 공간 | – | 1.1 |
| 시스템/데이터 디스크 여유율 | 시스템 안정 운영을 위한 보정으로 업무의 중요도/긴급도 감안 | 1 ~ 1.5 | 1.3 |
| 데이터 영역 | 실제 필요한 데이터량 | – | 산정값 |
| 백업 영역 | 데이터 및 데이터 변경 내역 정보 등 백업 위한 공간 | – | 산정값 |
| RAID 여유율 | RAID 적용 시 패리티로 사용되는 공간을 위한 보정치 | – | RAID 1: 2.0 RAID 5: 1.3 RAID 6: 1.4 |
| 시스템 디스크 = (시스템 OS 영역 + 응용 프로그램 영역 + SWAP 영역) * 파일 시스템 오버헤드 * 시스템 디스크 여유율 * RAID 여유율 데이터 디스크 = (데이터 영역 + 백업 영역) * 파일 시스템 오버헤드 * 데이터 디스크 여유율 * RAID 여유율 | |||
(4) 스토리지 가중치 적용 방식
| 구분 | 성능당 IOPS 비율 | 예시 |
|---|---|---|
| OLTP 서버 | 3% | 125,000 tpmC 일 때, IOPS 값은 3,750 IOPS |
| Batch 서버 | 1% | 125,000 tpmC 일 때, IOPS 값은 1,250 IOPS |
- 3~5년의 시스템 생명주기와 운영 전략에 따른 가중치를 고려하고 하드웨어 제약사항과 향후 확장 가능성에 따라 규모산정 필요
[참고]
– 한국정보통신기술협회(TTA), 정보시스템 하드웨어 규모산정 지침(TTAK.KO-10.0292/R3), 2023. 12