서버의 기본적인 구성? / 서버 만들기
서버의 개념을 잘모른다면 제 블로그의 이전글중 서버의 개념을 설명해놓은 글이 있습니다. 읽어보시면 도움이 될겁니다.
2019/12/14 - [IT/IT 개념] - 서버 (server)란? / 서버의 개념
위의 포스팅에서 서버의 개념을 설명했다면, 그 서버를 구축해보고, 서버를 더 넓은 의미로 이해해보는데 도움이 되는 포스팅을 해보겠습니다.
서버의 기본적인 구성?
보통 서버라 함은 여타 많은 서비스 회사들이 사용하는 서버 컴퓨터를 말합니다. 서버 컴퓨터라고 해도 별것없습니다. 일반적으로 우리가 쓰는, 데스크탑, 노트북도 서버 컴퓨터 역할을 할수 있습니다. 심지어 휴대폰도 서버 역할을 수행할 수 있습니다.
원리는 간단합니다. 클라이언트가 요청한 것을 서버가 꺼내 주는것 입니다.
여기서는 보통의 서비스들의 서버 구성을 알아보겠습니다.
보통 서비스들은 웹, 모바일, api 서버등을 사용합니다.
그 중 많은 웹사이트들이 서비스 되고 있는 서버들은 아래와 같은 구조를 가집니다.
서버 컴퓨터 안에서 웹서버라는 응용 프로그램과 데이터 베이스로 이루어 집니다. (server side script는 데이터베이스와 서버를 조작하는 언어라 생각하시면 됩니다.) 클라이언트의 요청을 웹서버가 html 표준에 맞춰 전달해주는 구조입니다. (전달하는 값은 통상 데이터 베이스에서 꺼내서 줍니다.)
웹서버는 많이 쓰는 Nginx, apache, iis 등이 있고 데이터 베이스(dbms)는 mysql, mariaDB, ms-sql, postgresql 등이 있습니다.
서버 하드웨서 스택 / 서버 구성
"서버를 어떻게 사용할 것인가"에 따라서 만드는 방법이 천차 만별입니다.
저는 남는 노트북이 있기 때문에 이것을 서버 컴퓨터를 만들어, 간단한 웹서비스도 올려놓고 개발 테스트 용으로도 사용하고 있습니다.
서버 하드웨어 스텍은 cpu 듀얼코어, Ram 8gb, ssd 120gb로 일반적으로 사용되는 컴퓨터보다는 사양이 낮지만 간단한 서비스 및 테스트 서버로 사용하기에 충분한 사양입니다. 이런 사양으로 호스팅 서비스를 계약한다면 최소 월 2만원 정도는 지불해야할 겁니다. (하지만, 전기세도 월 2만원정도 더 나가지 않을까 싶네요.)
찾아보니 저렴한 호스팅 서비스 [스마일 서브]에서도 (4코어 이긴하지만) 비슷한 사양의 서버 임대료가 월 3만 2천원 입니다.
현재 위와 같은 서버 컴퓨터에 아래와 같은 서버 스택으로 간단한 웹서비스를 만들어 배포해놓았습니다.
- os : ubuntu 18.04 LTS
- 웹서버: NginX
- 데이터 베이스: postgresql
기본적으로는 위와 같은 스텍을 사용하고 있습니다.
ubuntu에 Nginx 설치하는 방법, postgresql 설치하는 방법은 아주 쉬우니 구글링 해보시면 나옵니다!
긴글 읽어 주셔서 감사합니다.
더 궁금하신 사항은 댓글로 문의해주시면 빠르게 답변드리겠습니다.
댓글