마이그레이션 가이드
Entry, Professional, Enterprise, Enterprise Advanced 플랜에서 사용할 수 있습니다.
마이그레이션을 통해 Mattermost 배포나 데이터를 한 환경에서 다른 환경으로 최소한의 중단만으로 옮길 수 있습니다. Mattermost 서버를 새 인프라로 전환하든, 데이터베이스를 재구성하든, Slack 같은 다른 협업 플랫폼에서 이전하든, 이 가이드는 지원되는 각 경로에 대한 단계별 지침을 제공합니다. 아래 섹션에서 필요에 맞는 시나리오를 빠르게 찾아 권장 절차를 따르면 마이그레이션을 매끄럽게 진행할 수 있습니다.
조직의 보안 협업 요구에 맞춘 솔루션을 살펴보려면 라이브 데모를 예약하거나 Mattermost 전문가와 상담하세요. 또는 1시간 미리보기로 실제 샌드박스 환경에 바로 접속해 Mattermost를 직접 사용해 볼 수도 있습니다.
Mattermost를 새 서버로 이전
다음 지침은 Mattermost 데이터베이스와 config.json 파일을 백업·복원하는 방식으로 Mattermost를 한 서버에서 다른 서버로 마이그레이션합니다. 이 지침에서 SOURCE는 시스템을 마이그레이션할 출발지 Mattermost 서버를, DESTINATION은 시스템을 마이그레이션할 목적지 Mattermost 서버를 가리킵니다.
- SOURCE Mattermost 서버를 백업합니다. 백업 및 재해 복구 문서를 참고하세요.
- SOURCE Mattermost 서버를 최신 메이저 빌드 버전으로 업그레이드합니다. Mattermost 서버 업그레이드 문서를 참고하세요.
Mattermost 서버의 최신 메이저 빌드를
DESTINATION으로 설치합니다.- 새 인스턴스가 올바르게 구성되고 테스트되었는지 확인하세요.
SOURCE와DESTINATION배포의 데이터베이스 종류(MySQL 또는 PostgreSQL)와 버전이 일치해야 합니다. sudo stop mattermost로DESTINATION서버를 중지한 다음, 데이터베이스와config.json파일을 백업하세요.
- 새 인스턴스가 올바르게 구성되고 테스트되었는지 확인하세요.
- 데이터베이스를
SOURCE에서DESTINATION으로 마이그레이션합니다.SOURCEMattermost 서버의 데이터베이스를 백업한 뒤,DESTINATION서버가 연결된 데이터베이스를 대체하도록 복원합니다. config.json을SOURCE에서DESTINATION으로 마이그레이션합니다.SOURCE배포의config.json파일을DESTINATION으로 복사합니다.로컬 스토리지를 사용한다면(
FileSettings.DriverName이local로 설정된 경우)./data를SOURCE에서DESTINATION으로 마이그레이션합니다.SOURCE배포의./data디렉터리를DESTINATION으로 복사하세요../data가 아닌 다른 디렉터리를 사용한다면 해당 디렉터리를 복사하세요.
sudo start mattermost를 실행해DESTINATION배포를 시작합니다. 그런 다음 System Console(시스템 콘솔)로 이동해 사소한 설정을 하나 변경하고 저장하면, 새로 추가된 설정에 기본값이 적용되면서config.json스키마가 최신 버전으로 업그레이드됩니다.- 기존 팀의 URL로 접속해 시스템이 정상 동작하는지 테스트합니다. 업그레이드 내용을 반영하려면 Mattermost 브라우저 페이지를 새로 고쳐야 할 수 있습니다.
마이그레이션을 완료하고 검증한 뒤에는 선택적으로 업그레이드 가이드를 참고해 Mattermost Team Edition을 Enterprise Edition으로 업그레이드할 수 있습니다.
Slack에서 이전
Slack에서 Mattermost로 마이그레이션하는 자세한 방법은 Slack에서 마이그레이션 문서를 참고하세요.
Rocket.Chat에서 이전
Rocket.Chat에서 Mattermost로 마이그레이션하는 자세한 방법은 Rocket.Chat에서 마이그레이션 문서를 참고하세요.
Jabber에서 이전
BrightScout는 미국의 주요 연방 기관이 Jabber에서 Mattermost로 신속하게 마이그레이션하도록 지원했으며, 자사의 ETL(Extract, Transform and Load) 도구를 https://github.com/Brightscout/mattermost-etl 에 오픈 소스로 공개했습니다. 자세한 내용은 온라인에 공개된 사례 연구에서 확인하세요.
Pidgin에서 이전
서로 다른 백엔드와 함께 Pidgin 클라이언트를 사용해 소통하는 경우도 있습니다. Mattermost 백엔드로 Pidgin을 계속 사용하려면, BrightScout가 만든 Mattermost ETL 도구로 기존 백엔드의 데이터를 Mattermost로 마이그레이션하는 방법을 고려해 보세요.
그런 다음 Pidgin-Mattermost 플러그인(최종 사용자 PC용 설치 프로그램 포함)을 사용하면 기존 Pidgin 사용자를 계속 지원하면서 웹, 모바일, PC에서 완전히 새로운 Mattermost 경험을 제공할 수 있습니다.
Bitnami에서 이전
Bitnami는 MySQL을 사용하며, Mattermost 데이터베이스 테이블 이름을 모두 소문자로 바꿉니다. 예를 들어 Bitnami가 아닌 설치 환경에서 Users 테이블의 이름은 Users이지만, Bitnami에서는 users(소문자 u)입니다. 따라서 Bitnami에서 Bitnami가 아닌 설치 환경으로 데이터를 마이그레이션할 때는 MySQL이 소문자 테이블 모드로 시작하도록 MySQL 시작 스크립트를 수정해야 합니다.
MySQL 시작 명령에 --lower-case-table-names=1 스위치를 추가하면 스크립트를 수정할 수 있습니다. 시작 스크립트의 위치는 일반적으로 MySQL을 어떻게 설치했는지(운영 체제의 패키지 관리자를 사용했는지, 수동으로 설치했는지)에 따라 달라집니다. 데이터를 마이그레이션하기 전에 시작 스크립트를 수정해야 합니다.
MySQL 테이블 이름의 대소문자와 --lower-case-table-names 스위치에 대한 자세한 내용은 MySQL 문서의 Identifier Case Sensitivity 항목을 참고하세요.
맞춤 제작 메시징 솔루션에서 이전
Mattermost는 맞춤 제작 솔루션의 유연성과 혁신성을 충족하고 뛰어넘는, 오픈 소스 플랫폼 기반의 안정적이고 엔터프라이즈급이며 상용 지원을 받는 솔루션으로서 IT·DevOps 팀이 기존 맞춤 제작 솔루션을 대체할 때 자주 선택합니다.
맞춤 제작 메신저에서 Mattermost로 마이그레이션하는 일은 쉽지 않을 수 있습니다. 맞춤 제작 솔루션은 업그레이드와 유지 관리가 어렵기 때문에 데이터 저장 형식을 예측하기 어렵고, 특정 레거시 릴리스를 둘러싼 커뮤니티도 작습니다.
맞춤 제작 메신저의 데이터가 중요하다면 다음을 고려하세요.
- Mattermost 대량 적재 도구: Mattermost 대량 적재 도구를 사용해 맞춤 제작 시스템에서 Mattermost로 ETL을 수행합니다.
- BrightScout의 Mattermost ETL 프레임워크: 위에서 언급한 대량 적재 도구에 연결할 어댑터를 맞춤 구성하려면 BrightScout의 Mattermost ETL 프레임워크를 고려해 보세요.
- 레거시 Slack 가져오기: 최근에야 Slack에서 맞춤 제작 도구로 전환했다면, 폭넓게 지원되는 Slack 가져오기 기능을 활용해 예전 Slack 인스턴스의 데이터와 사용자를 Mattermost로 직접 가져오는 방법을 고려해 보세요.
- Slack으로 내보낸 뒤 Mattermost로 가져오기: Flowdock, Campfire, Chatwork, Hall 또는 CSV 파일을 Slack으로 내보낸 다음, Slack 내보내기 파일로 다시 내보내 그 파일을 Mattermost로 가져옵니다.
맞춤 제작 메신저의 데이터가 중요하지 않다면 다음을 고려하세요.
- 병행 운영: 워크플로와 협업의 대부분이 Mattermost로 옮겨갈 때까지 기존 맞춤 제작 시스템과 Mattermost를 병행해 운영합니다.
- 전면 전환: 두 시스템을 일정 기간 병행 운영한 뒤 Mattermost로의 "전면 전환"을 공지합니다. 맞춤 제작 제품의 보안 우려나 수명 종료가 임박한 제품 때문에 이 방식을 택하는 경우가 많습니다.