병훈's Blog

서버 호스팅 강의 04 클라우드 컴퓨팅 이론 본문

Computer/Server

서버 호스팅 강의 04 클라우드 컴퓨팅 이론

thdqudgns 2024. 1. 10. 19:19

 

안녕하세요. 서버를 설정하기 위한 클라우드 컴퓨팅에 대해서 알아보겠습니다.

 

 

서버 컴퓨터를 다룰 때, 누가 갖고 있는지에 따라 두 가지로 나눌 수 있습니다.

내가 서버 컴퓨터를 소유하고 관리한다면 on-premise,

컴퓨터 자원을 가상화 기술로 제공받으면 클라우드입니다.

 

대표적인 클라우드 서비스를 회사로는 아마존의 AWS, 구글의 GCP, MicrosoftAzure가 있습니다.

클라우드 제공 업체, Cloud Service Provider를 줄여서 CSP라고도 부릅니다.

 

이어서 이러한 클라우드의 분류를 알아보죠.

 

 

클라우드를 분류할 때에는 유형에 따라서 분류할 수도 있고, 서비스에 따라서도 분류할 수 있습니다.

먼저 유형에 따른 분류를 보자면, 제약 없이 인터넷을 통해 모두가 사용할 수 있는 Public 클라우드.
반대로 완전히 독립적인 접근 권한이 있는 단일 고객만 IT 인프라를 독점적으로 사용하는 경우를 Private 클라우드라고 합니다.
그리고 PublicPrivate를 같이 쓰는 것. 이것을 하이브리드 클라우드라고 부릅니다.
마지막으로 Multi 클라우드는 여러 회사의 클라우드 서비스를 이용하는 것입니다.

 

Public이나 Private가 접근 권한을 기준으로 나뉘어 졌다면,

Multi 클라우드는 클라우드 서비스를 사용하는 회사의 개수를 기준으로 이름을 붙였습니다.

 

서비스에 따라서 이아스, 파스, 사스로도 구분이 됩니다.

그림을 보며 설명드리겠습니다.

 

 

그림을 보시면 내가 다뤄야 하는 영역과 서비스를 제공받는 영역이 있습니다. 다시 말해서 내가 다룰 수 있는 부분과 다룰 수 없는 부분에 따라 클라우드 서비스 유형이 구분됩니다. 만약에 ..? 이 부분도 내가 다루고 싶은데?’ 라는 생각이 드신다면 그걸 할 수 있는 클라우드 서비스를 선택하시면 됩니다.

 

먼저 on-premise 입니다. 이건 클라우드는 아닙니다. 사용자가 모든 것을 해결하기 때문이죠. HW, 네트워크, 서버, 가상화, 운영체제, 미들웨어, 애플리케이션까지 다룹니다. 프레미스의 장점은 사용자가 자유롭게 인프라를 구성할 수 있다는 것입니다. 그러나 그만큼의 인력과 비용이 필요하겠죠.

 

IaaS 입니다. 인프라를 제공 받습니다.

네트워크, 서버, 가상화 및 스토리지는 우리가 관리할 필요가 없습니다.

예시로는 AWS, Google Cloud와 같은 퍼블릭 클라우드 제공 업체의 컴퓨팅 서비스가 있습니다.

 

PaaS입니다. 플랫폼을 제공 받습니다.

공급자가 자체 인프라를 구축하고 플랫폼을 제공해주기에 사용자는 인프라나 플랫폼을 구축할 필요가 없고 유지 관리할 필요도 없이 // 자신의 앱만 개발하면 됩니다. 개발에 필요한 라이브러리, 개발 도구 등이 포함된 플랫폼을 제공받기 때문입니다.

 

· AWS Elastic Beanstalk

· Microsoft Azure

· Google App Engine

· Salesforce aPaaS

· SAP Cloud Platform

· Cloud Foundry

· Red Hat OpenShift

 

PaaS에 해당됩니다.

 

SaaS입니다. 소프트웨어를 제공 받습니다.

웹 브라우저를 통해 공급자가 관리하는 애플리케이션을 제공받는 서비스입니다

예를 들어 구글 클라우드, 네이버 클라우드 같은 웹 기반 서비스가 SaaS 입니다.

 

 

AWS의 대표적인 인프라 서비스로는 EC2Lightsail이 있습니다.

두 서비스의 차이를 보고, Lightsail을 사용할 것인지, EC2는 어디에 더 적합한지 말씀 드리겠습니다.

 

먼저 EC2의 플랜 즉 종류를 보자면 굉장히 다양합니다.

균형 있는 컴퓨터가 필요할 때 사용하는 범용,
고성능 프로세서를 활용하는 컴퓨팅 집약적인 애플리케이션에 적합한 컴퓨팅 최적화,
메모리에서 대규모 데이터 세트를 처리하는 데 적합한 메모리 최적화,
부동 소수점 계산이나 그래픽 처리, 데이터 패턴 일치 등의 성능이 필요할 때 사용하는 가속 컴퓨팅,
매우 큰 데이터 세트에 대해 많은 순차적 읽기 및 쓰기 액세스를 요구하는 업무에 적합한 스토리지 최적화,
HPC 워크로드를 대규모로 실행할 때 최고의 가격 대비 성능을 제공하도록 특별히 제작된 HPC 최적화

 

이렇게 다양한 플랜을 통해 사용자는 자신에게 필요한 컴퓨팅 서비스를 사용할 수 있습니다.

소규모 어플리케이션에서 기업용 어플리케이션까지 넓은 폭으로 사용됩니다.

 

또한 Auto Scaling 기능을 통해 트래픽이 높아졌을 때 탄력적으로 대응할 수 있고,

사용자가 자원과 네트워크를 관리할 수 있습니다. 그만큼 관리에 난이도가 있겠죠.

 

마지막으로 요금은 사용한 만큼 지불하는 것이 기본이지만

온디맨드, 예약, 절감, 스팟, 전용 등의 구매 옵션이 있습니다.

오랫동안 사용할 것이면 저렴하게 해주고, 사용하지 않을 때는 종료시켜주며 비용을 절감시키는 등의 옵션입니다.

 

그에 반해 Lightsail은 요금, 메모리, 프로세싱, 스토리지가 고정된 7개의 플랜만 있습니다.

확장성이 없고, 탄력적 볼륨이 없고, 자원관리와 네트워크도 거의 다루지 않고,

요금은 고정된 요금제에 사용한 시간만큼 지불합니다.

성능과 요금이 EC2에 비해 낮고, 사용하기 쉽기 때문에 Ligth라는 이름을 붙인 것 같습니다.

 

정리하겠습니다.

 

간단한 애플리케이션을 개발하거나 테스트하는 단계에서는 Lightsail을 이용하는 것이 적합합니다.

요금이 저렴하고, 사용하기 쉽고, 다른 자원들을 관리할 필요가 적기 때문입니다.

그렇기 때문에 저는 Lightsail을 사용하겠습니다.

 

반면에 애플리케이션을 지속적으로 개발하고, 운영하고, 네트워크를 관리하고, 트래픽을 관리해야 한다면 EC2가 적합할 것입니다. EC2의 구매 옵션과 플랜이 다양한데, 성능과 요금을 고려하여 적절한 선택을 해야 합니다.

 

 

Lightsail을 사용하면서 서버를 다룰 때에는 그래픽이 아닌 Commad Line Interface 즉 명령어로 다룰 것입니다.

Termius는 SSH로 서버에 접속하여 CLI로 서버를 다루도록 도와주는 도구 입니다.

웹 사이트나 운영체제 별 스토어에서 다운받을 수 있습니다.

Putty라는 도구보다 간단하고 예쁜 UI를 지니고 있습니다.

 

SSH는 Secure Shell의 줄임말로, 네트워크 상 다른 컴퓨터의 쉘을 사용할 수 있게 해 주는 프로그램 혹은 그 프로토콜을 의미합니다.

 

(shell)은 운영 체제 상에서 다양한 운영 체제 기능과 서비스를 구현하는 인터페이스를 제공하는 프로그램입니다.

 

그럼 다음 시간부터 바로 서버 호스팅을 위한 실습을 시작하겠습니다. 감사합니다.


참고 및 출처 :

728x90
728x90