4.1. 서버(Server)

우리가 만든 서비스를 제공해 줄 컴퓨터가 필요하겠죠?

서버는 사용자들이 앉아서 정보를 입력하고 모니터로 결과를 확인하는 컴퓨터가 아니라 다양한 연산을 수행하는 것이 목적이므로 대부분 납작한 본체처럼 생겼습니다. 서버는 여러대가 필요한 경우가 많아서 선반(랙, Rack)에 여러개를 꽃아서 사용하는 경우가 많습니다. 개별 서버인 경우 우리가 사용하는 데스크탑과 똑같이 생긴 경우도 많습니다.

우리는 정보를 제공해줄 컴퓨터를 서버(Server)라고 부릅니다. 서브는 사용자들이 앉아서 정보를 입력하고 모니터로 결과를 확인하는 컴퓨터가 아니라 다양한 연산을 수행하는 것이 목적이므로 대부분 납작한 본체처럼 생겼습니다.

서버는 여러대가 필요한 경우가 많아서 선반(랙, Rack)에 여러개를 꽃아서 사용하는 경우가 많습니다. 개별 서버인 경우 우리가 사용하는 데스크탑과 똑같이 생긴 경우도 많습니다. 사실 만약 여러분의 데스크톱 PC가 365일 24시간 켜져 있고 고정 IP를 사용한다면, 여러분의 데스크탑을 서버로 사용해도 무방합니다.

사용자가 언제 정보를 요청할지 모르기 때문에 서버는 365일 24시간 대기 하면서 사용자의 요청이 있을 때마다 바로바로 정보를 제공해 주어야 합니다.

서버는 크게 로컬 서버와 클라우드 서버로 나눌 수 있습니다.

4.1.1. 로컬(Local) 서버

학자들에 따라서 부르는 이름은 다양하지만 우리는 물리적으로 확보된 서버를 로컬 서버라고 부르기로 합니다. 쉽게 생각하면 여러분들의 눈으로 확인할 수 있는 서버 컴퓨터를 말합니다.

회사나 학교에 서버실(Server Room)이라는 장소에 가보면 많은 서버들을 모아 놓은 방이 있습니다. 그 안에 있는 서버들을 로컬 서버로 생각하면 됩니다.

로컬 서버를 이용해서 직접 운영하려면 하드웨어를 구매하고, 네트워크를 설정하고, 데이터베이스를 설치하고, 도메인을 등록하고, 각종 보안 설정을 해야 하는 등 해야할 일들이 너무 많고 힘듭니다.

여러분만의 서비스를 로컬 서버에서 제공하려면 많은 공부를 해야 합니다. 이것은 매우 가치있는 일입니다. 하지만 본 튜토리얼에서 필요한 모든 것을 배우는 것은 현실적으로 불가능합니다.

우리는 먼저 아마존 클라우드 서버를 이용해 실습을 진행하겠습니다. 이후에 학교에서 이미 구축해 놓은 로컬 서버를 이용해 실습을 진행해 보도록 하겠습니다.

4.1.2. 클라우드(Cloud) 서버

클라우드 서버는 서버를 가상 공간에 만들어 놓고 접속해서 사용할 수 있도록 제공하는 서비스 입니다.

클라우드 서버는 아마존, MS, 구글 등에서 제공하고 있습니다. 우리는 그 중에서도 가장 유명한 아마존 서버 AWS(Amazon Web Service)를 사용할 예정입니다.

AWS는 클릭 몇 번으로 서버, 운영체제, DB와 같은 것을 선택적으로 설치할 수 있습니다.

4.1.2.1. Amazon EC2 회원가입

AWS에서 제공하는 클라우드 서버를 사용하기 위해서는 먼저 회원가입을 해야겠죠? 회원가입은 Appendix List에 정리된 AWS 회원가입 및 MFA 설정를 참고하기 바랍니다.

4.1.2.2. Amazon 클라우드 서버 생성

회원가입이 끝났으니, 이제 우리가 필요한 클라우드 서버를 만들어야 합니다. 서버를 만든다고 해서 물건을 조립하거나 구매하는 것은 아닙니다.

우리는 Amazon EC2 Console에서 제공하는 메뉴를 클릭해 가면서 쉽게 만들 수 있습니다. 클라우드 서버를 만드는 과정은 Appendix List에 정리된 아마존 EC2 서버 만들기를 참고하기 바랍니다.

4.1.2.3. Amazon 클라우드 접속 하기

Amazon EC2 서버를 만들었다면 접속해야 겠죠? 클라우드 서버는 우리 눈에 보이지 않습니다. 어디에 있는지도 모릅니다. 지구상 어딘가에 있다는 것만 압니다. 서버에 접속하기 위해서는 서버의 IP주소, 포트 번호, 아이디 등이 필요합니다.

클라우드 서버에 접속하기 위한 자세한 내용은 Appendix List에 정리된 아마존 클라우드 서버에 접속하기를 참고하기 바랍니다.