반응형

RKE1은 2025년 7월 말로 공식 지원이 종료됩니다. RKE2는 containerd 기반의 차세대 배포판으로 보안·성능·업스트림 호환성을 강화했으며, SELinux·FIPS·CIS 벤치마크 통과 기능을 제공합니다. 따라서 기존 RKE1 클러스터를 RKE2로 전환해 안정적인 운영 환경을 확보해야 합니다.
RKE1 → RKE2 마이그레이션 개요
마이그레이션 필요성
- RKE1 EOL: 2025년 7월 31일 공식 지원 종료
- 보안 강화: CIS 벤치마크, FIPS 140-2, SELinux 자동 준수
- 성능 향상: containerd 기반으로 60% 메모리 절약
- 업스트림 호환성: Kubernetes 표준 준수
마이그레이션 전략
RKE1에서 RKE2로의 전환은 단순 업그레이드가 아닌 '새 클러스터 재배포 + 워크로드 재플랫폼' 방식으로 진행해야 합니다.
| 컨테이너 런타임 | Docker | containerd |
| 제어 평면 | Docker 컨테이너 | 정적 Pod |
| 보안 준수 | 수동 설정 | 자동 CIS/FIPS |
| 지원 상태 | EOL 2025.07.31 | 지속 지원 |
사전 준비 사항
RKE1 클러스터 상태 점검
# 클러스터 전체 상태 확인
kubectl get nodes,pods,svc -A
# 리소스 상세 분석
kubectl get all -A -o wide
kubectl get pv,pvc -A
kubectl get ingress -A
kubectl get secrets -A
kubectl get configmaps -A
# 클러스터 정보 수집
kubectl cluster-info
kubectl version
kubectl api-resources백업 전략
Rancher Server 클러스터는 Rancher Backup Operator, 워크로드는 Velero로 전체 백업
# Rancher Backup Operator 설치
helm repo add rancher-charts https://charts.rancher.io
helm install rancher-backup-operator rancher-charts/rancher-backup \
--namespace cattle-resources-system \
--create-namespace
# Rancher 백업 생성
kubectl apply -f - rke1-ingress-backup.yaml
kubectl get svc -A --field-selector spec.type=LoadBalancer -o yaml > rke1-lb-services.yaml
# DNS 레코드 현황 확인
dig +short api.example.com
dig +short app.example.com
# 로드밸런서 VIP 확인
kubectl get svc -A | grep LoadBalancerRKE2 클러스터 구축
RKE2 설치 스크립트 적용
# 마스터 노드에서 RKE2 서버 설치
curl -sfL https://get.rke2.io | sudo INSTALL_RKE2_TYPE="server" sh -
# 서비스 활성화 및 시작
sudo systemctl enable rke2-server.service
sudo systemctl start rke2-server.service
# 설치 상태 확인
sudo systemctl status rke2-server
sudo journalctl -u rke2-server -f설정 파일 구성
# /etc/rancher/rke2/config.yaml
token: my-shared-secret-2025
tls-san:
- "my-k8s-domain.com"
- "192.168.0.100" # VIP 주소
- "api.example.com"
write-kubeconfig-mode: "0644"
cluster-cidr: "10.42.0.0/16"
service-cidr: "10.43.0.0/16"
# 보안 강화 설정
profile: "cis"
selinux: true
secrets-encryption: true
# 백업 설정
etcd-snapshot-schedule-cron: "0 */6 * * *"
etcd-snapshot-retention: 10워커 노드 등록
# 워커 노드에서 RKE2 에이전트 설치
curl -sfL https://get.rke2.io | sudo INSTALL_RKE2_TYPE="agent" sh -
# 설정 파일 생성
sudo mkdir -p /etc/rancher/rke2
sudo tee /etc/rancher/rke2/config.yaml > ~/.bashrc
# 클러스터 상태 확인
kubectl get nodes
kubectl get pods -ARancher Server 및 리소스 마이그레이션
Rancher Server 백업 및 복원
# RKE1에서 Rancher 백업 생성
kubectl apply -f - production-workloads.yaml
# RKE2 클러스터에 네임스페이스 생성
kubectl create namespace production
# 매니페스트 수정 후 적용
# (이미지 레지스트리, 스토리지 클래스 등 업데이트)
kubectl apply -f production-workloads-updated.yamlStateful 워크로드
# pv-migrate 도구로 PVC 직접 전송
pv-migrate \
--source-context=rke1-cluster \
--source-namespace=database \
--source=mysql-data-pvc \
--dest-context=rke2-cluster \
--dest-namespace=database \
--dest=mysql-data-pvc \
--ignore-mounted
# 또는 Velero로 전체 네임스페이스 백업·복구
velero backup create database-backup \
--include-namespaces database \
--include-resources persistentvolumeclaims,persistentvolumes
# RKE2 클러스터에서 복원
velero restore create database-restore \
--from-backup database-backup \
--namespace-mappings database:database고급 스토리지 마이그레이션
# Longhorn 볼륨 마이그레이션 (Longhorn 사용 시)
# 1. RKE1에서 백업 생성
kubectl apply -f - rancher-bootstrap-backup.yaml검증 및 클린업
# RKE1 클러스터 축소 전 주요 애플리케이션 기능 재검증
# 1. 기능 테스트
curl -X POST http://api.mydomain.com/test
kubectl logs -n production deployment/api-server
# 2. 데이터 무결성 확인
kubectl exec -n database mysql-0 -- mysql -u root -p -e "SELECT COUNT(*) FROM users;"
# 3. 모든 DNS·인그레스가 RKE2로 정상 작동하면 RKE1 해체
# RKE1 클러스터 정리
kubectl delete all --all -n production # RKE1에서
kubectl delete namespace production # RKE1에서마이그레이션 체크리스트
사전 준비 단계
- RKE1 클러스터 상태 점검 완료
- Rancher Backup Operator 설치 및 백업 생성
- Velero 설치 및 전체 클러스터 백업
- 마이그레이션 도구 설치 (pv-migrate, cattle-drive)
- 네트워크 설정 문서화
- 롤백 계획 수립
마이그레이션 실행 단계
- RKE2 클러스터 구축 완료
- kubeconfig 설정 및 접근 확인
- Rancher Server 복원 완료
- Stateless 워크로드 재배포
- Stateful 워크로드 및 PVC 마이그레이션
- DNS 및 로드밸런서 전환
검증 및 완료 단계
- 모든 서비스 정상 작동 확인
- 데이터 무결성 검증
- 성능 테스트 통과
- 모니터링 및 알림 설정
- RKE1 클러스터 정리
마무리
RKE1에서 RKE2로의 전환은 단순 업그레이드가 아닌 '새 클러스터 재배포 + 워크로드 재플랫폼' 방식으로 진행해야 합니다. 사전 백업, Rancher 리소스 이동, 스토리지 마이그레이션, DNS 전환, 검증·롤백이 핵심 단계입니다. pv-migrate·cattle-drive·Velero 등의 도구를 결합해 무중단 전환을 구현하고, 테스트와 문서화를 꼼꼼히 수행해 안정적인 마이그레이션을 완성하세요.
핵심 포인트:
- 2025년 7월 31일 RKE1 EOL로 인한 필수 마이그레이션
- Blue-Green 방식의 단계적 전환으로 무중단 서비스
- 전문 도구 활용으로 데이터 손실 없는 이전
- 철저한 백업과 롤백 계획으로 리스크 최소화
- CIS/FIPS 자동 준수로 보안 강화
RKE2로의 마이그레이션을 통해 차세대 보안 기능과 성능 향상을 확보하고, 지속 가능한 쿠버네티스 운영 환경을 구축할 수 있습니다.
반응형
'IT기술 > 쿠버네티스 (k8s)' 카테고리의 다른 글
| RKE2 모니터링과 로깅 완벽 가이드: Prometheus, Grafana, Loki 통합 구축 (6) | 2025.07.18 |
|---|---|
| RKE2 인그레스 완벽 가이드: 외부 트래픽 라우팅과 로드밸런서 구축 (4) | 2025.07.16 |
| RKE2 고가용성(HA) 클러스터 완벽 가이드: 엔터프라이즈급 쿠버네티스 인프라 구축 (2) | 2025.07.16 |
| Rancher와 RKE2 완벽 가이드: 차세대 쿠버네티스 플랫폼 구축과 자동화 (4) | 2025.07.14 |
| RKE2 NAS 스토리지와 GPU 가속 연동 완벽 가이드: 온프레미스 AI/ML 인프라 구축 (6) | 2025.07.12 |