센트 단위나 센트의 분수 값으로 표기되는 푼돈이 막대한 금액으로 삽시간에 늘어날 수 있음을 실감하기란 어렵다. 클라우드 컴퓨팅 비용 이야기다. 그러나 실제로 그런 일 생긴다. 매월 클라우드 컴퓨팅 비용이 청구될 때마다 CFO들은 심장마비 직전 수준의 스트레스를 겪는다.
비용 책임자들의 건강을 유지하고, 그들의 분노가 향하는 엔지니어들의 목을 지키기 위해, 클라우드 비용을 절감할 수 있는 작은 방법들을 정리했다. 이 중 어떤 팁도 단독으로 큰 절감 효과를 내지는 않지만, 함께 적용하면 전체 클라우드 비용을 크게 낮출 수 있다.
사용하지 않을 때 개발 클러스터를 종료
일부 개발자는 하루 8시간을 일하고, 일부는 더 오래 일한다. 하지만 어떤 경우에도 개발 클러스터를 하루 12시간 이상 줄곧 사용하는 경우는 드물다. 한 주 168시간 중, 팀이 1/4만 사용한다면 개발 클러스터 운영 비용의 75%를 절약할 수 있다. 인정한다. 큰 클러스터를 종료하는 데 시간이 걸릴 수 있다. 일부 특수한 머신은 즉시 가동하기 어려울 수 있다. 그렇다면 배경에서 실행되는 스크립트를 작성해 모든 것을 자동으로 관리하도록 할 수 있다.
모의 마이크로서비스를 현명하게 이용
많은 클라우드 애플리케이션은 마이크로서비스를 실행하는 머신의 집합체다. 모든 머신를 가동하는 대신, 일상 업무의 초점에서 벗어난 머신을 모방하는 일단의 스마트한 모의 서비스(mock services)를 사용해볼 만하다. 마이크로서비스의 모의 인스턴스를 이용하면 새로운 코드 테스트에 필요한 자원을 크게 줄일 수 있다. 스마트한 개발자는 이러한 모의 인스턴스를 구성하여 모든 데이터를 추적함으로써 디버깅을 위한 더 나은 텔레메트리 데이터를 제공할 수 있다.
로컬 디스크 저장 공간 제한
많은 클라우드 인스턴스는 표준 디스크 또는 지속적 스토리지에 대해 기본 용량을 제공한다. 그리고 이는 작업용 디스크 공간 중 가장 비용이 높은 부분일 수 있기에 할당 용량을 제한하는 것이 합리적이다. 기본 용량 값을 선택하는 대신 가능한 한 적은 용량으로 운영한다. 이는 데이터를 데이터베이스나 객체 저장소에 안전하게 저장한 후 캐시를 지우거나 로컬 복사본을 삭제하는 작업을 의미할 수 있다. 즉, 로컬 저장 공간이 거의 필요 없는 매우 가벼운 버전의 서버를 구축하는 것을 목표로 한다.
클라우드 인스턴스 크기 조정
알고리즘을 사용해 수요가 피크에 달했을 때 머신 크기를 자동으로 늘릴 수 있다. 하지만 클라우드를 이용함에 있어 디스크에 할당된 리소스를 축소하기란 쉽지 않을 때가 흔하다. 디스크 크기가 증가하면 축소가 어려울 수 있다. 이러한 머신을 밀접하게 모니터링하면 클라우드 인스턴스가 필요한 만큼만 리소스를 소비하도록 보장할 수 있다.
콜드 스토리지 선택
일부 클라우드 제공업체는 빠른 액세스가 필요 없는 데이터에 대한 별도의 서비스를 제공한다. 예를 들어 AWS의 글래시어(Glacier)와 스케일웨이(Scaleway)는 몇 시간 이상의 지연을 전제로 매우 낮은 요금을 부과한다. 콜드 데이터는 이러한 저렴한 위치로 이전해볼 만하다. 때로는 보안도 이 옵션을 선택하는 이유가 될 수 있다. 스케일웨이는 과거 핵폭탄 방공호였던 공간을 사용해 데이터를 물리적으로도 보호한다고 강조하고 있다.
더 저렴한 업체 선택
업체에 따라 객체 저장소와 같은 서비스 가격이 현저히 낮다. 와사비(Wasabi)는 경쟁사보다 80% 저렴하다고 주장한다. 블랙블레이즈(Backblaze)는 타사 비용의 1/5에 서비스를 제공한다고 밝혔다. 적지 않은 폭이다. 이러한 서비스는 접근 지연 시간 측면에서도 강점을 내세운다. 더 빠른 ‘핫 스토리지’ 응답 시간을 제공하는 식이다.
물론 일반 인터넷을 통해 쿼리가 전송되는 시간을 기다려야 하지만, 데이터센터 내부가 아닌 외부 네트워크를 통해 전송되기 때문에 차이가 여전히 클 수 있다. 저렴한 제공업체는 데이터 액세스 조건에서도 경쟁력을 갖추고 있는데, 일부는 반출 요금(egress fee)을 면제하는데, 이는 자주 다운로드되는 데이터를 보유한 조직에게 매력적이다.
스팟 머신
일부 클라우드 제공업체는 여분 머신을 경매로 판매한다. 경우에 따라 매우 저렴할 수 있다. 스팟 가격이 낮을 때 기한이 없는 작업을 실행하면 적절하다. 즉 스팟 머신은 월별 보고서 생성 같은 배경 작업에 적합하다. 반면, 스팟 인스턴스는 사전 통지 없이 갑자기 종료될 수 있다는 점을 주의해야 한다. 스팟 머신에서 실행되는 애플리케이션은 멱등성(idempotent)을 가진 것이어야 한다. 또한 수요가 높을 때 스팟 가격이 급등할 수 있다는 점도 유의해야 한다. 일종의 금융적 모험으로 생각하면 된다.
예약 인스턴스
클라우드 제공업체는 장기적으로 하드웨어 사용을 약속하는 조직에 큰 할인 혜택을 제공한다. 이는 예약 인스턴스 또는 사용량 기반 할인으로 불리기도 한다. 향후 몇 년간 필요한 양을 정확히 알고 있을 때 이상적이다. 단점은 계약이 양측을 구속한다는 점이다. 프로젝트가 취소되거나 수요가 적은 시기일지라도 서버를 중단할 수 없다.
투명성을 유지
엔지니어들은 특히 수치 기반 문제를 해결하는 데 능숙하며, 결국 클라우드 비용은 최적화해야 할 또 다른 지표일 뿐이다. 많은 팀은 클라우드 비용을 데브옵스 전문가에게 맡기는데, 이들이 재무 부서와 매월 회의를 진행해 비용을 최적화할 수 있다.
더 나은 해결책은 팀 전체에 지출 데이터를 공개하는 것이다. 팀원들이 숫자를 자세히 분석하고 자금이 어디로 흘러가는지 확인할 수 있도록 한다. 클라우드 비용을 상세히 분해한 좋은 대시보드는 비용 절감 아이디어를 자극할 수 있다.
서버리스로 전환
클라우드 컴퓨팅 혁명은 자원을 중앙화하고 사용자가 필요한 만큼만 구매하기 쉽게 만든다는 개념에 기반한다. 이의 논리적 극단은 거래당 요금 부과다. 사실 잘못 이름 지어진 ‘서버리스’ 아키텍처는 필요한 만큼만 구매하여 비용을 절감하는 좋은 예시다. 필자의 한 지인은 부업 중 하나가 월 3센트만 든다고 자랑하는데, 언젠가 이 서비스가 입소문을 타게 되어 비용이 수십 달러, 심지어 수백 달러로 급증할 날을 기대하고 있다. 스컹크 워크 프로젝트나 개념 증명(PoC)을 진행하는 기업들은 수요가 발생할 때까지 컴퓨팅 비용을 매우 낮게 유지할 수 있기 때문에 이러한 옵션을 선호한다.
데이터 저장량 줄이기
프로그래머들은 데이터를 일단 보관하려는 경향을 보인다. 나중에 사용할 수 있다는 막연한 기대에서다. 이는 앱이 대규모로 확장되기 전에는 문제가 되지 않지만, 수억 번 반복되면 다르다. 사용자에게 전화를 걸지 않는다면 그들의 전화번호를 정말로 저장해야 할까? 개인 데이터의 폐기는 저장 비용을 절감할 뿐만 아니라 개인 식별 정보 유출 위험을 줄인다. 다시 사용하지 않을 로그 파일이나 데이터 백업을 보관하지 않도록 한다.
데이터를 로컬에 저장
오늘날의 브라우저 다수는 객체 저장소나 클래식 데이터베이스의 기본 버전에 데이터를 저장할 수 있다. 웹스토리지 API(WebStorage API)는 간단한 키-값 저장소를 제공하며, 인덱스드DB(IndexedDB)는 계층적 테이블을 저장하고 인덱싱도 구현한다. 두 솔루션 모두 네트워크 연결을 과부하시키지 않으면서도 더 복잡한 웹 애플리케이션을 빠르게 응답하도록 설계된 스마트한 로컬 캐시로 의도됐다. 하지만 저장 비용을 절감하는 데도 사용할 수 있다. 사용자가 무한한 초안을 저장하고 싶다면, 아마도 그 비용을 스스로 부담해야 할 것이다.
작업을 다른 곳으로 이동
대개의 클라우드 제공업체는 데이터 저장 위치에 관계없이 동일한 요금을 부과하지만, 일부는 위치에 따라 요금을 조정하기 시작했다. 예를 들어 AWS는 S3 스토리지의 경우 노스 버지니아에서는 기가바이트당 0.023달러, 노스 캘리포니아에서는 0.026달러를 부과한다. 알리바바 또한 최근에 해외 데이터센터의 요금을 국내 데이터센터보다 훨씬 더 크게 인하했다. 즉 위치가 중요해졌다.
불행히도 대규모 데이터 블록에 대해 이러한 비용 절감 혜택을 활용하는 것은 쉽지 않을 수 있다. 일부 클라우드 제공업체는 지역 간 데이터 이동 시 데이터 유출 요금을 부과하기 때문이다. 그럼에도 불구하고 새로운 프로그램을 설정할 때 여러 옵션을 비교해 보는 것이 좋다.
콜드 데이터 덜어내기
서비스를 조금만 사용하는 것도 비용 절감 방법이지만, 가장 효과적인 방법은 완전히 중단하는 것이다. 책상 위에 있는 하드 디스크나 근처 데이터센터에 데이터를 저장하는 방법을 고려할 만하다. 하드 디스크 가격은 새 하드 디스크의 경우 테라바이트당 10달러를 약간 넘는 수준이며, 중고 디스크의 경우 7달러 미만이다. 정기적으로 요금을 지불할 필요도 없다. 디스크가 작동하는 동안 계속 적용된다. 물론 이 가격에는 모든 책임과 전기 요금을 부담하는 대가가 따른다. 중요한 업무에는 적합하지 않지만, 매우 중요한 백업 데이터와 같은 중요도가 낮은 작업에는 상당한 비용 절감 효과가 있을 수 있다. 데이터의 물리적 통제가 컴플라이언스 준수에 필요한 경우에도 장점이 있을 수 있다.
[email protected]
Read More from This Article: ‘소소한 노력으로 목돈 아끼기’··· 클라우드 짠테크 14가지
Source: News