아래는 NIST에 올라온 cloud computing에 대한 정의에 대한 내용입니다.
http://faculty.winthrop.edu/domanm/csci411/Handouts/NIST.pdf
글을 읽고 cloud computing에 대해 정리해보려 합니다
Cloud computing
클라우드 컴퓨팅은 어디서든 접근 가능한 on-demand 네트워크 방식의 네트워크 모델입니다.
클라우드 컴퓨팅은 네트워크나 서버, 스토리지, 서비스 등을 공유하기 위해 사용됩니다.
빠른 시간 안에 프로비저닝과 배포를 가능하게 한다는 장점이 있습니다.
클라우드 모델은 5가지 특성, 3가지 서비스 모델 그리고 4가지 구축 모델로 설명할 수 있습니다.
1. 클라우드 컴퓨팅의 특성
1) 사용자 필요에 따른 서비스 맞춤화 (on-demand self service)
사용자는 필요에 따라 스토리지나 컴퓨팅 기능(colab의 GPU 등)을 자동으로 프로비저닝할 수 있습니다.
필요한 때에 필요한만큼의 자원을 가져와 사용할 수 있습니다.
개인이 직접 컴퓨터를 구축한다면 그만큼 시간적, 금전적 낭비가 발생할 수 있지만 클라우드 컴퓨팅을 통해 이러한 소비를 최소화하고 빠르게 맞춤화된 서비스를 사용할 수 있습니다.
2) 광범위한 네트워크 접속 (Brand network access)
여러 플랫폼들(휴대폰, 태블릿, 노트북 ...)에서 표준 메커니즘과 네트워크를 통해 기능을 사용할 수 있습니다.
3) Resource pooling, shared pool
공급자의 컴퓨팅 리소스는 여러 사용자에게 서비스를 제공하기 위해 pooling되며, 요구에 따라 서로 다른 물리적 가상 리소스가 동적으로 할당됩니다.
사용자가 필요할 때 리소를 사용한 후 다시 반납, 한 명의 사용자가 사용하지 않더라도 다른 사용자가 다시 리소스를 사용합니다.
4) 빠른 탄력성 (Rapid elasticity)
유동적으로 프로비저닝과 릴리스가 가능합니다. 필요에 따라 리소스 할당을 빠르게 늘리거나 줄일 수 있습니다.
개인이 온프레미스 방식으로 서비스를 구축한다면 리소스가 많이 사용되지 않을 때는 리소스의 낭비로 이어질 수 있습니다. 클라우드 컴퓨팅을 통해 유동적으로 리소스의 조절이 가능하기 때문에 리소스의 낭비를 줄일 수 있습니다.
5) 서비스의 측정 (Measured service)
리소스 사용을 모니터링, 제어하고 보고하여 공급자와 사용자 모두에게 서비스에 대한 투명성을 제공할 수 있습니다.
사용자는 서비스를 사용한만큼의 가격만을 지불할 수 있고 공급자는 모니터링을 통해 리소스 사용을 최적화할 수 있습니다.
2. 서비스 모델
1) SaaS(Software as a Service)
사용자는 클라우드 인프라 위에 있는 어플리케이션을 사용할 수 있습니다.
어플리케이션은 웹브라우저나 프로그램 인터페이스를 통해 클라이언트 장치에 접근할 수 있습니다.
사용자는 서비스 아래에 있는 서버나 네트워크, OS 등에 대해 몰라도 서비스를 사용할 수 있다는 장점이 있습니다.
사용자는 어플리케이션 환경 설정 이외에는 고려하지 않아도 됩니다.
ex) Gmail, Google Docs, Youtube, Facebook, Dropbox & spotify ....
2) PaaS(Platform as a Service)
사용자는 프로그래밍 언어나 라이브러리, 소프트웨어 도구를 사용해 클라우드 인프라 위에서 배포할 수 있습니다.
플랫폼 환경 아래에 있는 서버나 네트워크, OS 등을 고려하지 않고 플랫폼을 사용할 수 있다는 장점이 있습니다.
사용자는 어플리케이션과 어플리케이션 호스팅 환경 이외에는 고려하지 않아도 됩니다.
ex) docker, kubernetes, AWS Lambda, Google cloud platform, Apache spark, hadoop ....
3) IaaS(Infrastructure as a Service)
사용자는 컴퓨팅 리소스나 네트워크 등 기본적인 클라우드 인프라를 고려하지 않고 운영체제와 스토리지, 배포된 어플리케이션을 사용하고 제어할 수 있습니다.
일부 네트워킹 구성요소에 대한 접근이 제한적일 수 있습니다.
ex) Amazon EC2, Amazon S3, Window Azure ....
3. 배포 모델
1) Private cloud
여러 사용자로 구성된 하나의 그룹이 독점적으로 사용하도록 프로비저닝할 수 있습니다.
해당 그룹이나 그 이외의 제3자에 의해 관리되어집니다.
2) Community cloud
특정 사용자 커뮤니티에서 독점적으로 사용하도록 프로비저닝할 수 있습니다.
커뮤니티 안의 일부 사용자나 그 이외의 제3자에 의해 관리되어집니다.
3) Public cloud
일반 대중이 개방적으로 사용하도록 프로비저닝할 수 있습니다.
기업이나 정부 기관들에 의해 관리될 수 있습니다.
Private cloud나 Community cloud와 달리 클라우드 제공자 안에서 관리되어집니다.
4) Hybrid cloud
2개 이상의 클라우드 인프라로 구성된 클라우드로 데이터 및 어플리케이션 이식이 가능하도록 결합되어진 클라우드입니다.
'CS > Network' 카테고리의 다른 글
[Network] IP(Internet Protocol) (0) | 2022.10.29 |
---|---|
[Network] Client-Server 모델와 P2P(Peer-to-Peer) 모델 (0) | 2022.10.26 |
[Network] NAT, PAT (Network Address Translation, Port Address Translation) (0) | 2022.10.26 |
[Network] TCP/IP Model (0) | 2022.09.07 |
[Network] OSI 7 layer Model (5) | 2022.09.07 |