클라우드 컴퓨팅 소개
클라우드 컴퓨팅은 쉽게 이야기하여, 큰 웹 에이전시 회사의 데이터 센터를 생각하면 쉽게 이해할 수 있습니다.
데이터 센터에 소모되는 비용은 매우 비싸지만, 시간이 지나면서 서버들의 가치는 하락하게 되어 있다. 밀려드는 방문자, 배치 작업, 대용량 데이터를 처리하기 위해 기다리고 있지만 100% 서버 자원을 활용할 수는 없습니다.
그 이유는 웹 트래픽을 예측하고 리소스를 배치하는 일에 문제가 있기 때문이다. 자원을 예측하는 것 중 과도하게 낙관적인 예측은 리소스의 공급 과잉으로 이어지고, 이는 비용 상승과 회사 리소스 낭비를 초래합니다.
그러나, 클라우드 컴퓨팅이라면 위와 같은 즉시 맞춤형 리소스 관리를 완벽하게 실현할 수 있습니다. 데이터 처리 기반 설비인 서버, 스토리지, Bandwidth(대역폭)은 클라우드로부터 확보되며, 필요할 때 소모되고 불 필요시 클라우드로 다시 반환됩니다.
1. 클라우드란?
클라우드(구름 모양)는 인터넷을 나타내기 위해 사용되어 왔습니다.
이 인터넷의 의미는 리소스에 접근하기 위한 수단을 포함하여, 일반적으로 인터넷 상에 존재하는 리소스도 포함됩니다.
클라우드 컴퓨팅(Cloud Computing)의 개념은 기존에 존재하던 개념이 였지만, 클라우드 컴퓨팅이란 용어로 불려진 것은 불과 몇년 전 부터이다. 벤더마다 세부적으로는 다를 수 있지만, 클라우드라고 하면 규모가 크고, 공개적으로 접근 가능한 리소스의 모음이며, 이 리소스는 계산, 저장, 네트워킹을 수행합니다.
클라우드는 본질적으로 다중 사용자로 부터 운영될 수 있으며, 각 사용자마다 관리 및 검증, 할당 리소스 추적 등 다른 사용자에 의해 간섭받지 않고 보호받을 수 있어야 합니다.
이러한 관점에서는 각 벤더의 클라우드를 실행하는 소프트웨어는 우리가 사용하고 있는 OS와 유사한 개념으로 설명됩니다.
2. 클라우드의 특징
1) 탄력성 : 클라우드 이용시 리소스의 할당량 조절이 간편합니다. 기존의 업무에서는 리소스(자원)를 할당받기 위해서, 관리자의 승인이 필요했고 그 안에서도 몇 가지의 업무 절차를 밟아햐 했습니다.
하지만, 클라우드에서는 리소스를 할당 받고 사용하는데에 불과 몇분 정도이면 가능합니다.
2) 사용한 만큼 지불: 클라우드의 특징 중 하나가 입니다. 이것은 비즈니스의 특징이라기보다는 일반적인 클라우드 컴퓨팅의 특징입니다.
3. 비즈니스 특징
클라우드 컴퓨팅을 비즈니스 관점에서 정의하면 아래와 같습니다.
1) 선행 투자비용이 없다 : 클라우드 컴퓨팅은 리눅스 맞춤형 사용을 충족하기 위해 만들어졌기 때문에 서비스(수요 발생)를 하기 전이라면 대규모의 투자 비용은 필요하지 않습니다.
2) 고정 비용이 변함 : 기존의 일반 기업에서 벤더사의 계약기간(1~3년)을 갖는 것과 달리 클라우드 컴퓨팅은 사용하는 리소스에 의해서 요금이 측정되고 실시간 변경 됩니다.
3) 비즈니스의 유연성 확보 : 리소스를 장기간 계약하지 않으므로, 비즈니스 유형의 변경 업무의 변경에 따라서 신속하게 대처할 수 있습니다.
4) 제공업체가 클라우드 비즈니스에 집중 : 클라우드 제공업체는 공공의 이용을 위해 클라우드를 제공하는 비즈니스를 합니다.
따라서, 클라우드 제공업체는 신뢰성, 적응성, 비용 효과성이 확보된 서비스를 제공하는 일에 집중할 수 밖에 없습니다.
4. 클라우드 컴퓨팅에 대한 잘못된 오해
1) 클라우드에 맞게 애플리케이션 아키텍처를 재 구성해야 한다 : 클라우드가 제공하는 이점을 이용하기 위해서는 일부 오래된 애플리케이션에서는 아키텍처를 다시 구성해야 하는 것이 맞지만, 상용이나 오픈 소스 스택을 사용하는 기존의 많은 애플리케이션에서는 조금만 변경해서 클라우드로 옮겨갈 수 있습니다.
2) 클라우드는 안전성이 보장되지 않는다 : 데이터의 가치를 잘 알고 있는 기업에서는 함부로 회사의 자산을 클라우드 업체에 맡길 수 없습니다. 이는 기업에서 그렇지만, 클라우드 공급 업체들도 보안 문제를 심각하게 관리하고 있습니다.
고급 보안 시스템, 네트워크 어드레싱의 완전한 통제, SAS 70 같은 인증서가 연계된 암호화 지원은 불안해하는 관리자들에게 확심을 심어줍니다.
3) 클라우드는 오픈 소스 코드 실행에서만 적합하다 : 이전과 달리 이젠 상용 운영체제와 애플리케이션 소프트웨어도 클라우드를 합적인 소프트웨어 환경으로 인식하고 있으며, 자신들의 애플리케이션이 클라우드에 맞는 라이선스를 가질 수 있도록 필요한 작업을 합니다. 이제 수~수천 달러의 데이터베이스 라이센스를 구매하기보다 같은 데이터베이스를 시간당 몇 달러의 비용을 내고 사용할 수 있습니다.
5. 클라우드 사용 사례
1) 정적인 웹 사이트와 복잡한 웹 애플리케이션 호스팅 : 클라우드는 정적인 HTML 페이지, CSS 스타일 시트, 이미지에서 만들어진 정적인 웹 사이트를 쉽게 호스트할 수 있다. 클라우드에서 더 복잡한 웹 사이트도 호스트 할 수 있으며, 가장 간단한 것은 클라우드 스트로지만으로도 호스트 될 수 있으며 콘텐츠 배포 시스템으로 약간만 지원하면 됩니다.
2) 소프트웨어 개발 생명 주기 지원 : 개발 중에 클라우드를 사용하면 개발자는 작업에 필요한 적절한 리소스를 확보할 수 있습니다.
기존의 전통적인 3계층(웹, 어플리케이션, 데이터베이스) 웹 애플리케이션을 구축하고 있으며, 개발 중에는 각 계층은 별도의 물리적 장비들이 필요했습니다. AWS가 없으면 각 개발자는 3대의 서버가 필요하고 이 서버들 중 상당수가 꽤 많은 유휴시간을 갖을 수도 있습니다. 반면, 클라우드는 각 개발자가 테스트하고 업무시간이 종료되면 리소스는 다시 클라우드로 반환됩니다.
단위 테스트가 많으면 로드를 분산하기 위해 여러 대의 병렬 서버를 사용하면 되고, 지속적인 통합 환경을 지원합니다.
각 소스 코드를 처리하기 위해 코드가 다수의 타겟 환경(여러 버전의 리눅스)이나 플랫폼(NT/Linux)이 요구된다면, 자체 인프라를 보유하는 측면보다 매우 효과적입니다.
3) 데모 시스템 및 학생들의 교육 : 클라우드는 소프트웨어 애플리케이션의 데모 및 시험 버전을 호스트하고 배포하기 위해 클라우드 리소스를 사용할 수 있습니다.
낮은 비용과 쉬운 방법으로 클라우드에 호스팅 된 서버에 접근 가능하며, 벤더사들은 적절한 테스트 환경이 준비될 동안 기다리기 보단 고객들에게 데모를 제공 할 수 있습니다. 그리고, 각 랩톱 환경이 필요한 학생들의 실습 시간등에도 이용 가능합니다.
4) 업무 및 과학용 데이터 처리 : 과학 및 업무용 데이터 처리에는 많은 양의 데이터가 관여되며, 그에 따른 큰 규모의 자원들이 필요로 합니다.
업무용 데이터는 정해진 일정이 특별히 없을 수 있으며, 아니면 조금은 일상적일 수 있습니다.
규모가 크고 트래픽이 많은 웹 사이트는 하루에 수십 기가 바이트의 로그 파일 데이터를 생성할 수 있는 반면, HR관련 업무에서는 매월 이뤄지는 임금 지불 처리, 웹 로그 처리 등에 사용 가능합니다.
클라우드는 적절한 시점에 사용 관련 데이터에 접근 가능하며, 사이트를 최적화시킬수 있고, 변화와 흐름에 더 빨리 대응할 수 있습니다.
'1. 컴퓨터 상식 > ★ 용어정리' 카테고리의 다른 글
인터넷 도메인 주소 어떻게 만드나? (0) | 2015.04.07 |
---|---|
인포그래픽이란 (0) | 2014.11.02 |
스미싱(Smishing) (0) | 2014.11.02 |
파밍(Pharming) (0) | 2014.11.02 |
보이스피싱(Voice Phishing) (0) | 2014.11.02 |