페이스북 '트라이포스 프로젝트' 공개, 정체는?

일반입력 :2011/05/19 14:05    수정: 2011/05/19 14:10

페이스북이 IT업계에 미치는 영향력이 전방위다. 폭발적인 서비스의 인기뿐 아니라 하드웨어, 소프트웨어 등에서 각종 기술을 공개해 일선기업 IT관계자들에게 폭발적인 반응을 이끌어내고 있다.

지난달 페이스북은 미국 오리건주 프린빌의 데이터센터를 오픈했다. 당시 페이스북은 자체제작한 서버 및 데이터센터 디자인을 상세하게 공개해 센세이션을 일으켰다.

또한 페이스북은 인프라 및 서비스 관리를 위한 인하우스 솔루션들을 소개하고 있다. 구글이 인하우스 솔루션의 세세한 내용을 극비에 부치는 것과 대비되는 모습이다. 페이스북 인하우스 솔루션에 대한 오픈소스화 요구는 하늘을 찌른다.

프린빌 데이터센터를 공개한 지 한달 후 페이스북은 엔지니어링 블로그를 통해 데이터센터 사전테스트 방법인 ‘트라이포스 프로젝트’를 공개했다.

산지브 쿠마르는 블로그를 통해 “페이스북 프린빌 데이터센터를 건립하면서 서버와 인프라를 개발하는 것도 큰 도전이었지만 각종 SW가 제대로 운영되고 서비스 중단없이 이전하기 위한 작업도 중요했다”라고 운을 뗐다.

데이터센터를 확대할 경우 가장 중요한 건 서비스중단을 일으키면 안 된다는 점이다. 하드웨어 통합과 이전 작업 자체는 가상화 기술로 무리없이 해결할 수 있지만. 문제는 SW의 이전작업이다. 새로운 데이터센터의 성능과, 모든 센터 간 연동을 검증해야 하기 때문이다.

올해 초 트위터 역시 새로운 데이터센터를 건립했다. 트위터는 당시 백업용 데이터센터를 이용했는데, 오랜 기간 검증작업을 거쳐야 했다고 설명했었다.

페이스북은 시뮬레이션을 떠올렸다. 트라이포스 프로젝트는 이렇게 시작됐다.

■가상으로 만들어낸 데이터센터 '트라이포스'

트라이포스 프로젝트는 프린빌 데이터센터를 가상으로 만들고, 여기에 SW를 실행시켜 다양한 시나리오를 실험하는 작업이었다. 트라이포스는 가상 데이터센터의 별칭이다.

산지브 쿠마르는 “페이스북은 드라마틱한 성장세를 보였지만, 급성장 탓에 인프라가 복잡해지는 상황이었다”라며 “이때마다 페이스북은 성공적으로 데이터센터를 재구축하기 위한 노력들을 요구받았고, 그때마다 각 구성요소들을 별도로 테스트했다”고 밝혔다.

그는 따로따로 이뤄지는 테스트가 부적절한 방법이었다면서, 모든 요소에 대한 통합적인 테스트가 필요했다고 설명했다. 구성요소간 예기치 않은 인터랙션, 전체 인프라를 같은 환경에서 테스트하는 것도 중요했다는 것이다.

소프트웨어 복잡성 역시 통합적인 시뮬레이션을 요구했다. 페이스북은 뉴스피드, 검색, 광고 등 그들만의 벡엔드 서비스가 수백가지에 이른다. 반면 대부분의 이들 서비스는 데이터센터 곳곳에 퍼져 함께 돌아가도록 디자인됐다. 복잡한 인프라스트럭처를 확실히 컨트롤하기 위한 장악력도 요구됐다. 급증하는 사용자와 사용량에 대비하기 위해 트래픽을 잘 관리하기 위한 방법도 필요했고, 빠르게 새로운 장비를 추가하는 것도 필요했다.

최근 페이스북은 마이SQL을 활용한 플래시캐시란 기술을 소개한 바 있다. 플래시캐시는 마이SQL 머신의 각 스루풋을 2배로 끌어올렸고, 스토리지 계층 비용을 절반으로 줄였다. 그러나 이는 두개의 마이SQL 인스턴스를 운영해야 한다는 의미기도 하다.

쿠마르는 “새로운 데이터센터의 각 머신에서 이 새로운 단계를 테스트해야 하고, 연관된 소프트웨어 스택에 변화를 요구했다”고 강조했다.

■가상 클러스터링 자동화 SW '코볼드'

해결책은 버지니아에서 운영중인 수천개의 클러스터를 장악하고, 제3의 가상 데이터센터를 배열하는 것이었다. 여기에 버지니아와 캘리포니아, 그리고 오리건주까지 레이턴시를 고려한 설정도 집어넣었다.

쿠마르는 “프로덕션 서버(웹서버)로 싸이트에 트래픽 한계치를 생성해 소프트웨어 스택을 테스트했다”며 “트라이포스를 로컬의 복제품처럼 보이게 만들어줬다”고 설명했다.

이를 위해 사용된 SW는 코볼드(Kobold)라 이름 붙여진 페이스북 인하우스 솔루션이다. 수천개 서버로 이뤄진 가상의 데이터센터 클러스터를 빠르게 형성해 SW구동을 테스트하고, 인조의 워크로드를 수행하며, 사용자 트래픽 충격없이 파워 테스트를 할 수 있다.

코볼드는 이 모든 단계를 자동으로 수행한다. 또한 수십수천대의 서버 이미지를 프로비전하는데 30일밖에 걸리지 않는다. 가상 트래픽 생성은 60일간 유지된다.

프린빌에 건립된 페이스북의 데이터센터는 이 회사에게 다양한 의미다.

이전까지 캘리포니아와 버지니아의 데이터센터 설비를 임대하던 것에서 벗어나 인프라 장악력을 높였다. 여기에 서비스 품질을 더 높이면서도, 이전과정에서 서비스 중단도 없었다.

관련기사

프린빌 데이터센터는 모든 것을 페이스북 입맛에 맞게 설계한 첫번째 시설이다. 향후 성장에 따라 데이터센터를 추가로 구축할 때 중요한 레퍼런스를 제공한다.

한편으로는 데이터센터 컴퓨팅을 개방형으로 진행해 기존 IT벤더 종속성을 없애는 ‘오픈 컴퓨트 프로젝트’의 상징으로도 통한다.