Offcanvas

CIO / How To / 모바일 / 비즈니스|경제 / 아웃소싱 / 클라우드

클라우드 업체에게 '호구' 되지 않기 위한 15가지 준비

2021.03.04 Peter Wayner   |  InfoWorld
젊은 세대는 처음 듣는 이야기일 수도 있지만, 예전에 한국전쟁을 무대로 한 “M*A*S*H”라는 재미있는 시트콤이 있었다. 이 시트콤은 무려 11년 동안 방송됐다. 재미를 더하려는 작가들의 의도에 따라 전세의 흐름이 바뀌고 위험이 다가오거나 전장에서 탈주하는 사건이 일어났다. 환자들이 버스에 올라타고, 텐트가 찢어지고, 누군가 “M.A.S.H.에서 M은 Mobile을 의미한다”는 말을 하기도 했다(나머지는 Army Surgical Hospital의 약어).
 
현대 조직의 IT 직원이 중대한 수술이나 절단 수술에서 회복 중인 환자를 옮길 일은 없겠지만 민첩함을 유지해야 할 필요성은 갈수록 커지는 것 같다. 세심히 쌓아 올린 아키텍처가 나중에 보니 모래수렁 위에 올라가 있음을 발견하는 경우가 늘고 있다. 힘들게 얻은 데이터와 늦은 밤까지 공들여 작성한 코드를 옮겨야 하고, 때로는 당장 이번 주 안에 이동 작업을 완료해야 하는 상황에 처한다.
 
가장 잘 알려진 사례는 정치적 사례지만 그 외에도 많다. 해커 뉴스(Hacker News)와 같은 게시판에서 간단히 “canceled account(해지된 계정)”를 검색해봐도 결과는 놀라울 정도로 많이 나온다. 문제를 겪는 프로그래머는 보통 웹에서 스스로 해답을 찾는다. 블랙홀과 같은 거대 IT 기업은 이메일에 응답하는 일이 결코 없고 전화번호, 심지어 회사 주소조차 쉽게 찾을 수 없기 때문이다.
 
ⓒ Getty Images Bank
 
규모에 관계없이 모두 마찬가지다. 대부분 서비스 약관 깊은 곳에 숨어 있는 조항에 걸려 넘어진 소규모 개발업체의 사례지만 대기업 사례도 많다. 막대한 매출을 올리는 한 대형 게임 업체는 모바일 폰 앱 스토어에 지불하는 상당한 수수료 부과 정책에 반기를 들었지만 애초에 앱 스토어와 상대조차 되지 않는다는 사실만 발견했을 뿐이다. 기술 업계의 가장 큰 갑질 기업이 모바일 앱 스토어에서 당한 억울함을 호소하는, 아이러니한 일이 발생하기도 한다. 거인에게도 감정은 있으니 말이다.
 
서비스 약관(TOS)을 간단히 살펴보면, 확실한 선을 긋는 명확한 규칙과 끝없는 논란을 유발하는 모호한 규칙이 뒤섞여 있음을 알 수 있다. 어느 TOS는 “저품질 이메일” 전송을 금지한다. 물론 저품질 이메일이란 스팸을 의미하지만 저품질의 기준이 무엇일까? 자녀가 어떻게 지내는지 묻는 짧은 이메일을 보내는 부모도 여기에 포함될까?
 
또한 이해의 상충이 전부가 아니란 점도 유의해야 한다. 화재, 폭발, 전쟁, 질병도 중단을 유발한다. 물리적 사고가 아닌 인프라에 대한 사이버 공격도 있다. 텍사스의 데이터센터는 극한의 추위에 어떻게 대처했을까?

요지는 기술 대기업이 거미처럼 우리를 옭아매는 변덕스러운 사디스트라는 것이 아니다. 우리들 대부분은 그들의 의사 결정에 동의한다. 요지는 우리 모두 전선을 이탈할 준비가 되어 있어야 한다는 것이다. 전세의 흐름은 바뀔 수 있다. 일종의 철학적 전선에서 잘못된 진영에 서 있는 자신을 발견할 수도 있다. 자신이 보너스를 받기 위해 저품질 이메일이라는 모호한 기준을 내세워 일률적으로 금지하는 경우가 발생할 수 있다.
 
이런 상황에 대비하기 위한 15가지 방법을 소개한다.
 

서비스 약관을 믿지 말 것

클라우드 제공업체의 변호사들은 몇 년에 걸쳐 교묘한 조항들을 만들어 넣었다. 이 조항들은 결코 여러분이나 여러분의 일을 위한 것이 아니다. 이들은 많은 경우 “어떤 이유로든”, “언제든” 사용자 계정을 해지할 수 있는 권리를 조항에 넣고, 일부는 “이유 없이” 해지하는 권리까지 집어넣기도 한다. 구글에서 “terms of service”와 “no reason”이라는 단어가 포함된 웹 페이지의 수는 1억 1,400만 개에 달한다. 애초에 인터넷은 그다지 안전한 장소는 아니지만 법 규범도 신뢰의 수준 측면에서 큰 성과를 거두지는 못했다.
 

내 의견에 동의할 것이라는 기대는 금물

설령 여러분이 신의 계시를 받은 일을 하고 모든 팀원이 고참급 천사들로 구성되어 있다 한들 별 의미가 없다. 계정이 해지되고 서버가 잠겼다는 슬픈 이야기의 주인공은 Krack4Kids.com이라는 웹사이트가 폐쇄될 것임을 예상치 못한 어리숙한 마약상들이 아니다. 주인공은 자신의 계정이 폐쇄될 것이라고 짐작조차 하지 못한 사람들이다. 내 데이터와 내 앱도 안전하지 않다고 전제하는 것이 더 안전하다. 참호의 병사들이 말하듯이 “나를 향해 날아오는 총알 소리는 들리지 않는다”.
 

전화하지 말 것

과거의 기업은 고객에게 실제로 친절한 영업팀을 고용했다. 커미션이 그 친절함에 좌우됐기 때문이다. 최근에는 자동화된 스크립트를 실행하는 AI가 의사 결정을 내리는 경우가 갈수록 많아지고 있다. 사람이 있다 해도 커튼 뒤에 숨어서 익명으로 움직이는 경우가 많다. 숨든 숨지 않든, 현재의 인력은 처리량에 따라 평가를 받으므로 몇 분, 심지어 몇 초 만에 가부의 결정을 내려야 한다. 그들의 결정에 항의한다면 조금 더 경험이 많은 사람의 판단을 받기 위한 대기열에 낄 수 있지만 그 사람 역시 처리량으로 평가를 받기는 마찬가지다. 아무도, 누구도 책임져주지 않는다. 설계 자체가 그렇게 되어 있다.
 

친구 만들기

현대 클라우드 컴퓨팅에서 가장 무서운 점은 “거기서 일하는 누구와 친하지 않았다면 아무 일도 하지 못했을 것”이라는 이야기를 정말 많이 들을 수 있다는 것이다. AI 봇은 정신없이 클라우드에서 사이트를 쳐낸다. 어떤 형태로든 실제 사람과의 유대 관계는 도움이 될 수 있다. 그러니 바에서 더 적극적으로 술을 사기 시작하라. 과일 바구니와 생일 선물도 보내기 시작하라.
 

핵심 데이터 파악

오래 전에, 새터데이 나이트 라이브(Saturday Night Live)에서 한 중개 기업을 패러디한 적이 있는데, 거기서 창업자는 “각 고객의 이름과 이들이 투자한 돈이 적힌 목록을 특별히 잘 관리해야 한다. 이 목록을 잃으면 우린 끝장”이라고 말했다.
 
어떤 데이터는 다른 데이터보다 더 중요하다. 핵심 데이터베이스 테이블을 파악하고 거기에 집중한다. 이 테이블을 자신의 물리적 통제 하에 있는 서버에 복제한다. 그런 다음 또 다른 서버에 복제한다. 그러면 탈주할 때 이러한 테이블을 가장 먼저 들고 나올 수 있다.
 

유연한 페일오버 설계

마이크로서비스의 절반이 응답하지 않는 상황에서도 웹사이트가 계속 작동하는가? 중요한 서비스를 먼저 복구할 수 있어야 한다. 마이크로서비스 아키텍처를 채택하는 기업은 일부에 장애가 발생하더라도 모든 부분이 계속 실행되는지 확인해야 한다. 이는 빠른 마이그레이션을 위한 유연성을 더해준다. 대부분의 사용자는 영리한 AI 추천 엔진이나 현지 기상 예측을 가져오는 API에는 별 관심이 없다. 그저 주문만 할 수 있으면 된다.
 

절반의 하드웨어에서 운영하는 상황 대비

옮기는 경우 모든 데이터베이스와 서비스를 시작하지 못할 수 있다. 지금부터 분류 계획을 마련해야 한다. 좋은 아키텍처에는 부분적 하드웨어 지원 계획이 포함된다. 원래 하드웨어의 절반, 10분의 1, 어쩌면 100분의 1에서 실행이 가능할 만큼 충분히 많은 요소를 비활성화할 수 있는가?
 

컨테이너 사용

데브옵스 팀의 중요한 목표는 한 가지다. 배포를 더 쉽고 빠르게 하는 것이다. 또한 이들이 하는 거의 모든 일은 새로운 제공업체로 이동하는 데도 도움이 된다. 좋은 소식은 대부분의 일을 이들이 이미 하고 있다는 것이다.
 
컨테이너는 빠른 배포를 위해 애플리케이션을 구축하기 위한 최신 기술이지만 유니커널(unikernel)과 같은 다른 비슷한 옵션도 있다. 어쨌든 새 서버를 구성하려면 팀 전체가 일주일 동안 매달려야 했던 때에 비하면 많이 발전했다.
 

훈련 실시

모조 마이그레이션을 해야 한다. 모든 구성요소의 복사본을 다른 클라우드 또는 구내의 서버에서 가동해보고 시간이 얼마나 걸리는지 확인한다. 조정을 통해 속도를 더 높일 수 있는 구성 파일이나 소프트웨어 패키지가 있는가? 데이터베이스가 자동으로 스스로를 복제할 수 있는가? 모든 컨테이너가 예상대로 작동하는가?
 

실험적 프로젝트로 테스트

일반적인 실험 프로젝트는 동일한 클라우드에서 동일한 하드웨어 구성을 사용해 시작된다. 이왕 새 서비스 또는 향상된 데이터베이스를 실험하려면 다른 클라우드에서 실험하는 편이 더 좋지 않을까?
 

자율 재구축 데이터세트 구축

많은 애플리케이션은 테이블 집합으로 정리되는 일련의 이벤트로 구성되며, 이와 같은 테이블 집합이 단일 진실 공급원(single source of truth)을 형성한다. 즉, 일련의 데이터베이스 UPSERT다. 이 이벤트 스트림이 멈추면 어떻게 될까? 일부 이벤트가 반복된다면? 장애에 대비해 아키텍처를 설계해서 데이터 흐름이 중단되는 상황에서도 현실을 표현하는 데이터베이스가 일관성을 유지하도록 해야 한다.
 

집중 지양

모든 작업에 동일한 클라우드를 사용해서 단순함을 유지하고 싶은 생각이 드는 것은 당연하지만 이 경우 위험은 하나의 클라우드가 큰 장애 지점이 될 수 있다는 것이다. 예를 들어 마이크로소프트가 깃허브를 인수한 것은 애저 사용자들에게는 다른 리포지토리에 코드를 저장하거나 최소한 정기적으로 백업에 푸시하는 방안을 생각할 이유가 된다. 다른 클라우드의 경우도 마찬가지다.
 

오픈소스 사용

사유 코드에는 좋은 점이 많다. 이 비즈니스 모델이 훌륭한 소프트웨어를 제공하는 경우도 있다. 인생을 살다 보면 비싼 값을 치르면 그만큼 좋은 것을 얻게 되는 경우를 자주 접하게 되는데 소프트웨어 역시 다르지 않다. 그러나 코드를 쉽고 빠르게, ‘엄마에게’ 허락을 받지 않고도 옮길 수 있는 자유를 부여하는 것은 오픈소스 소프트웨어가 유일하다. 리처드 스톨먼은 늘 자신이 추종하는 자유(free)는 ‘공짜가 아니라 자유를 의미한다”고 말한다.
 

전매특허 도구 사용 지양

클라우드 제공업체는 일반적으로 오픈소스 클론과 사유 툴, 두 가지 유형의 제품을 제공한다. 클로즈드 소스 제품은 여러 매력적인 옵션과 혁신을 제공할 수 있지만 사용하기에는 감수해야 할 서비스 손실 위험이 너무 크다. AWS에서 MySQL 서비스를 사용하는 경우 자체 시스템의 MySQL로 옮길 수 있지만 사기업이 특허 낸 도구를 선택한다면 불가능하다.
 

정치적 혼란의 규모 인지

예전에는 4년에 한 번씩 대통령 선거라는 열풍이 미국 전역을 휩쓸었다. 지금은 끝이 없는 것 같고 그 대상도 선출된 정치인에 국한되지 않는다. 삶의 모든 부분이 심문 대상인 듯하다. 구글 작업자들이 노조를 결성했는데, 이들은 더 높은 임금뿐만 아니라 금요일에 제공되는 도넛의 품질 개선도 요구하고 있다. 이들은 “되찾은 힘을 사용해서 우리가 작업하는 대상과 그것이 사용되는 방식을 통제할 것”이라고 선언했다. editor@itworld.co.kr 
추천 테크라이브러리

회사명:한국IDG 제호: ITWorld 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 편집인 : 박재곤 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2022 International Data Group. All rights reserved.