Leapp 활용 Oracle Linux 7→8 업그레이드: 아키텍처·제한 요소·엔터프라이즈 트러블슈팅

발행: (2026년 5월 22일 PM 06:12 GMT+9)
11 분 소요
원문: Dev.to

출처: Dev.to

소개

Enterprise Linux 운영 체제는 보안, 지원성, 규정 준수 및 운영 안정성을 유지하기 위해 주기적인 업그레이드가 필요합니다.
조직이 인프라 플랫폼을 현대화함에 따라 Oracle Linux 7에서 Oracle Linux 8로 마이그레이션하는 것이 중요해집니다. Oracle Linux 8은 다음을 도입합니다:
✔ 최신 패키지 관리

하지만 주요 Linux 업그레이드는 단순한 패키지 업데이트가 아닙니다.
다음과 같은 작업이 포함됩니다:
✔ 저장소 전환

Oracle Linux는 Leapp 업그레이드 유틸리티를 제공하여 Oracle Linux 7 → Oracle Linux 8 마이그레이션을 안전하게 자동화하고 조정합니다.

이 블로그에서는 다음을 깊이 있게 살펴봅니다:
✔ Leapp 저장소 구성

Leapp은 Oracle Linux 7 시스템을 Oracle Linux 8로 마이그레이션하는 인플레이스 업그레이드 유틸리티입니다.
Oracle Linux 7 → Oracle Linux 8 업그레이드에는 플랫폼 수준의 아키텍처 변화가 수반됩니다. 여기에는 다음이 포함됩니다:
✔ 커널 전환

※ 운영 체제 업그레이드는 단순히 패키지 업그레이드가 아니라 전체 플랫폼 전환입니다.
Leapp 업그레이드 프로세스는 여러 운영 단계로 진행됩니다.

Oracle Linux 7

Step 1: 현재 Oracle Linux 버전 확인
마이그레이션을 시작하기 전에 현재 OS 버전을 검증합니다.
명령:

cat /etc/os-release

예시 출력:

NAME="Oracle Linux Server"

Step 2: 현재 저장소 확인
업그레이드 수행 전 저장소 일관성은 매우 중요합니다.
저장소 확인:

yum repolist

손상되거나 중복된 저장소는 다음을 초래할 수 있습니다:
✔ 의존성 실패

Leapp 저장소 구성 추가
저장소 디렉터리로 이동:

cd /etc/yum.repos.d/

Oracle Linux 저장소를 생성하거나 검증합니다.
예시:

[ol7_leapp]
https://yum.oracle.com/repo/OracleLinux/OL7/leapp/x86_64/

저장소 메타데이터 새로 고침

Step 4: Leapp 유틸리티 설치
필요한 Leapp 패키지를 설치합니다.
명령:

yum install -y leapp-upgrade leapp-data-oraclelinux

설치되는 내용
Leapp은 다음을 설치합니다:
✔ 업그레이드 액터

Leapp 설치 확인

rpm -qa | grep leapp

Step 5: Leapp 사전 업그레이드 이해
실제 업그레이드를 수행하기 전에 Leapp은 광범위한 시스템 분석을 수행합니다.
명령: (생략)
사전 업그레이드 중에 일어나는 일
Leapp은 다음을 분석합니다:
✔ 설치된 패키지

운영 인사이트

가장 중요한 Leapp 개념 중 하나는 inhibitor(억제제)입니다.
억제제란?
억제제는 업그레이드가 안전하게 진행되는 것을 방해하는 조건입니다. 억제제가 존재하면 Leapp은 업그레이드 프로세스를 차단합니다.

억제제가 존재하는 이유
억제제는 시스템을 위험한 마이그레이션 시나리오로부터 보호합니다. 예시:
✔ 지원되지 않는 저장소

실제 저장소 억제제 예시
오류 예시:

Repository ol8_baseos_latest is listed more than once in the configuration.

왜 이런 일이 발생할까
가능한 원인:
✔ 중복된 .repo 파일

중복 저장소 수정
저장소 디렉터리 확인:

ls -l /etc/yum.repos.d/

중복된 저장소 정의 검토:

grep -r "ol8_baseos_latest" /etc/yum.repos.d/

중복 항목을 신중히 제거합니다.

이는 가장 중요한 업그레이드 개념 중 하나입니다.

답변 파일이란?
업그레이드 중 Leapp은 특정 마이그레이션 결정에 대해 관리자 확인을 요구할 수 있습니다. Leapp은 이러한 프롬프트를 답변 파일에 저장합니다.

위치:

/var/log/leapp/answerfile

답변 파일이 중요한 이유
Leapp은 필요한 질문에 답변이 제공될 때까지 업그레이드를 차단합니다.

예시: 답변 파일에 필수 답변이 누락된 경우.

필수 답변 보기
명령:

leapp answer --section remove_pam_pkcs11_module_check.confirm=True

이 명령의 역할
이 명령은 Leapp이 요구하는 특정 업그레이드 작업을 확인합니다.

운영 인사이트
답변 파일은 관리자가 위험하거나 환경에 특화된 마이그레이션 결정을 명시적으로 승인하도록 돕습니다.

Oracle Linux 7과 Oracle Linux 8은 서로 다른 저장소 구조를 사용합니다.

Oracle Linux 7 저장소
✔ ol7_latest

Oracle Linux 8 저장소
✔ BaseOS

저장소 매핑 워크플로우

OL7 저장소

Oracle Linux 8은 AppStream 모듈식 저장소를 도입합니다. Oracle Linux 7과 달리 패키지는 모듈 및 스트림으로 그룹화됩니다. 예시:
✔ Python 스트림

이는 유연성을 높이지만 마이그레이션 복잡성도 증가시킵니다.

타사 저장소 문제
엔터프라이즈 시스템은 흔히 타사 저장소를 사용합니다. 예시:
✔ EPEL

EPEL 문제 예시
오류 예시:

No package epel-release available

가능한 원인:
✔ 저장소 호환성 문제

Step 6: 업그레이드 실행
억제제가 모두 해결되면 업그레이드를 시작합니다.

명령:

leapp upgrade

내부에서 일어나는 일
Leapp은 다음을 수행합니다:
✔ 업그레이드 initramfs 생성

이는 가장 고급 업그레이드 개념 중 하나입니다.
Leapp은 현재 실행 중인 Oracle Linux 7 사용자 공간 밖에서 전용 업그레이드 initramfs 환경으로 일시적으로 부팅합니다. 이 격리된 환경은 패키지 교체 작업을 안전하게 수행합니다.

업그레이드 부팅 워크플로우

일반 OL7 부팅

Leapp은 실행 중인 Oracle Linux 7 사용자 공간 외부에서 업그레이드를 수행하여 마이그레이션 중 활성 패키지 충돌 및 의존성 손상을 방지합니다. 일시적인 업그레이드 initramfs 환경은 패키지 교체, 저장소 전환, 커널 마이그레이션 및 의존성 업데이트가 현재 실행 중인 OS에 영향을 주지 않고 안전하게 이뤄질 수 있는 격리된 사용자 공간을 제공합니다. 이러한 격리는 주요 플랫폼 전환 시 패키지 불일치 및 업그레이드 불안정 위험을 크게 줄여줍니다.

업그레이드 준비 후:

reboot

시스템은 일시적인 업그레이드 환경으로 부팅됩니다. 마이그레이션은 자동으로 진행됩니다.

재부팅이 완료된 후:
OS 버전 확인

실제 현장에서 흔히 마주치는 업그레이드 문제
많은 업그레이드 실패는 Leapp 자체보다 환경 불일치 때문에 발생합니다.

일반 운영 문제
✔ 저장소 중복

업그레이드 과정에서 마이그레이션이 중단되면 관리자는 Leapp 보고서를 분석하고, 저장소를 검증하며, 억제제를 검토하고, 필요 시 백업 또는 부팅 볼륨 스냅샷을 사용해 시스템을 복구해야 합니다.

관련 로그 파일:

/var/log/leapp/leapp-report.txt
/var/log/leapp/leapp-upgrade.log
/var/log/leapp/leapp-preupgrade.log

Leapp 로그는 의존성 분석, 마이그레이션 단계, 저장소 전환 및 패키지 실패에 대한 상세 가시성을 제공합니다.

엔터프라이즈 업그레이드에서는 항상 롤백 준비가 포함되어야 합니다.

업그레이드 전
✔ 백업 생성

업그레이드가 예기치 않게 실패할 경우:
롤백 기능은 다운타임과 운영 위험을 감소시킵니다.
✔ 업그레이드 전 백업 검증

Leapp은 의존성 분석, 저장소 검증, 패키지 마이그레이션 및 업그레이

0 조회
Back to Blog

관련 글

더 보기 »

내 스킬

프로젝트를 위한 AI 지시문을 만들고, 설치하고, 관리하세요 — 코딩이 필요 없습니다. CREATE 이름을 정하고, 카테고리를 선택하고, 원하는 것을 설명하세요 — 마법사가 자동으로 구성합니다.