데이터분석 전문가(ADP)

데이터분석 전문가(ADP) 시험 노트개념 정리20 MIN

클라우드 인프라와 가상화

ADP 2과목의 셋째 자리입니다. 서버 가상화와 하이퍼바이저 두 유형, 스토리지·네트워크 가상화, IaaS·PaaS·SaaS의 책임 경계, 공용·사설·하이브리드 배치 모델, 자원 풀링과 확장성, 분석 인프라를 고르는 기준을 계산과 함께 정리합니다.

앞 노트에서 값싼 서버를 여러 대 묶어 쓰는 구조를 봤습니다. 그 서버들을 실제로 무엇으로 마련하느냐가 이 노트입니다. 장비를 사서 전산실에 두든 남의 것을 빌려 쓰든 그 밑바닥에는 가상화가 깔려 있고, 클라우드는 그 가상화를 서비스로 파는 방식입니다. 2과목에서 계산보다 개념과 경계를 묻는 문항이 많은 자리입니다.

가상화

서버 가상화

가상화는 물리 자원을 논리적으로 나누거나 묶어 실제와 다르게 보이게 하는 기술입니다. 서버 한 대를 여러 대처럼 쓰는 것이 서버 가상화이고, 이렇게 만들어진 논리적 서버 하나가 가상 머신입니다.

한 대를 나누는 이유는 장비가 놀기 때문입니다. 업무마다 서버를 따로 사면 평균 사용률이 10~20%에 머무는데, 한 대에 가상 머신 여럿을 올리면 그 여유분을 나눠 쓸 수 있습니다. 업무별로 OS가 갈라져 있어 서로를 건드리지 않는다는 점도 함께 얻습니다.

하이퍼바이저

가상 머신들에게 CPU와 메모리를 나눠 주고 서로를 가로막는 소프트웨어가 하이퍼바이저입니다. 어디에 얹히느냐로 둘로 갈립니다.

유형 얹히는 자리 성질 예
1형(베어메탈) 하드웨어 바로 위 중간 층이 없어 빠르다. 서버용 VMware ESXi, Xen, KVM, Hyper-V
2형(호스티드) 호스트 OS 위 설치가 쉽다. 개인 PC용 VirtualBox, VMware Workstation

게스트 OS를 고치느냐로도 갈립니다. 전가상화는 하드웨어를 통째로 흉내 내므로 게스트 OS를 그대로 올릴 수 있고, 반가상화는 게스트 OS가 하이퍼바이저를 알고 직접 호출하도록 고쳐 쓰는 대신 흉내 내는 비용이 줄어 빠릅니다. 「고치지 않아도 되는 쪽이 전가상화」라고 짝지어 두면 헷갈리지 않습니다.

컨테이너

컨테이너는 OS를 통째로 올리지 않고 커널을 공유하면서 실행 환경만 가르는 방식입니다. 가상 머신은 안에 OS가 한 벌씩 들어 있어 뜨는 데 수십 초가 걸리지만 컨테이너는 초 단위로 뜨고 이미지도 훨씬 작습니다. 대신 커널을 나눠 쓰므로 격리 수준은 가상 머신보다 낮고 다른 종류의 OS는 올릴 수 없습니다.

분석 환경에서 이 차이가 실제로 드러납니다. 라이브러리 버전이 제각각인 분석 코드를 재현 가능하게 돌릴 때는 컨테이너가, 서로 다른 조직에 자원을 떼어 줘야 할 때는 가상 머신이 어울립니다.

스토리지와 네트워크 가상화

저장 장치를 붙이는 세 방식

스토리지 가상화는 여러 저장 장치를 묶어 하나의 논리 볼륨으로 보이게 하는 기술입니다. 그 앞에 저장 장치를 서버에 어떻게 붙이는지가 셋으로 갈립니다.

방식 붙는 모양 성질
DAS 서버에 직접 연결 빠르지만 그 서버만 쓴다. 용량을 늘리려면 서버를 열어야 한다
NAS 네트워크에 파일 서버로 연결 여러 서버가 파일 단위로 함께 쓴다. 구성이 쉽다
SAN 전용 네트워크로 블록 단위 연결 빠르고 크게 확장되지만 비싸고 구성이 복잡하다

NAS와 SAN의 갈림이 파일이냐 블록이냐라는 점이 자주 나옵니다. NAS는 파일을 주고받고, SAN은 서버가 제 디스크처럼 블록을 직접 다룹니다.

네트워크 가상화

네트워크 가상화는 물리 회선 하나를 여러 논리 망으로 가르거나 여럿을 하나로 묶는 기술입니다. 같은 스위치에 붙어 있어도 서로 다른 망처럼 갈라 두는 VLAN이 오래된 방식이고, 요즘은 SDN이 그 자리를 넓혔습니다.

SDN은 경로를 정하는 제어 부분과 실제로 데이터를 흘리는 전달 부분을 떼어 놓고, 제어를 소프트웨어가 중앙에서 맡는 구조입니다. 장비마다 붙어서 설정하지 않고 코드로 망을 바꿀 수 있어, 노드가 수백 대로 늘어나는 분산 환경과 맞습니다.

서비스 모델

세 층

클라우드는 어디까지 빌려 주느냐로 셋으로 갈립니다.

모델 빌려 주는 것 이용자가 하는 일 예
IaaS 서버·저장소·네트워크 OS부터 직접 설치하고 운영한다 EC2, Compute Engine
PaaS 실행 환경과 런타임 코드와 데이터만 올린다 App Engine, Heroku
SaaS 완성된 응용 프로그램 쓰기만 한다 Gmail, Salesforce

아래로 갈수록 자유도가 크고 위로 갈수록 손이 덜 갑니다. IaaS는 OS 버전과 커널 설정까지 고를 수 있는 대신 보안 패치도 직접 해야 하고, SaaS는 손댈 것이 거의 없는 대신 제공자가 주는 기능 안에서만 씁니다.

책임 경계

문제로 가장 자주 나오는 것이 「이 일은 누구 몫인가」입니다. 이용자와 제공자를 가르는 선이 모델마다 어느 줄로 내려오는지가 답입니다.

관리 대상 IaaS PaaS SaaS
응용 프로그램 이용자 이용자 제공자
데이터 이용자 이용자 이용자
런타임·미들웨어 이용자 제공자 제공자
OS 이용자 제공자 제공자
서버·저장소·네트워크 제공자 제공자 제공자

데이터 한 줄만 어느 모델에서도 이용자 쪽에 남는다는 점을 눈여겨봅니다. SaaS를 써도 무엇을 넣었고 누가 보게 할지는 이용자가 정하며, 개인정보 관련 책임이 제공자에게 넘어가지 않는 근거가 이 자리입니다.

배치 모델

네 가지 배치

누구를 위해 세우느냐로도 갈립니다.

  • 공용 클라우드는 불특정 다수에게 열린 것으로, 초기 투자 없이 바로 쓰고 쓴 만큼 냅니다.
  • 사설 클라우드는 한 조직만 쓰도록 세운 것으로, 자원을 통제하고 규제를 맞추기 좋은 대신 장비를 직접 마련해야 합니다.
  • 커뮤니티 클라우드는 같은 요구를 가진 여러 조직이 함께 세워 나눠 씁니다.
  • 하이브리드 클라우드는 둘 이상을 이어 쓰는 것으로, 민감한 데이터는 사설에 두고 부하가 몰리는 계산만 공용으로 넘기는 식입니다.

자원 풀링과 확장성

클라우드를 클라우드이게 하는 성질은 다섯입니다. 사람 손을 거치지 않고 바로 받는 온디맨드 셀프서비스, 어디서든 표준 방식으로 접근하는 광대역 네트워크 접근, 여러 이용자가 자원 더미를 나눠 쓰는 자원 풀링, 필요에 따라 늘리고 줄이는 탄력성, 그리고 쓴 만큼 재는 측정 가능한 서비스입니다.

이 가운데 자원 풀링이 요금 구조의 근거입니다. 자원을 미리 떼어 주지 않고 더미에서 그때그때 꺼내 주기 때문에, 쓰지 않는 동안 내려놓으면 그만큼 비용이 사라집니다. 늘리는 방식은 둘입니다.

방식 하는 일 한계
스케일 업 한 대의 CPU와 메모리를 키운다 한 대가 커질 수 있는 상한이 있다
스케일 아웃 같은 사양의 대수를 늘린다 작업이 나뉘어야 효과가 난다

앞 노트의 무공유 구조와 맵리듀스가 전제하는 것이 스케일 아웃입니다. 계산을 조각으로 나눌 수 있어야 대수를 늘린 만큼 시간이 줄어듭니다.

분석 인프라 선택 기준

직접 세울 것인가 빌릴 것인가

분석 환경을 자체 장비로 세우는 것을 온프레미스라 합니다. 클라우드와 견줄 때 갈리는 지점이 넷입니다.

기준 온프레미스 클라우드
비용 구조 초기 투자가 크고 이후가 작다 초기 투자가 없고 쓴 만큼 낸다
부하 대응 최대치에 맞춰 사 둬야 한다 필요할 때 늘리고 끝나면 줄인다
데이터 통제 물리적으로 조직 안에 있다 제공자 설비에 있다
운영 인력 장비·네트워크까지 직접 맡는다 밑단은 제공자가 맡는다

고를 때 보는 것

기준은 부하의 모양과 데이터의 성격 둘로 요약됩니다. 분석 작업은 대체로 평소에는 한가하고 특정 시기에 몰리는 모양이라 클라우드의 탄력성과 잘 맞습니다. 월말 집계 때만 수십 대가 필요하고 나머지 기간에는 두세 대면 되는 일에 최대치를 사 두면 그 차액이 그대로 놀게 됩니다.

반대로 개인정보나 금융 데이터처럼 밖으로 내보내기 어려운 데이터, 그리고 부하가 늘 고르게 유지되는 상시 작업은 온프레미스가 유리합니다. 실제 현장에서는 민감한 원본은 안에 두고 가공된 데이터로 하는 대규모 계산만 밖으로 보내는 하이브리드가 흔합니다. 이 절은 계산 없이 상황을 주고 어느 쪽을 고르겠느냐를 묻는 지문으로 나옵니다.

연습 문제

  1. 분석 작업에 인스턴스 20대를 6시간 동안 쓴다. 인스턴스 한 대의 요금이 시간당 400원일 때 총비용은?
    ① 2,400원
    ② 8,000원
    ③ 48,000원
    ④ 480,000원
    ③. 400×20×6=48,000400 \times 20 \times 6 = 48{,}000 원입니다. 같은 일을 온프레미스로 하려면 20대를 상시 보유해야 하는데, 이 작업이 한 달에 한 번뿐이라면 나머지 시간의 장비 값이 그대로 놀게 됩니다. 클라우드의 탄력성이 분석 부하와 맞는 이유가 이 대비입니다.
  2. 노드 한 대가 시간당 250GB를 처리한다. 3TB를 2시간 안에 끝내려면 최소 몇 대가 필요한가? (1TB = 1,024GB)
    ① 6대
    ② 7대
    ③ 12대
    ④ 13대
    ②. 처리량은 3×1024=3,0723 \times 1024 = 3{,}072 GB이고 2시간 안에 끝내려면 시간당 1,536GB를 처리해야 합니다. 1536÷250=6.141536 \div 250 = 6.14 이므로 올림해 7대입니다. 6대로는 시간당 1,500GB라 2시간을 넘깁니다. 이렇게 대수를 늘려 처리량을 키우는 것이 스케일 아웃입니다.
  3. 하이퍼바이저에 대한 설명으로 옳은 것은?
    ① 1형은 호스트 OS 위에 설치되어 개인 PC에 주로 쓰인다
    ② 2형은 하드웨어 바로 위에 설치되어 중간 층이 없다
    ③ 전가상화는 게스트 OS를 수정하지 않고 그대로 올릴 수 있다
    ④ 반가상화는 하드웨어를 완전히 흉내 내므로 전가상화보다 느리다
    ③. ①과 ②는 두 유형의 설명이 서로 뒤바뀌었습니다 — 1형이 하드웨어 위, 2형이 호스트 OS 위입니다. ④도 거꾸로입니다. 하드웨어를 흉내 내는 쪽이 전가상화이고, 반가상화는 게스트 OS를 고쳐 하이퍼바이저를 직접 부르게 하므로 흉내 내는 비용이 줄어 더 빠릅니다.
  4. 다음 상황에 가장 알맞은 서비스 모델은?
    「분석팀이 특정 버전의 커널 옵션과 GPU 드라이버를 직접 맞춰야 하고, OS 패치 주기도 팀이 정하려 한다.」
    ① IaaS
    ② PaaS
    ③ SaaS
    ④ 셋 다 같다
    ①. OS부터 이용자가 맡는 모델은 IaaS뿐입니다. PaaS는 실행 환경까지 제공자가 관리하므로 커널 옵션을 고를 수 없고, SaaS는 완성된 프로그램을 쓰는 자리라 더 말할 것이 없습니다. 자유도가 큰 만큼 보안 패치 책임도 함께 온다는 점이 짝으로 나옵니다.
  5. 스토리지 연결 방식에 대한 설명으로 옳지 않은 것은?
    ① DAS는 서버에 직접 붙어 빠르지만 다른 서버가 함께 쓰기 어렵다
    ② NAS는 네트워크를 통해 파일 단위로 접근한다
    ③ SAN은 전용 네트워크로 블록 단위 접근을 제공한다
    ④ NAS는 SAN보다 구성이 복잡하고 비용이 높다
    ④. 거꾸로입니다. NAS는 일반 네트워크에 파일 서버를 붙이는 방식이라 구성이 쉽고 저렴하며, SAN은 전용 네트워크와 전용 장비가 필요해 비싸고 복잡합니다. 대신 SAN이 더 빠르고 크게 확장됩니다.
  6. 서술형 연습입니다. 월말 사흘 동안만 평소의 스무 배 부하가 걸리는 집계 작업이 있고, 원본 데이터에는 고객 개인정보가 들어 있습니다. 인프라를 어떻게 구성하겠는지 배치 모델과 확장 방식을 들어 밝히고, 그 구성이 갖는 위험 하나와 대응을 5줄 이내로 쓰시오.
    채점 기준은 셋입니다. (1) 배치 모델을 고르고 근거를 댔는가 — 하이브리드가 표준 답입니다. 개인정보가 든 원본은 통제와 규제 대응이 필요하므로 사설 쪽에 두고, 사흘만 몰리는 계산 부하는 공용 쪽 자원을 그때만 빌려 처리한 뒤 내려놓습니다. 최대 부하에 맞춰 온프레미스를 사 두면 나머지 27일치 장비 값이 그대로 놀게 된다는 점을 비용 근거로 들어야 합니다. (2) 확장 방식을 짚었는가 — 집계는 조각으로 나눌 수 있는 작업이므로 한 대를 키우는 스케일 업이 아니라 같은 사양의 대수를 늘리는 스케일 아웃을 쓰고, 부하가 끝나면 줄이는 탄력성으로 비용을 끊습니다. (3) 위험과 대응을 구체적으로 적었는가 — 밖으로 나가는 데이터에 개인정보가 섞이는 것이 가장 큰 위험이고, 식별자를 지우거나 가명 처리한 가공 데이터만 내보내고 결합 키는 안에 남기는 것으로 대응합니다. 두 환경 사이 전송 구간의 암호화, 클라우드 쪽 저장소의 접근 통제와 작업 종료 후 삭제를 적어도 됩니다. 어느 모델에서도 데이터에 대한 책임은 이용자 쪽에 남는다는 점을 근거로 들면 가점입니다. 모델만 고르고 위험과 대응을 빠뜨리면 배점의 3분의 1만 붙습니다.
데이터분석 전문가(ADP) 시험 노트 전체 보기