본문 바로가기
코린이의 코딩배우기

[클라우드 컴퓨팅]

by 시리얼헌터 2022. 1. 10.
728x90

1. 클라우드 컴퓨팅 개념의 등장

‘클라우드 컴퓨팅’은 언제 처음 등장했을까요? 의견이 분분하지만, 그 개념 자체는 1961년 John McCarthy라는 컴퓨터 과학자가 맨 처음 제시한 것으로 보입니다. 당시 그는 이렇게 말했습니다.

“컴퓨팅 또한 지금의 전화 시스템처럼 언젠가 public utility가 될 것입니다. 그리고 누구나 그것을 사용하는만큼 돈을 지불하게 될 것입니다.”

구글 드라이브같은 서비스들이 처음에는 무료지만, 용량을 늘리려고 하면 추가 요금을 내야 하는데요. 우리가 구글의 컴퓨터 자원을 사용하는만큼 돈을 지불하는 구조라고 할 수 있습니다. 1961년에 John McCarthy가 한 말이 현실이 된 셈이죠.

2. 클라우드 컴퓨팅 기술의 등장

1967년 IBM에서는 CP-40이라는 운영 체제를 통해, 오늘날 클라우드 컴퓨팅을 가능하게 해준 ‘가상화' 기술을 구현했습니다. 가상화 기술이 무엇인지는 다음 챕터에서 설명하겠습니다.

그럼 클라우드 컴퓨팅이라는 용어 자체는 언제 처음 언급되었을까요? 이에 대해서도 의견은 다양합니다. 하지만 현대적인 의미에서의 ‘클라우드 컴퓨팅’은 1996년, 컴팩(Compaq)이라는 기업에서 처음 사용한 것으로 보입니다. 당시 회사의 사업계획서에서 ‘클라우드 컴퓨팅’이라는 단어가 처음 등장했다고 하네요.

그후 가상화 기술이 계속 발전해오다가, 1998년에 Vmware라는 기업이 창립되면서 가상화 기술에 큰 도약이 있었습니다. 참고로 VMware는 아직까지도 가상화 기술의 대명사라고 불릴 정도로 가상화 기술의 발전에 큰 기여를 한 기업입니다. 그리고 VMware 뿐만 아니라 많은 기업들이 가상화 기술을 발전시켜 온 덕분에 오늘날 클라우드 컴퓨팅이 보편화될 수 있었습니다.

3. 클라우드 컴퓨팅의 대중화

클라우드 컴퓨팅이 일반 대중에게까지 알려지게 된 것은 바로 아마존이라는 기업 때문입니다. 아마존은 세계적인 전자상거래 기업으로 유명한데요. 아마존과 클라우드 컴퓨팅이 대체 무슨 연관이 있는 것일까요?

사실 아마존 그 자체가 아니라, 아마존의 자회사인 'AWS(Amazon Web Services)' 때문에 ‘클라우드 컴퓨팅’이라는 표현이 대중화된 것입니다. 그런데 구글 드라이브나 구글 스프레드시트처럼 누구나 알만한 서비스가 없는 것 같은데, 어째서 구글이 아니라 아마존이 클라우드의 대중화를 이끈 것일까요?

AWS가 제공하는 서비스는 우리가 흔히 사용하는 구글 드라이브 같은 서비스와는 아예 다른 종류라서 그런 것입니다. 이에 대해서는 다음 레슨에서 좀 더 자세히 알아볼게요.

 

<서버란?>

개인 기기들과 통신하며 서비스를 제공하는 컴퓨터

서버 컴퓨터 실제 모습

자체서버를 구축하려면 아래의 시설이 모두 필요함

그래서 서버 도매상이 생겨남   :  호스팅 서비스

'가상화'라는 기술을 통해 필요한 서버와 준비한 서버의 격차를 더 줄이고 있다

 

 

 

 

클라우드 서비스가 제공하는 서비스에는 호스팅 말고 가상 머신을 빌려주는 것도 있다.

 

가상머신이란?

가상화 기술로 만들어낸 가상의 컴퓨터 : 물리적으로 한 대인 컴퓨터 안에 여러개의 컴퓨터가 있는 것처럼 만들어주는 기술/ 인스턴스라고 부르기도 함

물리적 컴퓨 한 대로 세 대의 컴퓨터를 만듦 하이퍼바이저가 가상화를 해주는 프로그램임

서비스 인프라를 구축할 때 용도에 맞게 서버(서버용 컴퓨터)가 필요하다.

그런데 한 컴퓨터 당 하나의 목적으로 구축해야 에러 날 확률도 적고 관리가 용이하다. 

그렇다고 네 개의 서버를 호스팅 하자니 한 컴퓨터 당 CPU등의 활용도가 낮아져 비용낭비다.

그래서 하나의 물리적 컴퓨터에 만들어진 가상 머신을 빌려 독립된 컴퓨터들을 만든 뒤 각 용도에 맞게 서버를 구성하는 것이다. 

마치 아이맥에 OS 두 개 깔아서 하나로는 윈도우 친화적 프로그램, 하나는 맥 친화적 프로글매을 사용하는 것과 비슷한 것이라고 보면 되려나..?

 

 

클라우드 서비스의 분류

 

 

 

클라우드 서비스의 다섯 단계:

하드웨어 컴퓨터->가상화를 거쳐->운영체제를 심고->앱이 운영체제에서 잘 돌아갈 수 있는 환경을 구축하는 런타임 단계의 프로그램을 깔고(예를들어 파이썬이나 자바머신등, 고수준 언어를 머신코드로 번역해주는 번역기)->애플리케이션(사용자 이용단계)

 

사용자가 이 다섯 단계의 접근 용이성에 따라 클라우드 서비스는 IaaS  /   PaaS  /  SaaS로 나뉜다.

 

 

기업의 서버 이용 방식

온프레미스 : 기업내에 서버룸 두고 자체 서버 운영

퍼블릭 클라우드 : 공공 클라우드 이용

프라이빗 클라우드: 좀 더 사적인..

--호스티드 프라이빗 클라우드 : 외부 기업의 서버를 빌리기는 하는데, 물리적 컴퓨터 한 대에서 나온 가상 머신은 오로지 해당 기업만을 위해 사용되도록 하여 보안문제나 에러문제를 예방

--온 프레미스 프라이빗 클라우드 : 기업이 직접 클라우드를 구축

하이브리드 클라우드 : 위의 방식을 여러개 겸하는 것

 

 

클라우드 서비스 제공 기업

해외 1위 AWS(아마존 업계최초)

2위 마이크로 소프트 AZure(?)  - 엑셀, office 365등의 소프트 웨어와 연동 가능하게 하여 사무직에 사용 많음

3위 구글 - 기존의 데이터 베이스, AI등의 기술과 결합 가능성

 

 

AWS 제공 서비스 살펴보기

EC2 : OS만 설치된 가상머신(인스턴스)를 빌려주는 서비스

EBS : 저장장치 (블록 스토리지  씨드라이브 같은것 )

S3 : 저장장치 (오브젝트 스토리지 : 블록스토리지 위에 사용자가 좀 더 쉽고 직관저긍로 파일 관리를 할 수 있도록 한 것. 예를들면 웹페이지에 파일을 업로드하고 url을 받아서 저장된 파일의 위치를 받을 수 있는 느낌쓰)

RDS : 데이터를 저장하는 DB서버를 만드는 프로그램  EC2를 사지 않아도 자동으로 DB서버에 필요한 컴퓨터 저장장치 등등을 세팅해줌

Auto Scaling : 앱 사용자의 실시간 트래픽에 따라서 자동으로 서버를 더 사거나 반납함

 

 

리전 선택

데이터 센터 : 실제 물리적 컴퓨터가 구축되어있는 곳

전세계에 데이터 센터가 편재함

서비스 사용자와 데이터 센터의 리전이 멀어질 수록 속도가 느려짐

따라서 미국에서 제공할 서비스의 서버는 미국에 위치한 데이터 센터 리전을 사용하는 것이 좋음

법/제도적으로 사용해야하는 특정 리전이 정해지기도 함

 

728x90
반응형

댓글