Cloud Computing Services -(2)

Na Jeong·2022년 12월 18일
0

AWS

목록 보기
2/3
post-thumbnail

(1)에 이어서 운영 서버를 구축하는 방법에 대해 알아보려고 한다.

💻온프레미스(On-premise)

💾온프레미스란?

IT 서비스를 기업이 자체적으로 보유한 물리적인 서버에 직접 설치해 운영하는 방식.
이러한 방식은 클라우드 컴퓨팅 기술이 나오기 전까지 기업들이 사용하던 일반적인 인프라 구축 방식이기도 하다.

💾온프레미스의 특징

인프라를 물리적으로 직접 구축하여 운영하는 방식이므로 프로젝트에 필요한 시스템을 구축하기 위해서 기업이 직접 구성에 맞게 하드웨어를 구입해야 한다.
보통 프로젝트에 필요한 자원을 예측하여 인프라 기술자가 물리적인 구성을 설계하는데, 이때 물리적인 구성은 최대 사양을 기준으로 구성되기 때문에 불필요한 비용이 사용될 수도 있다.
또한, 구축 후에도 지속적인 모니터링이 필요하며 유지, 보수가 필요하다.

위와 같은 이유로 많은 기업들이 클라우드 컴퓨팅 서비스를 사용하지만, 보안에 민감한 조직의 경우 자체적으로 강력한 보안 시스템을 개발하거나 외부망과의 단절을 위해 여전이 온프레미스 환경으로 구축한다.

💻클라우딩 컴퓨팅(Cloud Computing)

💾Compute란?

컴퓨팅은 스토리지 및 네트워킹과 함께 클라우드 컴퓨팅 인프라 계층의 핵심 컴포넌트 중에 하나이다. 기본적으로 compute란 Linux, Ubuntu, Debian, Window, MacOS와 같은 운영 체제를 실행하는 데 필요한 CPU, Memory, Storage와 일부 가상화된 네트워크 기능으로 구성된 물리적인 서버이다.

CPU(Central Processing Unit)는 프로그램의 명령을 수행한다.
RAM(Random Access Memoty)은 초고속 임시 저장 장치로 CPU와 저장장치 사이에서 처리 속도를 향상시켜주기 위해서 데이터를 임시로 저장하는 역할을 수행한다.
Stod=rage는 운영체제 파일 또는 모든 소스코드 및 데이터가 저장되는 저장소이다.
Network는 보통 인터넷을 통해서 다른 서버와 연결할 수 있도록 만들어주는 네트워크 인터페이스 카드 이다.

정리하면, Compute란 CPU, Storage, Network 기능으로 구성된 물리적인 서버를 의미한다.

💾클라우드 컴퓨팅이란?

현재 IT 분야에서 가장 빠르게 발전하는 기술 중 하나이다.
만약, 사용자에게 compute(물리적 서버)에 대한 요구가 들어올 때 마다 시스템 엔지니어가 CPU, Storage, Network를 담은 물리적인 서버를 설치한 후에 이를 대여해 준다면 시간도 오래걸리고, 비효율적이다.
그래서 클라우드 컴퓨팅 서비스를 제공하는 업체는 서로 다른 물리적 위치에 존재하는 컴퓨팅 자원을 가상화 기술로 통합하여 인터넷에서 제공한다.
즉, 사용자는 이러한 IT 리소스를 인터넷을 통해 온디맨드로 제공받고 사용한 만큼만 비용을 지불하면 된다.

위에서 말한것 처럼, 서로 다른 위치에 존재하는 컴퓨팅 자원을 제공하는 것이 클라우드 컴퓨팅 서비스이다. 클라우드 컴퓨팅 서비스를 제공하는 업체는 흔히 서버팜이라고 불리는 곳에 엄청난 수의 물리적 서버를 갖추고 있다.
서버 팜은 전 세계에 흩어져 있고, 이곳에 데이터를 저장한다.

💾클라우드 컴퓨팅의 특징

  • 직접 서버 장비를 구매하지 않고도, 요청하는 즉시 컴퓨팅 자원을 제공해주는 기술로 원하는 시간동안 원하는 만큼의 컴퓨팅 자원을 언제 어디서나 이용할 수 있다. -> 불필요한 절차없이 쉽게 프로젝트를 구성할 수 있으므로 프로젝트 초기 구성 시 사용되는 비용을 줄이는 효과를 가져온다.

  • 온디맨드로 IT 리소스를 제공하므로, 사용자는 사용한 만큼의 비용만 지불하면 된다.

  • 서비스의 규모에 따라 리소스를 확장하거나 축소할 필요가 있는데, 대부분의 클라우드 컴퓨팅 서비스는 이러한 기능을 기본적으로 지원하기 때문에 손쉽게 서비스를 확장 및 축소할 수 있다.

💾주요 기능 3가지

1. 서비스형 인프라스트럭처(laaS)

laaS(lnfrastructure as a Service)비즈니스 운영에 필요한 스토리지, 네트워킹 및 컴퓨터 자원을 제공한다. 다른 모델들과 비교하여 사용자가 관리할 수 있는 영역이 가장 넓다.
사용자가 직접 OS, Middleware, Runtime등을 직접 구성하고 관리할 수 있다.
laaS는 사용자가 직접 많은 부분을 구성하고 관리할 수 있지만, 인프라 운영에 대한 지식이나 경험이 준비되지 않은 경우에는 활용하기 어렵다.

2. 서비스형 플랫폼(PaaS)

PaaS(Platform as a Service)는 애플리케이션 및 서비스를 구축할 수 있는 플랫폼을 제공한다.
OS, Middleware, Runtime 등 개발 환경을 미리 구축해 서비스 형태로 제공하기 때문에 관리적인 측면에서 laaS보다 자유도가 낮다. 사전에 구축된 환경에서 개발하기 때문에 의존성이 생기기 때문이다.

하지만, 서비스를 제외한 외적인 부분을 신경쓸 필요가 없기 때문에, 오로지 개발, 비즈니스에만 집중할 수 있으며 인프라를 운영하는 인력이 필요하지 않으므로 유지 및 보수 비용을 절약할 수 있다.

4. 서비스형 소프트웨어(SaaS)

SaaS(Software as a Service)는 클라우드 컴퓨팅 서비스의 주요 기능 3가지 중 가장 완성된 형태의 서비스이다.
해당 서비스의 제공 업체가 대부분의 기능을 구축한 뒤 제공하기 때문에 사용자가 직접 관리해야 하는 영역이 가장 좁다.
기본적인 클라우드 인프라와 소프트웨어를 함께 제공하는 형태로, 소프트웨어 업데이트, 버그 픽스 등의 서비스를 업체가 직접 도맡아 제공한다.
사용자는 별도의 라이센스를 구매할 필요 없이 이미 구축된 소프트웨어를 무료 혹은 비용 지불을 통해 이용한다.

하지만, 이미 만들어 놓은 소프트웨어를 그대로 활용하기 때문에 필요하지 않은 기능에 대해서도 비용을 지불해야 할 수 있다.

profile
끊임없이 노력하는 프론트엔드 개발자 (⸝⸝⍢⸝⸝) ෆ

0개의 댓글