새소식

독서/AWS 구조와 서비스

2. 컴퓨팅 서비스(상)

  • -

AWS뿐 아니라 어떤 시스템에서도 반드시 있어야 하는 것이 시스템 처리를 실행할 컴퓨터이다. AWS에서는 가상 서버인 EC2와 컨테이너 서비스인 ECS 등 폭 넓은 컴퓨팅 서비스를 제공한다. 네트워크를 데이터나 서비스를 제공하는 컴퓨터를 서버, 그 서비스를 이용하는 프로그램을 클라이언트라고 한다. 예로 웹 사이트를 제공하는 컴퓨터가 서버고, 웹 브라우저가 클라이언트다.

 

웹 서버

웹 서버는 웹 페이지 자체의 구조를 만드는 HTML 파일과 디자인을 정의하는 CSS 파일, 사이트에 표시되는 이미지 파일 등 서비스 제공에 필요한 데이터가 저장된다. 웹 사이트를 구성하는 데 필요한 데이터를 저장하고 시스템을 제어하는 프로그램을 설치한 서버를 웹 서버라고 한다. AWS에서 웹 서버를 구축하는 경우 EC2와 ECS로 구현하는 경우가 많다. 클라이언트-서버 통신을 하며, 클라이언트가 웹 사이트에 필요한 데이터를 요청하고 그 요청에 따라 서버가 데이터를 반환한다.

 

데이터베이스 서버

시스템이 취급하는 데이터를 통합 관리하는 데이터베이스 관리 시스템이 설치된 서버를 데이터베이스 서버라고 한다. AWS는 RDS나 DynamoDB와 같이 데이터베이스에 특화된 서비스를 제공한다.

 

메일 서버

SMTP 프로토콜, POP3 프로토콜을 이용해 메일 송신, 전달, 수신하는 서버를 메일 서버라고 한다. 일반적으로 메일 서버는 SMTP 서버와 POP3 서버로 나뉜다. SMTP 서버는 메일을 보내는 역할을 하는 서버다. 메일을 보내는 사함은 메일 클라이언트 프로그램에서 메일을 작성해 SMTP 서버에 메일 전송 요청을 한다. SMTP 서버는 요청받은 후 해당 메일의 수신처를 DNS 서버에서 확인해 어디로 메일을 보내야 할지를 특정한다. AWS에는 관리형 메일 전송 서비스인 Amazon SES를 이용할 수 있다.

 

서버 OS

서버에도 운영체제는 반드시 탑재된다. OS는 사람이 기기의 관리와 제어를 수행하기 위한 인터페이스와 하드웨어 관리 기능, 기기에서 동작할 소프트웨어가 공통적으로 이용할 기본 기능을 구현한 소프트웨어다.

 

리눅스

윈도우와 맥OS와 달리 무료이며, 오픈 소스 소프트웨어이므로 누구든 자유롭게 개발, 배포할 수 있다. 다양한 기업과 단체가 기본이 되는 리눅스 커널을 이용해 독자적으로 개발한 OS를 리눅스 배포판으로 제공하고 있다.

 

윈도우 서버

윈도우 서버는 마이크로스프트에서 출시한 서버용 OS다. 리눅스와 달리 OS 자체의 라이선스의 CAL(Client Access License)로 불리는 서버 이용 라이선스를 구매해야 한다. 가장 큰 특징은 GUI(graphical User Interface)로 조작하며 일반적으로 사용되는 데스크톱 윈도우와 사용법이 비슷하다.

 

서버 가상화

일반적으로 1대의 기기는 1개의 OS만 설치하면 되지만, 가상화 소프트웨어를 이용하면 하나의 하드웨어에서 여러 OS를 동작시킬 수 있다. 이를 서버의 가상화라고 한다. AWS에서도 가상화 기술이 많이 사용되며 대표적인 서비스로는 Amazon Elastic ComputerCloud(EC2) 이다. EC2는 AWS의 대규모 서버에서 가상화를 수행하며, 사용자는 사용 용도에 따라 OS의 종류나 CPU, 메모리 크기를 자유롭게 선택해 인스턴스(가상 서버)를 생성할 수 있다.

 

Amazon EC2는 가상 서비스

EC2는 몇 분 만에 가상 서버를 생성할 수 있는 서비스다. 리눅스나 윈도우 같은 OS는 AWS가 제공하는 것을 선택할 수 있고, 온프레미스에서는 하드웨어 준비부터 OS설치까지 모두 사용자가 해야 되지만, EC2는 가상 머신을 생성할 때 OS를 함께 설치하므로 사용자는 가상 머신 사용 준비가 완료되면 바로 OS를 사용할 수 있다. 부담 없이 서버를 생성해 테스트를 할 수 있으며, EC2는 가상 서버를 인스턴스 단위로 관리한다.

 

EC2를 생성하기 위해서는 AMI, 인스턴스 사양, 배포할 네트워크, 데이터를 저장할 스토리지 용량, 사용 권한 설정.

AMI는 OS와 소프트웨어가 설정된 템플릿이다. 인스턴스 유형을 선택하면 가상 서버의 성능이 결정된다. 가상 머신이 위치할 네트워크는 사용자가 생성한 VPC를 선택하고, 스토리지 용량(EBS)을 설정한 후 마지막으로 접근 권한 설정을 위해 보안 그룹을 선택한다.

 

EC2를 인터넷이 공개하려면 3가지 조건을 충족해야한다.

1) EC2를 퍼블릭 서브넷에 배치 2) 퍼블릭 IP 주소를 EC2에 부여 3) 보안 그룹에서 외부로부터의 접근을 허가

 

어느 곳에서 어느 곳으로 접속을 허가할지에 대한 접근 제어는 보안 그룹을 이용한다. 보안 그룹은 온프레미스의 방화벽 기능을 수행한다. 외부에서 EC2로의 통신을 인바운드 규칙으로 정의하고, EC2에서 외부로의 통신을 아웃바운드 규칙으로 정의하며 둘 다 통신을 허용할 네트워크와 포트 번호를 지정한다. 포트 번호는 사용하는 통신의 종류에 따라 결정되는데, 예로 리눅스 터미널 접속을 위한 SSH은 22번 포트, 앱 접속을 위한 HTTP는 80번 포트를 사용한다.

 

 

'독서 > AWS 구조와 서비스' 카테고리의 다른 글

6. 네트워크 용어 & VPC  (0) 2023.12.09
5. 스토리지 서비스  (0) 2023.12.08
4. 컨테이너의 구조와 특징 이해  (0) 2023.12.08
3. 컴퓨팅 서비스(하)  (0) 2023.12.06
1. AWS 기초지식  (1) 2023.12.05
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.