주:

Leapp을 사용하여 Oracle Linux 업그레이드

소개

Leapp 유틸리티는 운영 체제 및 응용 프로그램을 업데이트 및 업그레이드하기 위한 프레임워크입니다. 유틸리티의 구성 요소 패키지를 사용하면 소프트웨어를 업데이트하기 위해 프로파일에 다른 워크플로우를 만들 수 있습니다.

Leapp 작업은 다음 두 단계로 구성됩니다.

Leapp을 사용하여 Oracle Linux 7 Oracle Cloud Infrastructure 인스턴스 및 온프레미스 시스템의 Oracle Linux 7을 업그레이드할 수 있습니다.

이 랩에서는 현재 릴리스 Oracle Linux 7 Oracle Cloud Infrastructure 인스턴스를 Oracle Linux 8로 업그레이드하는 방법을 안내합니다.

다른 운영체제나 버전에서는 Leapp가 지원되지 않습니다.

주: 운용 환경에서 Leapp를 사용하기 전에 테스트 환경에서 Leapp 업그레이드 프로세스를 익히는 것이 좋습니다. 따라서 프로세스, 보고서, 발생 가능한 보안 또는 호환성 문제에 대한 테스트를 더 잘 이해할 수 있습니다.

목표

이 실습에서는 다음 내용을 배웁니다.

필요 조건

주: Performing System Upgrades with Leapp 설명서 링크에서 Leapp로 업그레이드하기 전에 수행해야 하는 전체 시스템 및 커널 필요 조건 및 사전 업그레이드 검사 목록을 볼 수 있습니다.

랩 환경 설정

무료 랩 환경을 사용하는 경우 이 링크를 사용하여 Oracle Linux Lab Basics에서 SSH 접속 및 기타 사용 지침을 설정하는 방법을 확인하십시오.

다음 절에서는 데스크탑의 터미널에서 인스턴스에 SSH 접속을 설정하는 방법을 보여줍니다.

업그레이드하기 전에

이 연습에서 사용되는 Instance에는 환경과 관련된 미리 구성된 설정(예: proxy 설정)이 있습니다.

일반적으로 수행되는 일부 사전 업그레이드 검사는 이 환경에서 필요하지 않으므로 건너뜁니다.

주: 이 실습에서 사용되는 Leapp 업그레이드 프로세스를 보여주는 무료 비디오를 시청할 수 있습니다. 이 실습 끝부분의 More Information 섹션에서 링크를 찾을 수 있습니다.

  1. 랩 시스템 인스턴스에 대한 SSH 접속을 설정합니다.

    Oracle Linux Lab Basics 링크는 SSH 연결 및 기타 사용 지침을 설정하는 방법을 보여줍니다.

  2. 시스템 로케일이 en_US.UTF-8로 설정되어 있는지 확인합니다.

    cat /etc/locale.conf
    

    로케일이 올바르게 설정되지 않은 경우 sudo localectl set-locale LANG=en_US.UTF-8 명령을 사용하여 구성합니다.

최신 패키지로 업데이트

Yum을 사용하여 모든 시스템 패키지를 최신 버전으로 업데이트합니다.

sudo yum update -y

업데이트가 완료되면 몇 분 정도 걸립니다. 시스템을 재부트합니다.

sudo reboot

재부팅이 완료될 때까지 몇 분간 기다린 후 인스턴스에 SSH 접속을 다시 접속합니다.

연결이 실패하면 잠시 기다렸다가 다시 시도하십시오.

Leapp 유틸리티 설치

Leapp 유틸리티 및 해당 지원 저장소를 설치합니다.

sudo yum install -y leapp --enablerepo=ol7_leapp,ol7_latest

업그레이드 전 검사 실행

업그레이드 전 프로세스는 시스템이 성공적인 업그레이드를 위해 준비되었는지 여부를 평가합니다. 업그레이드 프로세스에 영향을 주거나 이를 방지할 수 있는 잠재적 문제를 식별합니다.

언제든지 사전 업그레이드 검사를 사용하여 시스템 상태를 평가하고 충돌이 발생할 수 있는 위치를 식별할 수 있습니다. 시스템을 변경하지는 않지만 시스템, 구성 및 잠재적 업그레이드 문제에 대한 정보를 포함하는 보고서 파일 및 디버그 로그를 만듭니다.

  1. leapp preupgrade 명령을 실행하여 사전 업그레이드 프로세스를 시작합니다.

    이 랩 시스템은 클라우드 인스턴스이므로 switch --oci 명령을 사용하십시오.

    sudo leapp preupgrade --oci
    

    시스템이 비클라우드 시스템인 경우 스위치 --oraclelinux가 사용됩니다.

    --oci--oraclelinux는 클라우드 또는 비클라우드 시스템과 관련된 저장소 및 구성 정보를 사전 설정하는 데 사용되는 편의 스위치입니다.

    • 출력 예:
    ============================================================  
                          UPGRADE INHIBITED                     
    ============================================================  
                                                                    
    Upgrade has been inhibited due to the following problems:  
        1. Inhibitor: Missing required answers in the answer file  
    Consult the pre-upgrade report for details and possible remediation.  
                                                                    
    ============================================================  
                       UPGRADE INHIBITED                        
    ============================================================  
                                                                    
                                                                    
    Debug output written to /var/log/leapp/leapp-preupgrade.log  
                                                                
    ============================================================  
                             REPORT                             
    ============================================================  
                                                                   
    A report has been generated at /var/log/leapp/leapp-report.json
    A report has been generated at /var/log/leapp/leapp-report.txt
                                                                  
    ============================================================
                         END OF REPORT                          
    ============================================================  
                                                                  
    Answerfile has been generated at /var/log/leapp/answerfile  
    

    leapp-report.txt 파일과 answerfile이 만들어지고 디버그 정보가 leapp-preupgrade.log 로그 파일에 저장됩니다.

    이 연습 환경에서 화면 결과는 업그레이드를 방해하는 하나의 문제를 식별합니다. 파일에 다른 문제가 발생하지 않을 수도 있습니다.

  2. leapp-report.txt 파일을 검사합니다.

    sudo cat /var/log/leapp/leapp-report.txt
    

    Risk Factor: high (inhibitor)로 표시된 높은 위험 항목을 식별합니다. 이렇게 하면 업그레이드가 완료되지 않습니다.

    이 보고서는 문제의 요약을 제공하며 해결 방법을 제공합니다.

    이 보고서는 업그레이드 여부에 관계없이 시스템에 구성된 내용, 존재할 수 있는 충돌에 대한 적절한 보기를 제공하는 유용한 검사 도구입니다.

  3. answerfile을 검사합니다.

    sudo cat /var/log/leapp/answerfile
    
    • 출력 예:
    [remove_pam_pkcs11_module_check]  
    # Title:              None  
    # Reason:             Confirmation  
    # =================== remove_pam_pkcs11_module_check.confirm ==================  
    # Label:              Disable pam_pkcs11 module in PAM configuration? If no, the upgrade process will be interrupted.  
    # Description:        PAM module pam_pkcs11 is no longer available in OL-8 since it was replaced by SSSD.  
    # Type:               bool  
    # Default:            None  
    # Available choices: True/False  
    # Unanswered question. Uncomment the following line with your answer  
    # confirm =  
    

    Available Choices: True/False 섹션은 발견된 문제를 해결하기 위해 answerfile을 수정하는 방법을 알려줍니다.

    sudo leapp answer 명령을 사용하여 True 답변을 [remove_pam_pkcs11_module_check] PAM 모듈 항목에 제공합니다.

    sudo leapp answer --section remove_pam_pkcs11_module_check.confirm=True
    

    주: 원하는 경우 sudo vi /var/log/leapp/answerfile 명령을 사용하여 answerfile을 편집하고 True 설정을 삽입할 수도 있습니다.

  4. answerfile이 수정되었는지 확인합니다.

    sudo cat /var/log/leapp/answerfile
    
    • 출력 예:
    [remove_pam_pkcs11_module_check]  
    confirm = True  
    

    answerfile의 모든 항목과 leapp-report.txt 파일의 위험성이 높은 Risk Factor: high (inhibitor) 항목을 해결해야 합니다.

    언제든지 사전 업그레이드 명령을 실행하여 보고서 파일을 생성하고 필요한 항목이 처리되도록 할 수 있습니다.

시스템 업그레이드

업그레이드 후와 비교하려면 시스템의 현재 OS 및 커널 버전을 확인합니다.

  1. 시스템에서 실행 중인 Oracle Linux 버전을 확인합니다.

    sudo cat /etc/oracle-release
    
  2. 사용된 커널 버전을 확인합니다.

    uname -r
    
  3. 업그레이드 프로세스를 실행합니다.

    sudo leapp upgrade --oci
    

    주: 랩 시스템은 클라우드 인스턴스이므로 명령 스위치 --oci가 다시 사용됩니다.

    업그레이드 프로세스는 10분 정도 걸리며 완료되면 명령 프롬프트로 돌아갑니다.

    • 출력 예:
    The downloaded packages were saved in cache until the next successful  
    transaction.  
    You can remove cached packages by executing 'dnf clean packages'.  
    ==> Processing phase 'InterimPreparation'  
    ====> * efi_interim_fix  
           Adjust EFI boot entry for first reboot  
    ====> * initram_disk_generator  
           Creates the upgrade initram disk  
    ====> * add_upgrade_boot_entry  
           Add new boot entry for Leapp provided initramfs.  
    A reboot is required to continue. Please reboot your system.  
      
    Debug output written to /var/log/leapp/leapp-upgrade.log  
      
    ============================================================  
                              REPORT
    ============================================================  
      
    A report has been generated at /var/log/leapp/leapp-report.json  
    A report has been generated at /var/log/leapp/leapp-report.txt  
      
    ============================================================  
                          END OF REPORT  
    ============================================================  
      
    Answerfile has been generated at /var/log/leapp/answerfile  
    

    또한 업그레이드 프로세스는 answerfile, leapp-report.txt를 업데이트하고 leapp-upgrade.log 로그 파일을 만듭니다.

    주: leapp-report.txt 파일에서 answerfile 항목 및 Risk Factor: high (inhibitor) 항목을 해결하지 않은 경우 프로세스가 다시 명령줄로 종료되고 발생한 문제를 알립니다.

  4. 업그레이드가 완료되면 시스템을 재부트합니다.

    sudo reboot
    

    재부트하면 SSH 연결이 끊깁니다. 부트 프로세스 중 Leapp 프로세스는 패키지를 자동으로 업그레이드합니다.

    업그레이드 작업에는 여러 자동 재부트도 포함됩니다. 모든 재부트가 완료될 때까지 SSH 세션을 다시 연결할 수 없습니다.

    15분 정도 기다린 후 SSH 세션을 시스템에 다시 연결합니다. 연결이 실패하면 몇 분 기다린 후 다시 시도하십시오.

업그레이드를 확인합니다

시스템에 현재 사용된 OS 버전과 커널을 사전 업그레이드 버전과 비교합니다.

  1. 실행 중인 Oracle Linux 버전을 확인합니다.

    sudo cat /etc/oracle-release
    
  2. 사용된 커널 버전을 확인합니다.

    uname -r
    

    시스템이 Oracle Linux 8.5를 실행 중이고 사용된 커널에 el8가 표시되므로 업그레이드가 완료됩니다.

추가 정보

다른 관련 리소스 보기:

추가 학습 자원

docs.oracle.com/learn에서 다른 실습을 살펴보거나 Oracle Learning YouTube 채널에서 보다 무료 학습 컨텐츠에 접근할 수 있습니다. 또한 education.oracle.com/learning-explorer을 방문하여 Oracle Learning Explorer가 됩니다.

제품 설명서는 Oracle Help Center를 참조하십시오.