“Compute Engine VM을 빠르게 부팅하려면?”
GCP(Google Compute Engine)을 이용하는 곳이라면 트래픽 증가에 맞춰 빨리 가상 머신(VM)을 늘리는 것이 가능합니다. 보통 광고 문구에 나오는 신속한 VM 증설과 달리 실제 상황에서 VM을 부하량에 맞춰 늘리는 것은 쉽지 않습니다. 스트립트 띄우고, 코드 컴파일하고, 패키지 설치하는 등 VM이 부팅되기 까지 많은 일이 일어나죠. 부팅 시간까지 줄일 수 있어야 접속 폭주에 실시간 대응이 가능합니다.
“음식 관련 소셜 서비스 foody-fit은 어떻게 부팅 시간 문제를 해결했나?”
그래서 구글이 해냈습니다. 사전에 부트 디스크를 커스텀 이미지로 만들어 실제 상황에 바로 쓸 수 있게 한 것이죠. 사전에 만든 이미지를 쓰면 VM들을 로딩하는 속도가 빨라집니다. 그 효과가 궁금하다면 이 영상을 한번 보시죠. 실제 서비스 중인 내용을 가지고 설명합니다. 예로 든 것은 음식 사진을 공유하는 소셜 서비스인 foody-fit(www.foody-fit.com)으로 GCP로 서비스를 제공합니다.
foody-fit의 경우 VM을 시작할 때 시간이 좀 걸리는 문제가 있었는데, 이는 다음과 같은 시작 스크립트 때문입니다.
시작 스크립트 프로파일링 정보를 확인해 보니 다음과 같이 세 가지 부분에 문제가 있는 것으로 나타났습니다. 다음 표와 같이 시작 스크립트를 4단계로 구분이 가능하고 시간은 대략 60~70초가 걸립니다.
그래서 foody-fit은 시작 시간을 줄이기 위해 커스텀 이미지를 만들게 됩니다. 커스텀 이미지를 만들지 않고 VM을 새로 시작하면 다음과 같이 새로 올릴 때마다 같은 작업이 반복됩니다.
커스텀 이미지를 만들면 다음과 같이 사전에 모든 것이 설치된 이미지를 디스크로 바로 가져가기 때문에 각종 스크립트 실행이나 패키지 설치에 드는 시간이 줄어듭니다.
그렇다면 foody-fit이 커스컴 이미지를 적용한 후 어느 정도 속도 개선 효과를 봤을까요? 다음 표를 보십시오. 분 단위로 걸리던 VM 로딩 시간이 초 단위로 짧아졌습니다.
이 정도면 커스텀 부트 이미지를 안만들 이유가 없겠죠. 더 자세한 기술 문의는 메가존으로 해주시면 감사하겠습니다.