VM으로 Server를 구축하고 Docker로 관리하기
안녕하세요, 해당 시리즈는 Azure의 IaaS인 VM을 이용해 Server를 구성하고 내부 애플리케이션은 Docker
를 이용해 구성하는 방법을 가이드 합니다.
Server 구성
Web Server
와 DB Server
를 운용할 수 있도록 구성할 것 입니다.
비용 주의
Azure VM
은 사용하지 않더라도 유지 비용이 소요됩니다. 필자는 Visual Studio Enterprise
구독 크레딧을 이용하여 구성하며 독자분들도 비용에 문제가 없도록 주의하길 바랍니다.
사실 hello, world로 그냥 연습삼아 하는 것은 큰 문제가 되지 않지만 장시간 여러 테스트를 위해 VM을 운영할 계획이 있다면 사전에 비용과 성능을 타협하여 구성하면 후반전에 운영 스트레스가 줄어들 것입니다.
가볍게 테스트하려고 했는데 시간이 길어지면 다시 구성하기도 그렇고...비용도 부담되는 난처한 상황이 발생할 수 있거든요
주로 나가는 비용은 스토리지
비용이며 추가적으로 공용 IP 주소
, 가상 머신
이 소요됩니다.
사용하지 않는 VM에서 스토리지 유지 비용으로 개당 약 2만원씩 소요되는 사진
목차
📄️ VM으로 Server를 구축하는 이유
PaaS , SaaS 와 같은 것이 더 편리한 것이 있는데 불구하고 왜 굳이 VM 으로 Server를 구축하려는 것 일까요?
📄️ Azure VM 만들기
Azure에서 VM을 만들어보도록 하겠습니다.
📄️ Domain Name 설정
생성된 VM은 RDP 접속 시 IP 주소로 접속해야 하는 불편함이 있었습니다. 도메인 네임을 할당받아 도메인 네임으로 접속할 수 있도록 바꿔봅시다.
📄️ Windows 환경설정
첫 VM 접속 시 클린 한 OS을 모습을 보면 어색할 수 있습니다. 물론 Prod 에서 사용하는 Server 라면 굳이 필요한 설정이 아니라면 기본 값으로 사용하겠지만 우린 연습을 하고 있는 것이니 독자들이 편하게 사용할 수 있도록 설정하도록 합니다.
📄️ IIS 설치 및 인바운드 규칙 설정
이번 챕터에서는 VM을 웹 서버로 사용하기 위해 포트가 잘 열려였는지 확인해 보겠습니다. 해당 시리즈에서는 Docker 를 사용하기 때문에 굳이 IIS 가 필요하지는 않지만 Windows에서 손쉽게 IIS를 활성화 할 수 있기 때문에 IIS를 이용하여 확인하도록 하려고 합니다.
📄️ Docker 설치 및 테스트
해당 시리즈에서 웹 애플리케이션 및 DB는 Docker를 이용하여 배포할 것이므로 Docker를 설치하도록 합니다. WSL2 를 사용하여 Docker를 설치합니다.
📄️ Docker Mysql Container 실행
Server에 프로그램일 설치하고 관리하는 것은 귀찮고 어려운 일입니다. 이런 수고를 덜기 위해 우리는 Docker를 사용하여 Mysql Server를 올릴 것입니다.
📄️ SSH 설정
RDP 가 있어서 SSH 를 꼭 활성화 할 필요는 없지만 명색이 Server이니 SSH 접속할 수 있도록 설정해 봅시다.
📄️ Docker로 Application 배포하기
이전 챕터를 지나오면서 VM에 Application을 배포할 수 있는 작업은 모두 완료되었습니다. 이제 외부 사용자의 요청을 처리할 수 있으며 Server에 Docker 혹은 다른 프로그램을 이용하여 Application를 배포하고 사용할 수 있습니다.