모두를 위한 클라우드 컴퓨팅 1

cloud-computing

기본 개념


유휴자원을 활용하는 방법


HTC vs HPC


클라우드 컴퓨팅 서비스 종류


클라우드 서비스를 가능케 하는 기술


하이퍼바이저의 2가지 타입


HTC의 또 다른 예: 그리드 컴퓨팅


연습문제

  1. 클라우드 컴퓨팅에 대한 정의를 기술해보라.

    • 데이터 스토리지나 컴퓨팅 파워 같은 컴퓨터 시스템 리소스를 온디맨드(우리가 원하는 시점에 원하는 자원을 쓸 수 있다는 것) 방식으로 제공하는 것이다.
  2. 컴퓨팅의 성능, 용량을 늘리는 방법들은 무엇이 있는가?

    • 컴퓨터의 하드웨어 성능 높이기(CPU/메모리 등)
    • 클러스터링(독립된 컴퓨터들을 네트워크로 연결하여 하나의 컴퓨터로 사용)
  3. 클라우드 컴퓨팅과 그리드 컴퓨팅의 공통점은 무엇이고 차이점은 무엇인가?

    • 공통점: 자원 활용성 높이는게 목표이며 HTC에 속함
    • 그리드(클러스터)컴퓨팅: 클러스터링 사용, 오케스트레이션 기반, WAN
    • 클라우드 컴퓨팅: 자원분리 사용, 가상화기반(하이퍼바이저), LAN
  4. 자원의 활용성(utilization)을 높이기 위한 방법에 대해서 설명하라.

    • 특정시간동안 사용되지 않는 컴퓨터 유휴자원 활용(중재자 필요)
    • 작업의 로드가 작은 컴퓨팅 자원의 활용(중재자 필요)
    • 가상화 기술을 중심으로 한 클라우드 컴퓨팅 활용
  5. 가상화와 오케스트레이션에 대해 설명하라.

    오케스트레이션 가상화
    설명 클러스터링을 통해 컴퓨팅 성능을 향상시키는 방법의 기반이 되는 기술 자원을 분리하여 성능 향상
    서비스(컴퓨팅) 그리드 컴퓨팅, 클러스터 컴퓨팅 클라우드 컴퓨팅
    중재자 네트워크 통신 하이퍼 바이저(= 가상머신 모니터)
    특징 • 중재자에게 필요한 자원 요청

    • 요청 받은 시점에 유휴자원 찾아서 자원 할당
    • SETI@HOME 프로젝트(화면 보호기 소프트웨어 동작) | • 컴퓨팅 자원 내에서 수행되는 중재자
    • 물리적 자원을 여러 대의 가상 자원(독립된 논리적인 컴퓨터)으로 관리
    • 분리된 가상 컴퓨터들로 시스템 안정성 증가(서로 영향을 주지 않음) |

  6. HTC와 HPC의 차이점을 설명하라.

    HTC(high throughput computing) HPC(high performance computing)
    정의 유휴자원의 활용성을 높여 처리량을 높이는 컴퓨팅 기술 빠른 계산을 목표로 하는 컴퓨팅 기술
    네트워크 이더넷(일반 네트워크) 인피니밴드(고속 네트워크)
    범주 그리드 컴퓨팅, 클라우드 컴퓨팅 슈퍼 컴퓨터
    예시 화물차 스포츠카
  7. 아마존과 클라우드의 관계에 대해 설명하라. (AWS 탄생비화)

    • 아마존은 전자상거래 기업으로써, 늘어나는 트랜잭션을 처리하기 위해 컴퓨팅 파워를 갖춰야 했다.
    • 그러나 그 컴퓨팅또한 특정 분기에 높고 낮은 추이를 보였다.
    • 이러한 추이에 따라 컴퓨팅 자원에 유휴자원이 발생하게 되었다. 아마존은 이러한 유휴한 컴퓨팅 자원을 가상화를 통해 판매를 하였다.
  8. 컴퓨터를 가상화할 때 크게 3개의 범주는 무엇이고 각각 가상화는 어떻게 되는지 조사하라.

    • CPU, 메모리, I/O(입출력) 장치들
    • CPU 가상화: Base가 되는 HostOS위에 GuestOS가 구동되는 방식 (virtualBox, VMware player등)
    • 하이퍼바이저가상화: HostOS없이 하드웨어에 하이퍼바이저를 설치하여 사용하는 방식 (Xen, hyper-v, citrix, KVM)
      • 전가상화: 하드웨어를 완전히 가상화, 관리용 가상머신인 DOM0를 통해 모든 가상머신 하드웨어 접근이 이루어짐
      • 반가상화: 하이퍼콜 인터페이스를 통해 하이퍼바이저에게 직접 요청
    • 컨테이너 가상화: HostOS위에 컨테이너 관리 소프트웨어를 설치하여 논리적으로 컨테이너를 나누어 사용 (ex. Docker)
  9. 그리드 컴퓨팅의 개념에 대해서 설명하라.

    • HTC에 속한다.
    • 전세계적으로 유휴한 컴퓨팅자원을 네트워크를 통해 활용 자원을 제공하는 데이터 센터간 연계가 느슨
    • ex. torrent
  10. HTC, HPC, 그리드 컴퓨팅, 클라우드 컴퓨팅, 활용성, 오케스트레이션, 가상화, 슈퍼컴퓨터와 같은 용어를 논리적으로 연계하여 설명하라.

    • 자원의 활용성을 높여서 처리량을 높이는 컴퓨팅 기술을 HTC라고 부른다.
    • HTC에는 그리드 컴퓨팅과 클라우드 컴퓨팅이 속한다.
    • 그리드 컴퓨팅은 독립된 여러 컴퓨터들을 오케스트레이션으로 네트워크를 통해 하나의 컴퓨터처럼 연결하여 유휴자원의 활용성을 높이 방법이다.
    • 클라우드 컴퓨팅은 자원을 분리하여 유휴자원의 성능을 향상시키는 방법으로 하이퍼바이저가 개입되는 방법이다. 하이퍼바이저는 A의 작업과 B의 작업을 분리하여 영향도가 없게 해, 유휴 자원의 활용도를 높여주는 중개자이다.
    • HPCHTC의 반대 개념으로, HPC슈퍼컴퓨터와 같이 빠른 계산을 목적으로 하는 컴퓨팅으로 오직 빠른 계산을 목표로 한다.
  11. 데이터 센터 운영의 3대 이슈를 설명하고 클라우드 컴퓨팅을 통해서 해결할 수 있는지 논하라.

    • 자원의 활용성 : 투자된 설비를 유휴자원 없이 최대로 활용해야 하며 이를 위해 가상화 기술을 중심으로 한 클라우드 컴퓨팅을 적용한다.
    • 안정성 : 작업을 분리하여 안정성을 높인다. 가상화 기술을 적용한 데이터 센터는 문제가 되는 서비스를 다른서비스와 쉽게 분리해 냄으로써 안정적인 서비스가 가능하다.
    • 빠른복구 : 서비스에 문제가 생겼을때, 가상화기술을 통해 생성해낸 이미지 파일을 이용하여 새로운 서비스를 생성해 내고, 빠르게 서비스를 복구 할 수 있다.
  12. 클라우드 컴퓨팅에 대한 다양한 정의가 존재한다. 클라우드 컴퓨팅을 정의할 때 가상화 기술은 필수적인가? 이에 대해 논하라.

    • 클라우드 컴퓨팅은 네트워크를 통해 물리적인 컴퓨팅 자원을 활용하는 것을 의미하기에, 이때 가상화를 통해 적절한 자원 분배와 수행을 진행 할 수 있기때문에 필수적이다.
  13. 클라우드 컴퓨팅을 자원 활용의 관점에서 보는 것은 지엽적인가? 지엽적(minor)이라면 활용성 관점이 아닌 다른 관점에서 클라우드 컴퓨팅의 응용은 무엇이 있는가?

    • 놀고 있는 컴퓨팅 자원 활용의 관점 → 지엽적이지 않다! 중요하다! 이걸 못하면 매출에도 영향이 간다! 운영비(트래픽은 동적인데 무조건 큰 서버를 써야 되니까)가 너무 많이 들 것이다!
    • 아마존 사례, IaaS
    • 활용성의 관점에서는 Gmail같은 SaaS가 있다.