클라우드, 손해 안 보고 제대로 쓰려면? – 고가용성 개념과 중요성

쇼핑몰을 비롯한 온라인 비즈니스는 고객이 인터넷을 통해 아무 때나 서비스를 이용할 수 있는데요. 그러려면 쇼핑몰 사장님의 사례처럼 갑자기 고객 접속이 몰리는 상황에서도 서비스가 24시간 정상적으로 운영되어야 해요.
 

클라우드, 쓰기만 한다고 다 되는 건 아니다

고가용성이란? (HA, High Availability)

서버, 네트워크, 프로그램 등 시스템이 계속 정상 운영될 수 있는 특성을 의미합니다. 장애 상황에서도 서비스 중단 시간을 최소화할 수 있도록 시스템을 구성하고 운영합니다.

예기치 못한 상황에서도 시스템이 계속 정상 운영될 수 있는 특성을 ‘고가용성(HA, High Availability)’이라고 해요. 고가용성을 확보하면 사례에 나온 쇼핑몰 사장님처럼 이벤트 기간에 접속이 폭증하거나 특정 기능에 문제가 생겨도 고객은 서비스를 계속 이용할 수 있어요. 만약 장애가 나더라도 서비스가 멈추는 시간을 최대한 줄일 수도 있고요.

고객: 장애 났었음? 몰랐음.
고가용성: ㅎㅎ내 덕분✌

클라우드 서버는 물리 서버보다 고가용성을 확보하기 쉬운데요. 한 가지 중요한 사실이 있어요. 바로 클라우드를 쓰기만 하면 저절로 고가용성이 보장되는 건 아니라는 점이에요.

사례 속 쇼핑몰 사장님처럼 클라우드 서버를 쓰고 있어도 고가용성을 제대로 이해하지 못해 손해를 보는 경우가 있는데요. 하지만 걱정하지 마세요! 클라우드를 제대로 쓸 수 있도록 고가용성에 관해 하나씩 알려 드릴게요.
 

클라우드: 고가용성 확보가 제일 쉬웠어요😎

클라우드의 가장 큰 특징은 확장성이에요. 서버 자원을 그때그때 필요한 만큼 빠르게 늘렸다 줄였다 할 수 있는데요. 그 방법도 쉽고 간단해요.

이런 특징 덕분에 클라우드는 고가용성을 확보하기 수월해요. 클라우드 서버는 특정 상황이 생겼을 때 알아서 서버 자원을 늘리거나 줄일 수 있게 설정할 수 있거든요. 예를 들면 이런 거예요:

만약 서버가 70% 이상 사용되는 시간이 5분을 넘는다?
서버 3대를 자동으로 늘려! (오토스케일링)

만약 트래픽이 들어온다? 
트래픽이 몰리지 않게 여러 서버에 나눠서 보내! (로드밸런서)

만약 서버에 장애가 났다? 
미리 준비해 놓은 서버로 바꿔치기해! (HA 솔루션)

이렇게 설정해 놓으면 24시간 지키지 않아도 상황에 맞게 알아서 딱 대처하니까 고객이 서비스를 안정적으로 이용할 수 있어요.

클라우드가 아닌 기존 물리 서버는 어떨까요? 물리 서버 또한 얼마나 필요할지 예측해서 준비해 둘 수는 있어요. 하지만 클라우드처럼 상황에 맞게 알아서 서버를 늘리거나 줄이게끔 설정할 수는 없어요. 그래서 클라우드보다 돌발 상황에 클라우드처럼 알아서 대응하거나 빠르게 처리하기 어려워요. 즉 고가용성을 확보하기 더 어렵다고 볼 수 있어요.

관련된 예시로 ‘코로나19 사전예약 시스템’이 있어요. 작년 여름에 사전예약 시스템이 열리자마자 접속자 10만 명이 동시에 몰리면서 서버가 먹통이 되었는데요.

당시 사전예약 시스템이 물리 서버를 이용하면서 생긴 문제였어요. 접속하려는 사람은 많은데 이걸 처리해 줄 서버가 부족했기 때문이에요. 하지만 이후 시스템을 클라우드로 전환하면서 문제는 해결되었어요. 갑자기 인원이 몰려도 클라우드 서버를 빠르게 늘려서 과부하가 걸리지 않게 대처할 수 있었거든요.
 

갈수록 중요해지는 고가용성

요즘 쇼핑은 기본이고 교육, 금융, 의료 등 모든 것이 온라인 서비스로 제공되고 있는데요. 만약 고가용성이 확보되지 못해서 갑자기 서비스가 멈추기라도 한다면? 서비스를 제공하는 기업과 고객 모두 피해를 입을 수 있어요.

지난 2018년 AWS에서 장애가 발생해 수많은 국내 기업이 피해를 보았는데요. AWS를 이용해 서비스를 제공하던 배달의민족, 쿠팡, 마켓컬리, 쿠팡 등 주요 서비스에 1시간 넘게 접속할 수 없었어요. 업비트, 코인원과 같은 가상화폐 거래소나 넥슨, 라인게임즈와 같은 게임 서비스, 온라인 동영상 서비스 푹(POOQ)도 이용할 수 없었고요.

장애 때문에 생긴 피해는 기업이 고스란히 떠안았어요. 서비스가 강제로 멈춘 동안 매출 피해는 물론이고 고객 불만도 컸는데요. 실제로 배달의민족은 결제, 배송 오류 등 고객 불만이 100건 가까이 접수되었다고. 손해 본 고객에게 보상하는 것도 기업의 몫이었어요.

의료, 공공 분야처럼 민감한 개인 정보를 다루거나 돈을 다루는 금융권은 고가용성에 더욱 신경 써야 해요. 방심하다 자칫 심각한 사고로 이어지기 쉽거든요.

안타깝게도 금융감독원에서 발표한 ‘2021년 전자금융사고 발생 현황 및 대응 방안’에 따르면 2020년 대비 해킹 등으로 인한 사고는 줄어들었지만 서비스 지연 등 장애 사고는 더욱 늘어났다고 말했어요. 더 이상의 서비스 중단을 막고 앞으로의 피해를 줄이려면 고가용성은 반드시 고려되어야 해요.
 

야! 너두 할 수 있어, 고가용성

이런 속담이 있어요.

“구슬이 서 말이어도 꿰어야 보배다.”

아무리 좋은 것도 쓸모 있게 다루어야 가치가 있다는 뜻인데요. 클라우드도 비슷해요. 클라우드라는 구슬이 고가용성이라는 보배가 되려면 클라우드를 제대로 이해하고 구성하려는 노력이 필요해요.

그래서 고가용성 그거, 어떻게 하는 건데요?

클라우드 서비스 제공 업체에서는 고가용성을 위한 다양한 기능을 제공하고 있어요. 서비스가 중단될 만한 상황에서 클라우드 시스템이 알아서 대처할 수 있게 설정하는 기능들이에요.

대표적인 기능으로 3가지가 있어요. 바로 로드 밸런서, 오토 스케일링, HA 솔루션인데요. 각각의 기능에 관해서는 다음 편에서 하나씩 살펴보도록 할게요!

요점만 간단히👀

✔️ 대부분의 서비스가 온라인으로 24시간 제공되는 요즘, 서비스가 갑자기 중단되면 기업과 고객 모두 큰 손해를 볼 수 있어요.

✔️ 트래픽 폭주, 장애 등 돌발 상황에서도 서비스가 계속 정상 작동되는 특성을 고가용성이라고 해요.

✔️ 클라우드를 쓰면 고가용성을 확보하기 쉽지만 저절로 확보되는 건 아니라는 사실, 기억해 주세요!