Mattermost 서버 다운그레이드
Entry, Professional, Enterprise, Enterprise Advanced 플랜에서 사용할 수 있습니다.
대부분의 경우 Mattermost 서버 업그레이드와 동일한 절차로 Mattermost 서버를 다운그레이드할 수 있습니다. 서버 바이너리는 Mattermost 서버 버전 아카이브 문서에서 확인할 수 있습니다.
중요
- 현재 설치된 버전보다 메이저 버전을 두 단계 이상 되돌리는 다운그레이드는 권장하지 않습니다.
- 잠재적인 문제를 미리 파악할 수 있도록 스테이징 환경에서 다운그레이드를 먼저 테스트할 것을 강력히 권장합니다.
- 다운그레이드하려는 버전과 플러그인 및 연동이 호환되는지 확인하세요.
다운그레이드 준비
Mattermost 서버를 다운그레이드하기 전에 다음 준비 단계를 수행할 것을 강력히 권장합니다.
- 데이터를 백업합니다. 데이터베이스와 Mattermost 애플리케이션 파일의 전체 백업을 확보하세요. 변경 사항을 되돌려야 할 경우를 대비해 반드시 필요합니다.
- 조직의 표준 데이터베이스 백업 절차에 따라 데이터베이스를 백업합니다.
- 애플리케이션을 아카이브 폴더(예:
mattermost-back-YYYY-MM-DD-HH-mm)로 복사해 백업합니다. Mattermost 설정 파일과 그 밖에 필요한 애플리케이션 파일을 반드시 함께 복사하세요.
- 다운그레이드하려는 버전의 Mattermost 변경 로그를 꼼꼼히 검토해 발생할 수 있는 문제나 비호환성을 파악합니다.
mattermost db version --all명령으로 현재 데이터베이스의 스키마 버전을 확인합니다. 대상 스키마를 확실히 모르는 경우, 공개 GitHub 저장소에서 대상 스키마 버전(즉, 적용된 마이그레이션)을 확인할 수 있습니다(원하는 버전의 태그를 선택하세요).
다운그레이드 수행
- 다운그레이드 과정에서 데이터베이스에 데이터가 기록되지 않도록 Mattermost 서비스를 중지합니다.
- 버전 간에 데이터베이스 스키마가 변경되었다면 스키마도 다운그레이드해야 합니다. 최신
mattermost바이너리를 사용해mattermost db downgrade명령으로 다운그레이드를 수행합니다. 예:mattermost db downgrade 128,127,126
팁
Mattermost를 업그레이드할 때 --save-plan 옵션을 사용했다면, 다운그레이드 변경 사항을 적용 전에 검토할 수 있습니다. 이 계획 파일에는 정방향과 역방향 SQL 스크립트가 모두 들어 있습니다. 이 옵션을 사용하면 다운그레이드할 마이그레이션을 일일이 지정하지 않아도 되며, 더 낮은 버전의 Mattermost로도 다운그레이드를 수행할 수 있습니다. 예: mattermost db downgrade migration_plan_128_127.json.
- 버전 간에 설정 항목이 달라졌을 수 있습니다. 다운그레이드 대상 버전이 기대하고 지원하는 형태에 맞도록
config.json파일의 설정을 되돌리세요.
다운그레이드 후
현재 Mattermost 애플리케이션 바이너리를 다운그레이드하려는 버전의 바이너리로 교체합니다. 반드시 대상 버전의 바이너리를 사용하세요. 롤백할 마이그레이션의 다운그레이드 SQL은 최신 Mattermost 바이너리에 들어 있습니다. 따라서 다운그레이드 수행에는 최신 바이너리를 사용하고, 그 뒤부터 다운그레이드하려는 버전의 애플리케이션 바이너리를 사용하기 시작합니다.
- 다운그레이드를 마친 후 Mattermost 서버를 다시 시작합니다.
- 로그를 확인하고 애플리케이션을 테스트해 모든 기능이 정상 동작하는지 점검합니다.
- 다운그레이드 사실과 사용자가 겪을 수 있는 변화를 사용자에게 안내합니다.