h0ngz
276
2020-04-27 18:16:01 작성 2020-04-27 18:21:43 수정됨
7
390

1대의 물리서버를 알차게 돌리는 방법?


중소기업에서 나홀로 개발, 서버운영등 하고 있는 초보 개발자입니다.


사내 물리서버가 1대뿐입니다. 64코어에 램 65기가짜리 서버인데요. 현재 IDC센터에 입주해있습니다.

개발 서버 겸, 디비서버겸, 회사홈페이지도 돌리는등  n개의 자바 웹 서비스 + php 웹 서비스  + db서버로도 쓰고 있습니다.

이걸 아무런 도구없이 수작업으로 세팅 및 관리하고있는데 관리와 운용의 한계를 느끼고 있습니다.

물리적으로 여러개 서버를 운영하는건 저희 회사에 맞지 않고 이 한대를 잘 활용해야할것 같은데 


요즘 공부하면서 생각한게  가상화 하는건데요. (아직공부중이라 디테일한것도 모르고 관련 도구들이 뭐있는지도 잘 모릅니다)

인프라 및 환경등을 가상화 및 자동환경구축하여

- 1 자바 웹 서비스 가상서버

- 2 자바 웹 서비스 가상서버

- n 자바 웹 서비스 가상서버

- 회사 홈페이지 php 가상서버

- 디비 서버 1

- 디비 서버 2

이런식으로   한대의 물리서버를 여러개의 가상서버로 나눠쓰는 방식으로 운영할수 있을까?  라는 생각을 구상중입니다.


1.  (인프라관련 아무것도 모르는 무지랭이 인상태에서 생각한) 저 구성이 일반적인 구성인가요?

2. 물리서버 1대에 여러 용도로 사용할때 어떤 방법을 쓰시고 있으신가요

3. 이런것에 대해 공부하기 위해서 어떤 지식을 찾아보고 학습하면 될까요?


무식이 철철 넘치는 글 읽어주셔서 감사합니다


1
  • 답변 7

  • howto3
    101
    2020-04-27 18:19:46

    도커 쓰세요.

  • h0ngz
    276
    2020-04-27 18:21:10 작성 2020-04-27 18:24:17 수정됨

    도커를 찾아봐도 이해가 잘되지 않는데 컨테이너라는 개념이

    서버 사양 나눠먹는 (vcpu, ram 배정?) 것도 가능한건가요?

  • howto3
    101
    2020-04-27 18:31:43

    네. 저도 도커는 공부하는 입장이라 자세히는 어렵고 각 프로그램 별 이미지를 컨테이너에 실행시켜 줍니다.

    하나의 서버에 여러 프로그램들을 쉽게 실행시키는 용도로도 사용되고,

    수백~수천대 서버를 하나의 이미지로 컨테이너에 띄워 관리가 용이하게 사용하기도 합니다.

    업데이트가 필요하다면 업데이트 버전 이미지 하나만 있으면 수천대 서버 업데이트도 가능하고요.  


  • h0ngz
    276
    2020-04-27 18:36:40

    답변 너무 감사합니다. 열심히 공부 해보겠습니다.

  • 이오니
    1k
    2020-04-27 20:29:28 작성 2020-04-27 20:32:06 수정됨

    kvm 사용법 익히셔서 가상서버 만드신 후, os 계속 재설치해가면서 ansible playbook 만드는 것 추천드려요.

    (서버 세팅 매뉴얼을 별도의 문서로 만들 필요없이 playbook 하나로 관리할 수 있어요.)

    나중에 급할 때 유용합니다.


    그 이후에 한가해지면 도커 추천드리구요.

  • zepinos
    20k
    2020-04-27 22:34:57
    아무래도 성능을 잘 뽑으려면 was 나 dbms 을 물리적으로 분리 시키는게 좋긴 합니다. 하지만 사양도 좀 높고 각 시스템의 부하가 크지 않다면 DBMS 는 유지하는 상태에서 was 나 기타 부분을 상황에 맞게 vm 혹은 docker 로 돌리는 것이 공부 목적도 있도하니...좋겠죠.

    개인적으론 haproxy 와 같은 L7 을 이용해 하나의 외부회선을 잘 나누어 사용하는 부분부터 공부하시는걸 추천드립니다.
  • 초무쿤
    5k
    2020-04-28 07:23:54

    저같은 경우는 앞단 SW 프록시 설치 후 port forwarding으로 구성해서 사용중입니다.

    HAProxy  ---> 서비스1(웹서버)

                    |---> DBMS1(docker)

                    |---> 서비스2

                    ......

    각 서비스는 각자 포트가 다르고 도메인 연결시는 virtual host로 접속하면  HAProxy에서 virtual host 에 따라서 해당 서버스 연결해주는 방식으로 사용중입니다.


  • 로그인을 하시면 답변 을 등록할 수 있습니다.