워드프레스를 설치하기 위해 구글 클라우드에 가상머신을 생성해보겠습니다. 간단하게 클라우드 개념에 대해 알아보고 실제로 워드프레스를 설치하기 위한 가상머신을 생성하는 방법에 대해 상세하게 알아보겠습니다.
워드프레스는 설치형 블로그 입니다.
운영자가 서버에(개인서버, IaaS, 클라우드 가상서버 등)에 워드프레스 파일을 업로드 하고 설치해서 사용하는 형태의 블로그 입니다.
워드프레스를 설치하고 서비스를 하기 위해서는 웹서버, DB서버, 데이터를 저장 할 수 있는 스토리지, 서버, 스토리지, 사용자 등을 연결해주는 네트워크 등이 필요 합니다.
개인이 이러한 인프라를 모두 구성하기 어렵기 때문에 이미 구축된 인프라를 일정 비용을 지불하고 사용하는 퍼블릭 클라우드(Public cloud)를 이용해서 워드프레스를 설치하고 운영해보겠습니다.
대표적인 아마존의 AWS도 처음에는 아마존 쇼핑몰을 위해 구축한 인프라 자원에 여유가 생기자 사람들에게 판매하기 시작했고, 이를 시작으로 아마존 클라우드가 생겨나게 되었습니다.
1. 퍼블릭 클라우드(Public cloud)란?
인터넷을 경유해서 불특정 다수에게 제공되는 클라우드 서비스 입니다.
개인 또는 자사에서 데이터센터를 보유하지 않으므로 서버나 네트워크 등 인프라와 관련된 초기 투자가 필요 없습니다.
제공할 서비스에 따라 IaaS, PaaS, SaaS 등이 있습니다. 인프라 기반 부분을 이용하는 서비스를 IaaS라고 합니다. IaaS에서는 이용하고 싶은 사양으로 된 가상머신이나 스토리지를 선택하고 이용한 시간이나 데이터 양에 따라 사용한 만큼 요금을 지불하는 형태 입니다.
퍼블릭 클라우드를 제공하는 사업자는 대표적으로 아마존의 AWS, 구글의 GCP, MS의 Azure, 오라클의 OCI, 네이버의 네이버클라우드, KT의 kt클라우드 등이 있습니다.
클라우드 사업자별로 사용하는 용어와 제공해주는 서비스가 조금씩은 다르지만, 전체적으로 봤을때 인프라와 서비스를 제공해주고 사용량만큼 과금하는 부분은 서로 비슷합니다.
아마존의 AWS가 전세계에서 가장 많이 사용되고 있습니다. 각 클라우드 사업자별로 일정기간, 일정금액 한도내에서 무료로 클라우드 서비스를 사용하도록 프리티어를 제공하니, 무료로 사용해보고 사용을 중지해도 좋고, 요금을 지불하고 계속 사용해도 됩니다.
구글 클라우드의 일부 리전은 평생 무료 VM을 제공 했었는데, 지금도 유효한지는 사용자께서 확인 해보시면 좋을듯 합니다.
그리고 오라클의 클라우드도 일부 인스턴스는 평생 무료 VM을 제공합니다. 저도 오라클 클라우드 VM을 사용중인데, 작은 규모의 워드프레스를 운영하기에는 사양이 나쁘지 않았습니다. 서버 운영에 필수적인 고정IP도 무료로 제공됩니다. 참고로 고정된 IP가 아니더라도 서버를 재부팅 하지 않으면 처음 받은 IP를 계속 사용할 수 있습니다.
2. 구글 클라우드(GCP)로 클라우드 시작하기
구글 클라우드(GCP, Google Cloud Platform)를 이용해서 가상머신을 만들고 방화벽 설정을 해보도록 하겠습니다.
구글 클라우드 프리티어는 최대90일, $300의 무료 크레딧이 제공됩니다. 이 기간동안에는 업그레이드 하지 않으면 무료로 사용이 가능합니다.
구글에서 구글 클라우드 프리티어로 검색해서 구글 클라우드에 접속 합니다.
또는 https://cloud.google.com/?hl=ko 링크를 통해 구글 클라우드 사이트로 이동합니다.
구글 클라우드 프리티어를 사용한적이 없다면 기존의 구글계정을 사용해도 되고, 만약 구글 클라우드 프리티어를 사용했던 적이 있으면 신규로 계정을 생성하고 구글 클라우드 프리티어를 시작 합니다.
회원가입을 하고 인증을 위해 신용카드 결제수단을 등록합니다. 실제로 결제되는 부분은 아니니 걱정하지 않아도 됩니다.
로그인 후 Console로 이동 버튼을 클릭합니다. 이 페이지에는 GCP에서 제공하는 각종 서비스를 생성하고 삭제할 수 있으며, 사용량, 요금 등을 확인 할 수 있습니다.
참고로 비용이 결제 될까 걱정하는 분들이 있는데, 유료 업그레이드를 하지 않으면 결제되지 않으니 괜찮습니다. 그래도 혹시나 걱정이 되면 프리티어 기간에도 무상으로 받은 크레딧 잔여금액 확인이 가능하니 이 부분을 보시면서 이용하면 좋을꺼 같습니다. 일반적으로 2vCPU, 2GB 메모리, 30GB 디스크를 사용하면 월 비용은 약 $20정도 발생합니다. 프리티어 기간에는 $300면 충분합니다.
3. 가상서버(VM 인스턴스) 생성하기
Compute Engine > VM 인스턴스를 클릭 합니다.
참고로 인스턴스, 가상머신, VM 용어를 좀 섞어서 사용 할 수 있는데, 모두 클라우드에 생성된 가상 서버라고 생각하시면 좋을듯 합니다.
VM 인스턴스는 하나의 가상 서버 입니다.
인스턴스 만들기를 클릭 합니다.
VM의 이름을 지정하고 어느 위치에 서버를 생성할지 정하고 서버 사양을 결정합니다.
한국을 대상으로 서비스하니 서버가 한국에 있는게 아무래도 속도측면에서 유리하니 서울 리전을 선택합니다.
서버의 사양은 접속자의 규모에 따라 다르겠지만 기본적인 사양으로 구성하겠습니다.
- 이름 : 인스턴스에 적절한 이름을 입력합니다. 이 이름은 가상서버를 관리하기 위한 이름 입니다.
- 리전 : 리전은 가상서버를 생성할 지리적 위치 입니다. 서울 리전을 선택합니다.
- 영역 : 영역은 리전(예:서울)내 서로 떨어진 위치로 실제 가상서버가 생성되는 위치 입니다.
- 시리즈 : 가상서버의 시리즈로 E2, N2, T2A 등 용도와 성능에 따라 다양한 시리즈가 있습니다. E2를 선택합니다.
- 머신유형 : E2에도 CPU 공유형태, 코어수 , 메모리 용량 사양에 따라 다양한 유형이 있습니다. e2-small을 선택합니다.
시리즈와 머신유형, 디스크 종류 및 크기에 따라 월별 사용요금이 달라지며, 월별 예상 가격을 확인 할 수 있습니다.
부팅 디스크에서는 OS가 설치되는 디스크 유형과, 디스크 크기, 어떤 운영체제를 설치할지 선택합니다.
변경을 클릭해서 상세 속성을 선택합니다. 디스크의 종류와 크기에 따라 월별 예상가격이 달라집니다. 10GB를 선택했을 때 $16.99에서 30GB로 변경을 하니 $19.59로 증가 했네요.
클라우드는 사양, 용량이 올라가면 그만큼 비용이 증가합니다. 최적의 비용으로 최상의 서비스를 낼 수 있는 사양을 선택하는 것이 좋습니다.
각자의 블로그에서 제공하는 서비스와 이용자가 다르기 때문에 정답은 없지만, 일 방문자 수천명 정도의 일반적인 워드프레스를 운영하는 기준으로 사양과 용량을 선택하겠습니다.
- 운영체제 : 설치한 운영체제를 선택합니다. Ubuntu 를 선택합니다.
- 버전 : 운영체제의 상세 버전을 선택 합니다. Ubuntu 22.10에도 x86/64 용과 ARM 용이 있으니 x86/64 버전을 선택합니다.
- 부팅 디스크 유형 : 디스크의 유형 입니다. 속도의 차이로 용도에 맞게 선택을 합니다. 표준, 균형, SSD, 익스트림 이 있는데 균형을 선택합니다.
VM을 생성 후에도 VM을 잠시 중지(종료)하고 사양은 변경 가능하니 참고하세요.
액세스 범위는 기본옵션인 기본 액세스 허용으로 설정하고 방화벽은 HTTP, HTTPS 트래픽 허용을 모두 체크합니다.
워드프레스를 사용자들이 접속하려면 http 또는 https로 접속하기 때문에 해당 트래픽을 허용해줍니다.
참고로 http는 80포트를 사용하고 https는 443 포트를 사용 합니다.
포트는 쉽게 설명하면 사용자들이 어떤 서버에 접속하고 어떠한 서비스를 받기 위해서 연결되는 번호라고 생각하시면 됩니다.
일반적으로 웹서비스를 이용하기 위해서는 80, 443포트를 사용하고, ssh 접속을 위해서는 22번 포트를 사용하는 등 특정 서비스에 접속하기 위한 번호라고 생각 하시면 됩니다.
여기까지 설정을 마쳤으면 만들기를 클릭해서 가상서버를 생성 합니다.
이렇게 하면 하나의 가상서버를 생성 할 수 있습니다.
4. 가상서버 관리
VM 인스턴스 메뉴를 클릭하면 생성된 가상머신을 확인 할 수 있고 여기에서 해당 머신들을 시작하거나 중지, 삭제 등을 할 수 있습니다.
불필요한 가상머신을 중지하면 컴퓨팅에 대한 비용은 발생하지 않으나, 디스크 비용이 발생합니다. 그렇기 때문에 불필요한 가상머신은 삭제해서 비용을 줄일 수 있습니다.
외부 IP는 외부와 통신이 가능한 공인 IP 입니다. 가상머신을 재부팅 하면 외부 IP는 변경 될 수 있습니다. 그렇기 때문에 고정 IP를 설정해야 합니다.
예를들어 워드프레스 서비스를 하는 서버 IP가 재부팅할때마다 변경되면, 운영자는 그때마다 도메인과 연결된 IP를 변경해줘야 하는 일이 발생 합니다.
그렇기 때문에 서버의 IP는 가급적 변경이 안되게 해야 합니다. 고정 IP를 받아서 가상머신에 적용할 수 있습니다.
- 시작/재개 : 중지된 가상머신을 시작할 수 있습니다. 전원을 켜서 부팅하는 기능 입니다.
- 중지 : 운영중인 가상머신을 종료하는 기능 입니다. 90초내에 종료가 되지 않으면 강제로 종료 됩니다.
- 재설정 : VM을 초기 상태로 재설정 하는 기능입니다.
- 삭제 : 가상머신을 중지하고 부팅디스크를 포함한 가상머신을 삭제합니다.
- 상태 : 현재 가상머신이 운영중인지(켜져있는지) 중지(꺼져있는지)중인지 상태를 나타냅니다.
- 이름 : 가상머신을 관리하기 위한 머신 이름 입니다.
- 영역 : 어느 리전의 어느 영역에 생성되어 있는 VM인지 나타냅니다.
- 권장사항 : 사용량에 따라 구글에서 권장하는 사항 입니다. 사양을 낮추면 월 비용을 절감 할 수 있습니다.
- 내부 IP : 구글 클라우드 내부에서 가상머신끼리 통신이 가능한 내부 IP 주소 입니다.
- 외부 IP : 외부에서 가상머신에 접속 할 수 있는 공인 IP 입니다.
- 연결 : SSH를 클릭하면 해당 가상머신과 터미널 연결이 가능합니다.
구글 클라우드에 워드프레스를 설치할 수 있는 하나의 가상서버가 생성 되었습니다.
바로 워드프레스를 설치 할 수 있지만 서버 운영을 위해 꼭 필요한 고정 IP 설정과 간단한 방화벽 설정도 해야 합니다.
다음 시간에는 생성한 가상서버에 고정IP를 설정하고, 간단한 방화벽 설정을 해보도록 하겠습니다.
Pingback: [02.워드프레스] 가상서버 네트워크 설정하기 - IT 인프라 학교