📖 개요: 트라이얼 만료, 정말 큰일일까
SAP BTP 트라이얼 계정을 쓰다 보면 어느 날 콕핏 상단에 "트라이얼이 곧 종료됩니다"라는 배너가 뜹니다. 이때 많은 분들이 "큰일 났다, 다 날아가는 건가?"라고 당황하는데, 결론부터 말하면 미리 준비하면 큰일이 아니고, 준비 없이 만료일을 넘기면 실제로 꽤 큰일입니다. 이 글은 데이터 복구라는 단일 이슈가 아니라, 만료 전후의 전체 대처 흐름을 Q&A 관점으로 정리합니다.
- 내 트라이얼 만료 시점을 정확히 확인하는 방법
- 만료되면 실제로 무엇이 잠기고, 무엇이 그대로 남는지 구분
- 만료 전에 해야 할 인벤토리 점검과 백업 체크리스트
- Free Tier / Pay-As-You-Go(PAYG) 계정으로 갈아타는 실무 절차
- 만료를 둘러싼 흔한 오해와 FAQ
📚 미리 알아두면 좋은 배경
SAP BTP 계정 구조(글로벌 계정 → 서브어카운트 → 환경/서비스)를 대략 알고 있으면 이해가 훨씬 빠릅니다. Cloud Foundry에 앱을 한 번이라도 배포해 봤거나, BTP 콕핏에서 서비스 인스턴스를 만들어 본 경험이 있으면 충분합니다. CLI 예제가 나오지만 구조만 이해해도 되는 수준이며, 초심자 기준으로 설명합니다.
🔧 테스트 환경
이 글은 다음 기준으로 작성되었습니다.
- SAP BTP Trial (2026년 기준, 90일 제공 · 연장 불가 정책) — 과거의 "30일 + 연장" 방식과 다르므로 오래된 커뮤니티 글과 혼동하지 않도록 주의
- SAP BTP Cockpit (트라이얼 랜딩 페이지 포함)
- btp CLI v2.x, cf CLI v8.x — 리소스 인벤토리 확인용
- 전환 대상: Free Tier 서비스 플랜이 포함된 PAYG 글로벌 계정
준비물은 트라이얼에 로그인 가능한 SAP 계정(이메일 기반), 로컬에 설치한 btp/cf CLI, 그리고 소스를 보관할 Git 저장소 정도입니다. PAYG 전환까지 실습하려면 결제 수단(신용카드) 등록이 필요하지만, Free Tier 플랜만 사용하면 일반적으로 과금은 발생하지 않습니다.
💡 핵심 개념: 만료 시 무엇이 사라지고 무엇이 남는가
트라이얼 만료를 이해하는 가장 좋은 비유는 "임대 기간이 끝나는 모델하우스"입니다. 집(플랫폼 계정)은 90일 뒤 철거가 예정되어 있고, 철거되면 안에 두고 온 가구(앱, 데이터, 설정)는 함께 사라집니다. 하지만 여러분의 신분증(SAP 로그인 계정)과, 미리 밖으로 옮겨 둔 짐(Git 소스, 내보낸 데이터)은 철거와 무관하게 남습니다.
만료 시점에 벌어지는 일을 계층별로 나누면 다음과 같습니다.
| 구분 | 만료 후 상태 | 대처 |
|---|---|---|
| 트라이얼 글로벌 계정·서브어카운트 | 삭제됨 (일반적으로 복구 불가) | 만료 전 인벤토리 문서화 |
| 배포된 앱 (CF/Kyma) | 계정과 함께 삭제 | 소스는 Git, 빌드 산출물은 로컬 보관 |
| 서비스 인스턴스·서비스 키 | 삭제 | 키 값이 아닌 "생성 절차"를 기록 |
| SAP HANA Cloud 트라이얼 데이터 | 삭제 | 만료 전 CSV/SQL로 내보내기 |
| Destination·Role Collection 등 설정 | 삭제 | JSON/스크린샷으로 백업 |
| SAP 로그인 계정(이메일/Universal ID) | 유지됨 | 그대로 새 계정 신청에 사용 |
| 로컬 소스·Git 저장소·문서 | 당연히 유지 | 전환 후 재배포의 핵심 자산 |
여기서 중요한 개념 구분 두 가지가 있습니다. 첫째, "만료 전 일시 중지"와 "만료"는 다릅니다. 트라이얼에서는 리소스 절약을 위해 CF 앱과 HANA Cloud 인스턴스가 매일 저녁 자동으로 중지되는데, 이것은 정상 동작이며 다음 날 다시 시작하면 됩니다. 만료는 이와 달리 계정 자체가 제거되는 이벤트입니다. 둘째, Free Tier는 트라이얼의 연장선이 아니라 별도의 상용 계정 모델입니다. 트라이얼이 만료된다고 자동으로 Free Tier로 전환되지 않으며, 리소스가 자동 이관되지도 않습니다. 즉 전환은 "이사"이지 "계약 갱신"이 아닙니다.
만료 시점 확인 방법은 세 가지가 일반적입니다. (1) 트라이얼 콕핏 랜딩 페이지 상단 배너의 종료 예정일, (2) 만료가 다가올 때 발송되는 안내 이메일, (3) btp CLI로 글로벌 계정 상세를 조회해 계정 생성일 기준으로 역산하는 방법입니다.
💻 실전 예제 3단계: 만료 전 인벤토리부터 PAYG 전환까지
1단계 — 기본: 내 계정에 뭐가 있는지 인벤토리 뽑기
이사의 첫 단계는 짐 목록 작성입니다. btp/cf CLI로 현재 트라이얼에 어떤 리소스가 있는지 확인합니다.
# btp CLI 로그인 (트라이얼 글로벌 계정 선택)
btp login --url https://cli.btp.cloud.sap
# 글로벌 계정과 서브어카운트 목록 확인
btp list accounts/subaccount
# CF 환경 로그인 후 앱/서비스 확인
cf login -a https://api.cf.ap21.hana.ondemand.com
cf apps
cf services
출력에서 앱 이름, 서비스 인스턴스, 플랜 이름을 메모장이 아닌 버전 관리되는 문서로 남기는 것을 권장합니다. 나중에 새 계정에서 같은 구성을 재현할 때 이 목록이 곧 작업 지시서가 됩니다.
2단계 — 실무: 백업 스크립트로 설정을 파일로 남기기 (에러 처리 포함)
서비스 키나 Destination 설정은 화면에서 하나씩 보는 대신 파일로 내보내 두면 이관이 쉽습니다. 아래는 서비스 인스턴스 목록을 순회하며 키를 JSON으로 저장하고, 실패한 항목을 로그로 남기는 예시 스크립트입니다.
# backup_inventory.sh — 트라이얼 자산 백업 예시
BACKUP_DIR=./btp-backup-$(date +%Y%m%d)
mkdir -p "$BACKUP_DIR"
LOG_FILE="$BACKUP_DIR/backup.log"
for svc in $(cf services | tail -n +4 | awk '{print $1}'); do
echo "[INFO] exporting key for: $svc" | tee -a "$LOG_FILE"
cf create-service-key "$svc" migkey-tmp >> "$LOG_FILE" 2>&1
if cf service-key "$svc" migkey-tmp > "$BACKUP_DIR/${svc}-key.json" 2>>"$LOG_FILE"; then
echo "[OK] $svc" | tee -a "$LOG_FILE"
else
echo "[WARN] $svc 키 내보내기 실패 — 수동 확인 필요" | tee -a "$LOG_FILE"
fi
done
HANA Cloud 트라이얼의 테이블 데이터는 Database Explorer의 내보내기 기능이나 SQL로 백업합니다. 예를 들어 실습용 주문 테이블이 있다면 다음과 같이 확인 후 CSV로 내보냅니다.
-- 백업 대상 테이블 크기 확인
SELECT TABLE_NAME, RECORD_COUNT
FROM M_TABLES
WHERE SCHEMA_NAME = 'DEMOSHOP';
-- 내보내기 전 검증용 샘플 조회
SELECT TOP 10 * FROM DEMOSHOP.ORDER_HEADER;
주의할 점은 키 파일에는 자격 증명(비밀 값)이 포함된다는 것입니다. 백업 폴더는 반드시 Git에 올리지 말고(.gitignore 처리), 새 계정에서 키를 재발급하면 즉시 폐기하는 것이 안전합니다.
3단계 — 프로덕션 준비: PAYG + Free Tier로 이사하고 재배포하기
전환 절차는 일반적으로 다음 순서입니다. (1) SAP 웹사이트에서 PAYG(Pay-As-You-Go for SAP BTP) 계정을 신청하고 결제 수단을 등록 → (2) 새 글로벌 계정에 서브어카운트 생성 → (3) 엔타이틀먼트 화면에서 free 플랜을 서브어카운트에 할당 → (4) CF 환경 활성화 → (5) 백업해 둔 소스로 재배포. MTA 프로젝트라면 mta.yaml의 서비스 플랜이 free 플랜을 가리키는지 확인하는 것이 핵심입니다.
# mta.yaml 발췌 — 새 계정에서는 free 플랜을 명시
resources:
- name: demoshop-hdi
type: com.sap.xs.hdi-container
parameters:
service: hana
service-plan: hdi-shared
- name: demoshop-dest
type: org.cloudfoundry.managed-service
parameters:
service: destination
service-plan: lite
# 새 서브어카운트에 재배포
cf login -a https://api.cf.us10-001.hana.ondemand.com
mbt build -p cf
cf deploy mta_archives/demoshop_1.0.0.mtar
프로덕션 관점에서 세 가지를 권장합니다. 보안: 트라이얼에서 쓰던 서비스 키·인증서는 전부 새로 발급하고 이전 값은 폐기합니다. 비용: PAYG 계정에서는 free 플랜이 아닌 유료 플랜을 실수로 선택하면 과금되므로, 엔타이틀먼트에 free 플랜만 할당해 두면 사고를 예방할 수 있습니다. 검증: 재배포 후 1단계에서 만든 인벤토리 문서와 대조하며 앱 기동, 서비스 바인딩, Destination 연결을 하나씩 체크리스트로 확인합니다.
⚠️ 삽질 노트 (FAQ)
Q1. 만료되면 SAP 로그인 계정도 사라지나요?
아닙니다. 삭제되는 것은 트라이얼 글로벌 계정(플랫폼 리소스)이고, SAP 사이트에 로그인하는 사용자 계정 자체는 유지됩니다. 같은 이메일로 PAYG 신청이나 커뮤니티 활동을 계속할 수 있습니다.
Q2. 만료되면 자동으로 Free Tier로 바뀌지 않나요?
자동 전환은 없습니다. Free Tier는 PAYG 같은 상용 글로벌 계정 안에서 free 플랜을 쓰는 방식이라, 별도로 계정을 신청하고 리소스를 직접 재배포해야 합니다. "만료일에 알아서 옮겨지겠지"가 가장 흔한 오해입니다.
Q3. 매일 저녁 앱이 꺼지는데, 만료가 시작된 건가요?
아닙니다. 트라이얼의 야간 자동 중지는 정상 동작이며, 콕핏이나 CLI에서 다시 시작하면 됩니다. 만료는 별개의 이벤트로 배너/이메일로 안내됩니다.
Q4. 만료 후 데이터를 되살릴 수 있나요?
일반적으로 불가능하다고 보고 대비하는 것이 안전합니다. 데이터 복구 자체는 별도 주제로 더 깊이 다룰 수 있으니, 이 글에서는 "만료 전에 내보내는 것이 사실상 유일한 정답"이라는 점만 강조합니다.
Q5. 만료 후 같은 이메일로 트라이얼을 새로 만들 수 있나요?
정책상 제한될 수 있어 일반적으로 재신청이 안 되는 경우가 보고됩니다. 트라이얼을 "무한 반복 가능한 샌드박스"로 가정하지 말고, 90일 안에 Free Tier 전환 계획을 세우는 편이 안전합니다.
🚀 이어서 보면 좋은 주제
전환을 마쳤다면 다음 주제로 확장해 보세요. (1) Trial vs Free Tier vs PAYG 비교 — 세 모델의 과금·제한 차이를 정리한 기존 글과 함께 보면 계정 전략이 명확해집니다. (2) btp CLI 자동화 — 서브어카운트·엔타이틀먼트 구성을 스크립트로 재현하면 다음 이사가 훨씬 쉬워집니다. (3) MTA 기반 배포 파이프라인 — 소스만 있으면 어떤 계정에서든 재현 가능한 구조가 만료 리스크를 근본적으로 없애는 방법입니다.
📚 더 읽어보기 (링크 모음)
- SAP Help Portal — Trial Accounts and Free Tier
- SAP Help Portal — BTP Commercial Models (PAYG 포함)
- SAP Help Portal — Getting Started with a Trial Account (Cloud Foundry)
- SAP Help Portal — btp CLI Command Reference
- SAP Developers — 트라이얼 계정 생성 가이드
- SAP BTP Trial 공식 신청 페이지
- SAP Community — BTP 토픽 (만료/전환 경험담 다수)
댓글 0
아직 댓글이 없습니다.