[CIO BIZ+/기고] 시스템 장애는 왜 두 번 일어났을까

Photo Image

2011년 3월 11일, 일본 도호쿠(東北) 지방에서 발생한 대지진 3일후 일본에서 가장 규모가 큰 은행인 미즈호은행의 시스템에 장애가 발생했다. 재난의연금 이체가 지연되기 시작하더니, 은행 각 지점의 시스템을 사용할 수 없게 되고 급기야 ATM 거래마저 정지되는 사태로까지 확대되고 만 것이다. 데이터센터가 쓰나미 때문에 물에 잠긴 것도 아닌데, 왜 시스템 장애가 발생했던 것일까. 이 장애를 해결하는 데 무려 열흘이나 걸렸다. 더군다나 미즈호은행은 9년 전에도 비슷한 장애가 발생했었다고 하는데 이것은 단지 우연이었을까.

우리 생활은 이미 IT와 너무나 밀접하게 관련되어 있다. 900만원짜리 주식 한 주를 팔겠다고 주문한 것이 1원에 900만주를 팔겠다는 것으로 처리된다면? 공항의 관제시스템이 마비되어 수많은 항공기에 수동으로 지시를 할 수 밖에 없고, 모든 비행기가 공중을 선회하며 대기하고 있다면? 그러는 동안 비행기 연료가 떨어지는 사태가 발생한다면?

위에서 얘기한 사례는 가상 시나리오가 아니다. 모두 일본에서 실제 발생했던 사건들이다. 우리보다 10년은 앞서 있다고 평가하는 일본에서 왜 이런 일이 발생했던 것일까. 우리나라에서는 이런 일이 일어나지 않을 것인가.

IT에 몸담고 있는 사람이라면, 이러한 의문을 가질 법하다. 더군다나 10년 정도 뒤에 우리에게 충분히 일어날 수 있는 일일 수 있다는 것이 더 심각한 부분이다. 신간 `시스템 장애는 왜 두 번 일어났을까. 미즈호은행, 동일본 쓰나미 그 후 시스템 장애에서 얻은 교훈`을 통해 시스템 장애의 원인과 최고정보책임자(CIO)에게 주는 교훈을 알아본다.

◇일본은 우리의 거울이다=1980년대까지만 해도 세계적인 기업으로 성장한 일본기업들은 IT에 많은 투자를 했었고 구축된 시스템의 규모도 상당한 수준이었다. 일본의 거대 기업인 소니, 도요타, 혼다, 미쓰비시, 파나소닉 등 유수의 기업들이 얼마나 많은 투자를 했을지는 상상하기 어렵지 않을 것이다.

문제는 그 다음이었다. 불황이 계속되고 시장이 정체되어 있는 동안 기업들은 투자를 줄이면서 IT에 장기적인 영향을 주었다. 시스템이 노후화되고 인력은 부족해지면서 기본적인 구조파악과 개선 없이 주먹구구식 단기 처방으로 필요한 기능들을 붙이기에 급급했다.

경험 많은 개발자나 관리자가 빠져 나간 자리를 메울 사람은 없어져 가는데, 근본적인 대책이나 장기 비전을 수립하는 관리자도 부족했다. 일정 시간이 지나면 요구사항을 검토해서 교체하고 새로 개발하는 작업을 해 나아가야 하지만 그러지 못했다. 아무리 일선 담당자가 하소연해도 관리자나 임원급에서 그 필요성과 심각함을 이해하지 못한 결과 점점 시스템은 블랙박스처럼 되어 갔고, 3개의 은행이 하나로 통합하는 과정에서 경영진의 IT 몰이해는 극에 달한다. 쉽게 말하면 그 결과가 일본에서 가장 큰 은행이 두 번이나 어처구니없는 시스템 중단 사태를 겪은 근본적인 원인이라 할 수 있다.

◇장애의 근본 원인=`시스템 장애는 왜 두 번 일어났을까. 미즈호은행, 동일본 쓰나미 그 후 시스템 장애에서 얻은 교훈`은 앞서 이야기했던 미즈호은행의 두 번에 걸친 시스템 장애의 전말과 그 원인을 분석하고 설명한다. 아울러 일본의 또 다른 대표적인 시스템 장애 사례인 도쿄증권거래소, 하네다공항, 도쿄소방청 등의 원인을 분석하면서 시스템 장애가 어디에나 있을 수 있음을 보여준다.

오른쪽 도표는 미즈호은행의 장애원인을 도표로 요약한 것이다.

세부적으로 분석하면 장애의 직접적인 원인은 그림과 같고, 구체적으로 특정짓는다면 어떤 프로그램 하나 내지 장비 한 대일 수도 있을 것이다. 앞으로 일어날 수 있는 시스템 장애를 미연에 방지하려면 이 같은 사례에서 시사점을 얻고, 우리의 프로세스와 업무방식에 문제는 없는지 검토할 반면교사로 삼아야 할 것이다. 하지만 사실 어느 정도의 시스템 장애는 늘 있는 일이며 없어질 수도 없는 일이다. 장애의 원인과 대책도 대개 비슷하거나 거의 같다. 보다 근본적인 원인을 분석하고 대책을 마련해야 한다.

미즈호은행 장애의 근본적인 원인은 무엇이었을까. 이 책의 결론도 그러하지만, 내가 생각하기에 그 근본 원인은 세 은행 중 주도적인 역할을 한 은행의 총재가 공식 인터뷰에서 얘기한 다음 발언에 함축돼 있다고 생각한다.

“세 은행의 주요 시스템이 모두 유닉스 계열의 장비이므로, 시스템 통합은 비교적 쉽게 할 수 있을 것이다.”

세 은행의 시스템을 통합하는 거대 프로젝트에 대해 총재가 이 정도의 인식을 하고 있었다는 자체가, IT와 시스템의 이해가 당시의 경영진에게는 거의 없었다는 말일 것이다. 물론 최고경영자가 IT에 대해 시시콜콜하게 알 수는 없는 노릇이겠지만, 이런 정도의 인식을 갖고 있는 경영진에게서 거대한 프로젝트를 수행하기 위한 지지와 후원을 얻는다는 것은 불가능에 가깝다. 당연히 프로젝트는 많이 지연되고 진통 끝에 완료됐으나 두 번에 걸친 대규모 장애가 발생하는 근본적인 원인이 되었다. 경영진이 IT를 이해해야 하는 것이다.

◇IT에 가장 큰 투자=책에서는 IT프로젝트를 성공적으로 수행하기 위해, 그리고 시스템 장애를 근본적으로 예방하기 위한 대책으로 아래의 `십계명`을 제시한다.

1) 경영진이 선두에 서서 시스템 도입을 지휘하고, 전사의 이해를 받아 사원을 프로젝트에 투입한다.

2) 여러 시스템 개발 회사를 비교하여 자사의 업무에 가장 정통한 업체를 선택한다.

3) 시스템 개발 회사를 하청 취급하거나 개발비를 함부로 깎지 않는다.

4) 자사의 시스템 구축에 관한 능력을 파악하여 무리가 되지 않는 계획을 수립한다.

5) 사내의 책임 체제를 명확히 한다.

6) 요건 정의나 설계 등 상위 공정에 시간을 투자하고, 요건이 확정되면 함부로 변경하지 않는다.

7) 개발 진척은 자사에서 파악하고 테스트와 검사에 많은 시간을 들인다.

8) 시스템이 가동할 때까지 포기하지 않고 모든 수단과 방법을 도입한다.

9) 시스템 개발 회사와 유상의 A/S 계약을 맺는 등의 방법으로 유지보수 체제를 확립한다.

10) `부주의로 인한 오류`를 경시하지 말고 근본적인 대책을 수립한다.

일본의 이야기지만 아마 우리나라의 IT담당자들도 충분히 공감할 수 있는 얘기일 것이다. 사실 현업 담당자라면 누구나 당연하다고 생각하는 원칙들이다. 그러나 일본도 우리나라도 이 원칙대로 운영하는 경우는 드물다. 근원적으로 경영진이 IT를 이해해야 이 원칙을 적용할 수 있다. 그래서 여기서도 소위 `십계명`의 가장 첫 번째가 `경영진`인 것이다.

경영진이 IT를 이해해야 한다는 것은 단순히 IT가 중요하다는 것을 인식하라는 정도의 차원이 아니다. 현대를 사는 기업의 최고경영자라면 비즈니스에서 IT의 중요성을 인식하고 평소 IT에 지대한 관심을 가지고 있어야 한다. 더 바람직하게는 IT업무의 깊은 이해와 지식을 가지고 올바른 정책결정을 내릴 수 있는 사람을 반드시 경영진에 포함시켜야 할 것이다. 그래야 IT담당부서가 제대로 된 비전을 세우고 일을 추진할 수 있을 것이다. 또 고달픈 IT담당자 및 개발자들의 삶이 개선되고, 진정한 IT강국이 되고, 시스템 장애를 (거의) 없앨 수 있을 것이다.

배용석 한빛미디어 IT출판부 부장 ysbae@hanb.co.kr


브랜드 뉴스룸