Commerce 버전 업그레이드
Adobe Commerce 코드 베이스를 최신 버전으로 업그레이드할 수 있습니다. 환경을 업그레이드하기 전에 설치 안내서의 시스템 요구 사항에서 최신 소프트웨어 버전 요구 사항을 검토하십시오.
환경 유형(개발, 스테이징 또는 프로덕션)에 따라 업그레이드 작업에는 다음이 포함될 수 있습니다.
-
타사 확장을 지원되는 최신 버전으로 업그레이드하십시오.
-
대상 Adobe Commerce 버전과 계속 호환될 수 있도록
.magento/services.yaml파일을 MariaDB(MySQL), OpenSearch, RabbitMQ, Redis 또는 Valkey에 필요한 서비스 버전으로 업데이트하십시오.- 개발/통합/PR 분기의 경우 이러한 변경 사항은 환경 구성의 일부로 직접 사용됩니다.
- Pro Staging 및 프로덕션 환경의 경우 Adobe Commerce 지원에서 실제 서비스 설치 또는 업데이트를 수행하지만 배포 중에 해당 내용이 확인되므로
.magento/services.yaml을(를) 최신 상태, 전체 상태 및 유효한 상태로 유지해야 합니다.
-
후크 및 환경 변수에 대한 새로운 설정으로
.magento.app.yaml파일을 업데이트합니다.
Pro 서비스 지원
스테이징 또는 프로덕션에서 Pro 서비스 업그레이드를 요청하고 완료하려면 다음 단계를 따르십시오.
-
Staging및Production환경에서만 서비스를 설치하거나 업데이트하려면 Adobe Commerce 지원 티켓을 제출하세요.티켓에서 필요한 서비스 변경 사항을 지정하고 업데이트된
.magento.app.yaml및.magento/services.yaml파일을 포함한 다음 대상 PHP 버전을 확인합니다.PHP 버전, Composer 업데이트, 확장, 환경 설정 등은 셀프서비스 변경 사항입니다. Adobe에서 PHP 버전 호환성을 위해 New Relic 에이전트를 업데이트해야 할 수 있습니다. 응용 프로그램 구성에서 PHP 설정을 참조하십시오.
note important IMPORTANT 티켓 양식에서 Environment 필드를 선택할 때 Adobe의 환경 이름을 사용하십시오. 예를 들어 내부적으로 해당 환경 Dev을(를) 호출하는 경우에도 [스테이징]을 선택합니다. 설명에 내부 이름을 언급할 수 있지만 Environment 필드에는 Adobe의 명명법을 사용해야 합니다. -
Adobe의 두 가지 프로세스를 통해 업그레이드 일정을 확인: 요청한 날짜와 시간을 먼저 확인한 다음, 지원 팀에서 최종 확인을 위해 인프라 팀에 제출합니다.
생산 변경(Pro 전용)에는 주말을 제외하고 영업일 기준으로 최소 2일 이상의 통지가 필요합니다. 예를 들어 클라우드 인프라 팀은 이전 수요일까지 월요일 업그레이드를 승인해야 합니다. 최대 수요 동안 추가 리드 타임을 예상합니다. 지연을 방지하려면 초기 요청에 적어도 창 48시간 전에 응답합니다. 업그레이드는 최종 확인을 받을 때까지 예약된 것으로 간주되지 않습니다.
note NOTE 유지 관리 기간을 UTC로 제공합니다. 스테이징 업그레이드는 미리 예약되지 않으며 일반적으로 요청과 같은 날에 완료됩니다. RabbitMQ 업그레이드 후 환경을 다시 배포하여 메시지 큐를 다시 초기화합니다. -
프로덕션에서 예약하기 전에 스테이징 또는 통합 환경에서 업그레이드의 유효성을 검사하십시오.
서드파티 모듈, 사용자 지정 코드 또는 종속성 호환성으로 인해 발생한 문제는 서비스 업그레이드 후 재배포 중에 종종 발생합니다. 여러 서비스 업그레이드를 한 번에 하나씩 검증하려면 Valkey 또는 Redis, RabbitMQ, OpenSearch, MariaDB를 차례로 주문해야 합니다. 이 시퀀스는 필수 시퀀스가 아닙니다. 데이터베이스 업그레이드는 운영에 가장 큰 영향을 미치므로 가장 주의해야 합니다.
시간은 환경 및 관련 서비스에 따라 다르므로 Adobe은 프로덕션 유지 관리 기간의 정확한 기간을 사전에 보장하지 않습니다. 프로덕션 창을 계획할 때 스테이징 업그레이드가 실제 예상으로 소요되는 시간을 사용합니다.
-
Adobe 응용 프로그램 버전이 변경되지 않더라도 변경 사항이 적용되도록 Adobe Commerce이 서비스 업그레이드를 완료한 후 환경을 다시 배포합니다.
업그레이드에 OpenSearch가 포함된 경우 전체 색인 재지정도 계획합니다. Adobe은 서비스 업그레이드에 대해 무중단 다운타임을 보장할 수 없으므로 사이트를 다시 열기 전에 재배포하고, 필요한 경우 색인을 재지정하고, 상점 및 관리자의 유효성을 확인할 수 있는 유지 관리 기간을 계획하십시오.
업그레이드 중 고객 가용성
예약된 프로덕션 업그레이드 기간 동안 팀이나 구현 파트너의 담당자를 온라인으로 사용할 수 있어야 합니다. 트래픽이 적은 기간 동안 일정을 예약해도 업그레이드가 중단되지 않습니다. Adobe은 클라우드 인프라 업그레이드를 관리하지만 애플리케이션 동작, 통합, 사용자 지정 코드 또는 비즈니스 워크플로의 유효성을 검사할 수 없습니다.
사용 가능한 담당자는 다음 작업을 수행할 수 있어야 합니다.
- 업그레이드 중과 이후에 상점 및 중요한 비즈니스 트랜잭션을 모니터링.
- Adobe 지원 또는 클라우드 인프라 팀의 질문에 응답합니다.
- 통합, 확장, 사용자 지정, cron 작업, 큐 및 기타 고객 특정 기능이 예상대로 작동하는지 확인합니다.
- 체크아웃, 카탈로그 보기, 검색, 로그인 및 주문 처리와 같은 비즈니스 크리티컬 워크플로를 확인합니다.
- 업그레이드 컨텍스트와 로그를 계속 사용할 수 있는 동안 예기치 않은 동작이 즉시 보고됩니다.
유지 관리 모드
유지 관리 모드는 고객 가용성의 대체물이 아닙니다. 유지 관리 모드는 상점 액세스를 차단하지만 애플리케이션 서비스, 통합, 대기열, cron 작업, 체크아웃 또는 기타 고객별 기능을 검증하지는 않습니다.
계획된 작업에 유지 관리 모드가 필요한 경우 Adobe 지원 을 통해 사용을 조정하고 해당 업그레이드에 대한 지침을 따르십시오. 이후에, 작업 완료를 고려하기 전에 상점 및 주요 워크플로우가 정상적으로 작동하는지 확인하십시오.
구성 파일
클라우드 인프라 또는 애플리케이션에서 Adobe Commerce의 기본 구성 설정을 변경하려면 애플리케이션을 업그레이드하기 전에 프로젝트 구성 파일을 업데이트하십시오. 최신 기본값은 magento-cloud GitHub 저장소에서 찾을 수 있습니다.
composer.json
업그레이드하기 전에 항상 composer.json 파일의 종속성이 Adobe Commerce 버전과 호환되는지 확인하십시오.
Adobe Commerce 버전 2.4.4 이상의 composer.json 파일을 업데이트하려면 다음을 **.
-
config섹션에 다음allow-plugins을(를) 추가합니다.code language-json "config": { "allow-plugins": { "dealerdirect/phpcodesniffer-composer-installer": true, "laminas/laminas-dependency-plugin": true, "magento/*": true } }, -
require섹션에 다음 플러그인을 추가하십시오.code language-json "require": { "magento/composer-root-update-plugin": "^2.0.3" }, -
extra:component_paths섹션에 다음 구성 요소를 추가합니다.code language-json "extra": { "component_paths": { "tinymce/tinymce": "lib/web/tiny_mce_5" }, }, -
파일을 저장합니다. 아직 분기에 변경 사항을 커밋하거나 푸시하지 마십시오.
-
업그레이드 프로세스를 계속합니다.
환경 백업
Adobe은 업그레이드 전에 인스턴스의 백업을 만들 것을 권장합니다. 다음 단계를 사용하여 통합, 스테이징 및 프로덕션 환경을 백업합니다.
통합 환경 데이터베이스 및 코드를 백업하려면:
-
원격 데이터베이스의 로컬 백업을 만듭니다.
code language-bash magento-cloud db:dumpnote NOTE magento-cloud db:dump명령은 테이블을 잠그지 않고 데이터베이스를 백업할 수 있도록--single-transaction플래그를 사용하여 mysqldump 명령을 실행합니다. -
코드 및 미디어를 백업합니다.
code language-bash php bin/magento setup:backup --code [--media]소스 제어에 이미 많은 정적 파일이 있는 경우
[--media]을(를) 생략할 수도 있습니다.
배포 전에 스테이징 또는 프로덕션 환경 데이터베이스를 백업하려면:
애플리케이션 업그레이드
응용 프로그램을 업그레이드하기 전에 서비스 버전 정보에서 최신 소프트웨어 버전 요구 사항을 검토하십시오.
응용 프로그램 버전을 업그레이드하려면:
-
로컬 워크스테이션에서 프로젝트 디렉터리로 변경합니다.
-
대상 업그레이드 버전에 대해 버전 제약 조건을 설정하십시오. 이 단계는 대상 버전이 기존 제약 조건을 벗어나는 경우에만 필요합니다.
code language-bash composer require-commerce "magento/magento-cloud-metapackage":">=CURRENT_VERSION <NEXT_VERSION" --no-updatenote NOTE ece-tools패키지를 업데이트하려면 버전 제약 조건 구문을 사용해야 합니다.composer.json파일에서 업그레이드에 사용하는 응용 프로그램 템플릿 버전에 대한 버전 제약 조건을 찾을 수 있습니다. -
composer.json파일을 핵심 Commerce 업그레이드 버전으로 업데이트하십시오.code language-bash composer require-commerce magento/product-enterprise-edition 2.4.8 --no-update -
B2B를 사용하는 경우
composer.json파일을 Commerce용 지원되는 버전(으)로 업데이트하십시오.code language-bash composer require-commerce magento/extension-b2b 1.5.2 --no-update -
프로젝트 종속성을 업데이트합니다.
code language-bash composer update -
현재 적용된 패치를 검토합니다.
-
m2-hotfixes디렉터리에 패치가 설치되어 있는 경우 Adobe Commerce 지원 티켓을 제출하고 Adobe Commerce 지원 팀과 함께 새 버전에 적용할 수 있는 패치를 확인하십시오.m2-hotfixes디렉터리에서 적용할 수 없는 패치를 제거합니다. -
.magento.env.yaml파일에 [품질 패치]가 적용된 경우 새 버전에 계속 적용할 수 있는지 확인하십시오..magento.env.yaml파일의QUALITY_PATCHES섹션에서 적용할 수 없는 패치를 제거합니다.
메서드 1: 품질 패치 릴리스 정보에서 해당 버전을 확인
메서드 2: 사용 가능한 패치와 상태 보기
메서드 3: 패치 검색
-
-
코드 변경 사항을 추가, 커밋 및 푸시합니다.
code language-bash git add -Acode language-bash git commit -m "Upgrade"code language-bash git push origin <branch-name>Composer가 기본 패키지를 마샬링하는 방식 때문에 변경된 모든 파일을 소스 제어에 추가하려면
git add -A이(가) 필요합니다. 기본 패키지(magento/magento2-base및magento/magento2-ee-base)의composer install및composer update파일을 모두 패키지 루트로 마샬링합니다.작성기가 마샬링하는 파일은 새 버전의 Adobe Commerce에 속하므로 동일한 파일의 오래된 버전을 덮어씁니다. 현재 Adobe Commerce에서는 마샬링을 사용할 수 없으므로 마샬링된 파일을 소스 제어에 추가해야 합니다.
-
업그레이드를 완료하려면 배포를 기다리십시오.
-
SSH를 사용하여 로그인하고 버전을 확인하여 통합, 스테이징 또는 프로덕션 환경에서 업그레이드를 확인합니다.
code language-bash php bin/magento --version
확장 업그레이드
Marketplace 또는 기타 회사 사이트에서 타사 확장 및 모듈 페이지를 검토하고 클라우드 인프라에서 Adobe Commerce 및 Adobe Commerce에 대한 지원을 확인하십시오. 타사 확장 및 모듈을 업그레이드해야 하는 경우 Adobe에서는 확장이 비활성화된 새 통합 분기에서 작업하는 것이 좋습니다.
확장을 확인하고 업그레이드하려면:
-
로컬 워크스테이션에 분기를 만듭니다.
-
필요에 따라 확장을 비활성화합니다.
-
사용 가능한 경우 확장 업그레이드를 다운로드합니다.
-
타사 설명서에 따라 업그레이드를 설치합니다.
-
확장을 활성화하고 테스트합니다.
-
코드 변경 사항을 원격에 추가, 커밋 및 푸시합니다.
-
을 푸시하고 통합 환경에서 테스트합니다.
-
사전 프로덕션 환경에서 테스트하려면 스테이징 환경으로 푸시합니다.
Adobe에서는 사이트 실행 프로세스에서 업그레이드된 확장을 포함하여 프로덕션 환경을 before 업그레이드하는 것이 좋습니다.
업그레이드 문제 해결
업그레이드가 실패하면 상점 또는 관리 패널에 액세스할 수 없다는 오류 메시지가 브라우저에 표시됩니다.
There has been an error processing your request
Exception printing is disabled by default for security reasons.
Error log record number: <error-number>
오류를 해결하려면:
-
로컬 워크스테이션에서 프로젝트 디렉터리로 변경합니다.
-
SSH를 사용하여 원격 환경에 로그인합니다.
code language-bash magento-cloud ssh -
./app/var/report/<error number>파일을 엽니다. -
로그를 검사하고 문제의 원인을 확인합니다.
-
코드 변경 사항을 추가, 커밋 및 푸시합니다.
code language-bash git add -A && git commit -m "Fixed deployment failure" && git push origin <branch-name>