IT_생산성

오라클 클라우드 무료티어로 서버 돌리기: 가입부터 OCI config 등록까지

오라클 클라우드 무료티어는 개인 서버, 테스트용 API, 작은 자동화 작업, 학습용 리눅스 서버를 굴려보고 싶은 사람에게 여전히 매력적인 선택지입니다. 다만 “무료”라는 말만 보고 가입하면 홈 리전, 카드 등록, 용량 부족, CLI config, SSH 키 같은 지점에서 생각보다 많이 막힙니다.

이 글은 실제 민감정보를 전부 제거하고, 오라클 무료 가입부터 카드 등록, 내 계정 값을 터미널 config에 등록하는 과정, 무료 서버를 생성하는 흐름까지 단계별로 정리한 가이드입니다. 따라 할 때는 OCID, API key, fingerprint, 개인키, 공인 IP 같은 값은 절대 공개하지 않는다는 점만 먼저 기억하면 됩니다.

먼저 알아야 할 것: 무료티어는 공짜 VPS가 아니라 제한이 있는 클라우드 계정이다

Oracle Cloud Free Tier에는 기간 제한이 있는 무료 크레딧과, 계속 제공되는 Always Free 리소스가 같이 들어 있습니다. Oracle 공식 Free Tier 안내에 따르면 Always Free에는 Compute, Block Volume, Object Storage, Load Balancer, Autonomous Database 같은 항목이 포함됩니다.

서버를 돌리는 관점에서 가장 많이 보는 것은 Compute입니다. 현재 Oracle 공식 Always Free 문서 기준으로 AMD Micro 인스턴스와 Arm 기반 Ampere A1 Compute가 안내되어 있으며, Ampere A1은 Always Free 테넌시 기준 1,500 OCPU hours와 9,000 GB hours per month로 설명됩니다. 쉽게 말해 “무료 범위 안에서 작은 서버를 오래 돌릴 수 있지만, 리전 용량과 계정 조건에 따라 생성이 막힐 수 있다” 정도로 이해하는 편이 안전합니다.

참고 공식 문서: Oracle Cloud Free Tier, Always Free Resources

1단계: Oracle Cloud 무료 계정 만들기

가입은 Oracle Cloud Free Tier 페이지에서 시작합니다. 이메일, 이름, 국가, 주소, 휴대폰 인증, 비밀번호 설정 같은 일반적인 가입 절차를 거칩니다. 여기서 중요한 것은 국가와 주소 정보가 홈 리전 선택에도 영향을 줄 수 있다는 점입니다.

가입 중 홈 리전이 보이면 신중하게 선택해야 합니다. Oracle 공식 문서에서는 홈 리전을 나중에 변경할 수 없다고 안내합니다. 이 말은 생각보다 큽니다. 무료 리소스를 만들 위치, IAM 리소스 기준 지역, 이후 운영 동선이 이 선택에 묶일 수 있습니다.

공식 문서: Managing Regions

2단계: 카드 등록은 필요하다

무료티어라도 보통 카드 등록 단계가 있습니다. 이 단계 때문에 살짝 긴장되지만, 카드가 등록된다고 바로 과금 서버가 만들어지는 것은 아닙니다. 다만 여기서부터는 “Always Free eligible” 표시를 확인하는 습관이 필요합니다.

안전하게 쓰려면 아래 원칙을 지키는 편이 좋습니다.

  • 인스턴스 생성 시 Always Free eligible 표시를 확인합니다.
  • 무료 범위를 벗어난 Shape, Boot Volume, Block Volume, Public IP, Load Balancer를 만들지 않습니다.
  • 테스트 후 필요 없는 리소스는 바로 삭제합니다.
  • 예산 알림과 비용 분석 화면을 주기적으로 확인합니다.
  • 무료 계정이라도 카드, 계정, API 키 정보는 스크린샷에 노출하지 않습니다.

3단계: 홈 리전은 어디로 해야 할까

한국 사용자라면 보통 South Korea Central(Seoul)이나 South Korea North(Chuncheon)을 먼저 생각합니다. Oracle의 공개 리전 안내에서도 한국 리전으로 서울과 춘천이 확인됩니다. 개인 서버나 국내 사용자를 대상으로 하는 작은 서비스라면 한국 리전이 가장 자연스럽습니다.

하지만 가입 화면에서 춘천이 안 보일 수 있습니다. 어떤 시점에는 서울만 보이거나, 아예 일본 Tokyo가 기본값으로 잡히는 경우도 있습니다. 이때 국내 IP가 꼭 필요한 서비스가 아니라면 Japan East(Tokyo)도 현실적인 선택입니다. 한국에서 도쿄 리전은 물리적으로 가깝고, 개인 서버, 학습용 리눅스, 작은 자동화 작업, 테스트 API 정도라면 체감상 큰 문제가 없는 경우가 많습니다.

정리하면 이렇게 보면 됩니다.

  • 한국 리전이 보이고 용량이 있다면: 서울 또는 춘천을 우선 고려합니다.
  • 춘천이 없고 서울도 애매하다면: Japan East(Tokyo)를 선택해도 개인 서버 용도로는 충분히 현실적입니다.
  • 국내 전용 API, 국내 IP 기반 인증, 금융/공공망 테스트가 필요하다면: 일본 리전은 불리할 수 있습니다.
  • 홈 리전은 변경이 어렵기 때문에, “그냥 나중에 바꾸면 되지”라고 생각하면 안 됩니다.

공식 리전 목록: Oracle Public Cloud Regions

4단계: 무료 서버 생성 흐름

가입이 끝나면 콘솔에서 Compute 인스턴스를 만듭니다. 메뉴 이름은 시점에 따라 조금 달라질 수 있지만, 큰 흐름은 Compute, Instances, Create instance 순서로 보면 됩니다.

서버 생성 시 확인할 항목은 다음과 같습니다.

  • 이미지는 Ubuntu 또는 Oracle Linux처럼 익숙한 리눅스를 고릅니다.
  • Shape에서 Always Free eligible 표시가 있는지 확인합니다.
  • Ampere A1 Flex를 고를 경우 Arm 서버라는 점을 기억합니다.
  • Boot volume이 무료 범위를 넘지 않는지 확인합니다.
  • SSH 키는 새로 만들거나 기존 공개키를 등록합니다.
  • VCN과 subnet은 기본 생성 옵션을 써도 처음에는 충분합니다.

Ampere A1은 인기가 많아서 “Out of host capacity” 같은 에러가 날 수 있습니다. 이건 설정을 잘못해서라기보다 해당 리전의 무료 리소스 여유가 없는 경우가 많습니다. 이럴 때는 OCPU와 메모리를 줄여서 다시 시도하거나, 시간을 두고 새벽이나 다른 시간대에 다시 생성해 보는 방식이 현실적입니다.

5단계: SSH로 접속하기

인스턴스가 만들어지면 Public IP를 확인하고, 로컬 터미널에서 SSH로 접속합니다. 아래 예시는 민감정보를 제거한 형태입니다.

SSH 개인키 권한 정리 후 접속terminal
chmod 600 ~/.ssh/oci_free_server.key
ssh -i ~/.ssh/oci_free_server.key ubuntu@PUBLIC_IP_ADDRESS

PUBLIC_IP_ADDRESS는 Oracle 콘솔의 인스턴스 상세 화면에서 확인한 공인 IP로 바꿔 입력합니다.

Oracle Linux를 선택했다면 기본 사용자가 ubuntu가 아닐 수 있습니다. 이미지에 따라 opc 또는 다른 기본 계정을 쓰므로, 콘솔의 접속 안내를 확인하는 편이 정확합니다.

처음 접속한 뒤에는 기본 업데이트부터 진행합니다.

Ubuntu 패키지 목록과 기본 패키지 업데이트terminal
sudo apt update
sudo apt upgrade -y

간단한 웹 서버 테스트라면 nginx를 설치해 볼 수 있습니다.

nginx 설치 후 실행 상태 확인terminal
sudo apt install nginx -y
systemctl status nginx

6단계: Oracle 내 정보 값을 터미널 config에 등록하기

콘솔만 써도 서버 생성은 가능하지만, 나중에 자동화하거나 스크립트로 관리하려면 OCI CLI 설정을 해두는 편이 편합니다. Oracle 공식 문서 기준으로 macOS와 Git Bash의 기본 config 위치는 ~/.oci/config입니다.

OCI CLI를 설치한 뒤에는 아래처럼 설정을 시작할 수 있습니다.

OCI CLI 초기 설정 마법사 실행terminal
oci setup config

설정 과정에서 필요한 값은 대략 다음과 같습니다.

  • User OCID
  • Tenancy OCID
  • Region 코드
  • API key fingerprint
  • Private key file path

민감정보를 제거한 config 예시는 아래와 같습니다.

민감정보를 제거한 ~/.oci/config 예시config
[DEFAULT]
user=ocid1.user.oc1..example_redacted
fingerprint=xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
tenancy=ocid1.tenancy.oc1..example_redacted
region=ap-tokyo-1
key_file=/Users/yourname/.oci/oci_api_key.pem

실제 User OCID, Tenancy OCID, fingerprint, private key 경로는 공개하지 말고 본인 로컬 환경에서만 관리합니다.

여기서 region=ap-tokyo-1은 Japan East(Tokyo)를 골랐을 때의 예시입니다. 서울을 선택했다면 ap-seoul-1, 춘천을 선택했다면 ap-chuncheon-1처럼 자신의 홈 리전에 맞게 넣어야 합니다.

공식 CLI 문서: OCI CLI Quickstart, SDK and CLI Configuration File

7단계: 방화벽과 포트 열기

웹 서버를 띄웠는데 접속이 안 되면 대부분 보안 목록, 네트워크 보안 그룹, OS 방화벽 중 하나에서 막힌 것입니다. 처음에는 SSH 22번만 열려 있고, 80번이나 443번은 직접 열어야 할 수 있습니다.

웹 서버를 공개하려면 보통 아래를 확인합니다.

  • OCI VCN의 Security List 또는 NSG에서 TCP 80, 443 인바운드 허용
  • 리눅스 내부 방화벽에서 80, 443 허용
  • nginx 또는 앱 서버가 실제로 실행 중인지 확인
  • Public IP가 인스턴스에 연결되어 있는지 확인

가입보다 중요한 것은 과금 방지 습관이다

오라클 무료티어를 서버 실습용으로 쓸 때 가장 중요한 것은 서버를 만드는 기술보다 과금될 가능성을 줄이는 습관입니다. 무료 리소스는 “무료로 쓸 수 있는 범위”가 정해져 있고, 콘솔에서 무심코 다른 Shape, 더 큰 볼륨, 추가 네트워크 리소스를 만들면 의도와 다르게 비용이 생길 수 있습니다.

처음에는 서버를 하나만 만들고, 리소스 이름을 명확하게 붙이고, 테스트가 끝난 리소스는 바로 지우는 방식이 좋습니다. 특히 블록 볼륨, 공인 IP, 로드밸런서, 백업, 스냅샷처럼 서버 주변에 붙는 리소스는 Compute 인스턴스보다 눈에 덜 띄어서 방치되기 쉽습니다.

무료티어를 안전하게 쓰는 습관:

  • 리소스를 만들 때마다 Always Free eligible 표시를 확인합니다.
  • 서버, 볼륨, VCN, 공인 IP 이름에 테스트 목적과 날짜를 적습니다.
  • 실습이 끝난 인스턴스만 삭제하지 말고 연결된 볼륨과 IP도 같이 확인합니다.
  • 결제 화면과 비용 분석 화면을 주기적으로 열어 0원 상태를 확인합니다.
  • 사용하지 않는 API key와 SSH key는 정리하고, config 파일은 외부에 공유하지 않습니다.

민감정보는 어디까지 가려야 할까

블로그나 메모에 과정을 남길 때 가장 조심해야 하는 부분입니다. 아래 값은 공개하면 안 됩니다.

  • Tenancy OCID 전체값
  • User OCID 전체값
  • API private key 파일
  • fingerprint 전체값
  • 콘솔 로그인 이메일과 MFA 화면
  • 카드 정보, 주소, 전화번호
  • 서버 공인 IP, 방화벽 구조, SSH 접속 키

가이드 글을 쓸 때는 config 예시처럼 example_redacted, PUBLIC_IP_ADDRESS, /Users/yourname/... 같은 형태로 치환하는 편이 안전합니다.

결론: 춘천이 없어서 일본 Tokyo로 해도 될까

개인 서버, 학습용 리눅스, 작은 자동화 스크립트, 테스트용 API라면 Japan East(Tokyo)로 시작해도 괜찮습니다. 한국 리전이 가장 깔끔한 선택인 것은 맞지만, 가입 화면에서 춘천이 없고 서울도 애매하다면 도쿄는 현실적인 대안입니다.

다만 홈 리전은 나중에 쉽게 바꾸는 성격의 값이 아닙니다. 국내 IP가 꼭 필요한지, 무료 리소스 생성 가능성이 더 중요한지, 단순 학습용인지 먼저 정리한 뒤 결정하는 것이 좋습니다. “어차피 무료니까 대충 만들자”보다 “내가 이 서버로 뭘 돌릴지”를 먼저 정하면 실패 확률이 줄어듭니다.

자주 묻는 질문

오라클 무료티어는 진짜 무료인가요?

Always Free 범위 안에서 쓰면 무료로 사용할 수 있습니다. 다만 무료 범위를 벗어난 리소스를 만들면 과금될 수 있으므로 Always Free eligible 표시와 비용 화면을 확인해야 합니다.

홈 리전을 나중에 바꿀 수 있나요?

Oracle 공식 문서에서는 홈 리전을 변경할 수 없다고 안내합니다. 가입 단계에서 신중하게 고르는 것이 좋습니다.

춘천이 안 보이면 Tokyo로 가입해도 되나요?

국내 IP가 꼭 필요한 서비스가 아니라면 Japan East(Tokyo)는 개인 서버와 학습용으로 충분히 현실적인 선택입니다. 다만 한국 사용자 대상 서비스라면 지연 시간과 국내망 요구사항을 따로 확인해야 합니다.

OCI config를 블로그에 올려도 되나요?

올리면 안 됩니다. 예시를 보여주고 싶다면 OCID, fingerprint, key_file, IP, 이메일, 카드 정보는 반드시 더미 값으로 바꿔야 합니다.