본문 바로가기

사는 이야기/펌킨도서관

API 게이트웨이 환경에서의 로드밸런싱

요즘 뜨거운 관심사인 마이크로서비스 아키텍처 환경에서 API 게이트웨이는 중요한 역할을 합니다. 단어 그대로 여러 클라이언트의 요청을 서버로 전달하는관문역할을 합니다. 다만 전통적인 클라이언트/서버 구조와 다른 점은 API 게이트웨이가 바라보는 것이 마이크로서비스라는 점입니다. 


API 게이트웨이는 그럼 어떤 프로젝트에 주로 투입될까요? 데이터 시대가 되면서 기업과 기관에서 API 대거 개방해 주고 있습니다. 금융 기관에서는 핀테크 스타트업 키운다고 API 열어줍니다. 이때 API 게이트웨이는 금융 기관의 레거시 시스템 단에서 다양한 외부 개발자가 보내는 API 콜을 처리합니다. 통신사도 개발자 포탈을 통해 문호를 개방하고 있죠. 공공 쪽은 정부 3.0이라는 기조를 통해 방대한 공공 정보를 오픈했습니다. 우리가 자주 쓰는 교통 정보 앱이나 부동산 앱은 대부분 공공 데이터를 사용합니다. 


한때 API 경제라는 말이 유행했을 정도로 API 중심의 서비스와 데이터 연계는 앞으로 것입니다. 관련해 API 게이트웨이와 짝을 이루는 L4/L7 스위치의 수요도 함께 것으로 전망하는 데요, 그렇다면 L4/L7 스위치는 어떤 목적으로 사용될까요? 


API 게이트웨이 환경에서 로드밸런싱을 물리적인 L4/L7 스위치는 DMZ 배포하여 North-South 트래픽을 처리합니다. 과정에서 펌킨네트웍스의 AEN 시리즈 같은 전용 장비를 설정하는 옵션은 크게 가지로 나누어 있습니다. 


번째는 전통적인 서버 로드밸런싱입니다. API 게이트웨이로 향하는 클라이언트 요청이 폭주할 이에 대한 부하를 적절히 분산하는 것이죠. 


번째는 API 버전에 맞게 라우팅을 하는 것입니다. 클라이언트의 API 호출 요청을 L4/L7 스위치가 L7 계층의 정책 설정을 통해 관여하는 구성이라 보면 됩니다. 이게 필요하냐? API 생태계는 다양한 버전의 API 존재합니다. 클라이언트의 요청이 들어오면 L7 정책을 통해 API 콜을 서로 다른 API 버전 풀로 리다이렉트 하는 것이라 보면 됩니다. 


번째는 보안입니다. API 게이트웨이는 DDoS 공격 목표 하나죠. 전용 정비를 배포하는 것도 방법이지만 L4/L7 스위치가 DDoS 완화를 위한 포인트로 기능하는 것도 고려해 있습니다.