서버 마이그레이션 : 가장 효율적인 방법


10

우리 사이트 중 하나를 서버 (두 개의 다른 호스트) 사이에서 마이그레이션하는 작업을 수행했습니다. 두 환경 모두 리눅스입니다.

이 사이트는 비디오를 스트리밍하므로 서버는 현재 미디어 파일 (이미지 및 비디오)로 채워져 있습니다. 내 생각은 rsycnc를 사용하여 모든 것을 전송한다는 것이었지만 가능한 한 효율적이고 최대한 빨리 모든 것을 수행하고 싶습니다. 프로세스 속도를 높이는 방법이나 rsync가 올바른 선택인지에 대한 조언을 구할 수 있다고 생각했습니다.

미리 감사드립니다. sysadmin에 대한 제한된 지식에 대한 사과 ...

편집 : 우리는 기본 램프 스택 (centos)에서 실행 중이며 랙 공간에서 빨간 모자로 이동합니다.


1
이 문맥에서 "효율적"을 정의하십시오. 빠르고 안정적이며 강력합니까? 그리고 아니, 당신은 모든 것을 가질 수 없습니다.
— John Gardeniers

1
rsync는 데이터를 마이그레이션하기위한 최선의 선택입니다. 다른 더 나은 옵션을 가진 다른 사람들이 언급 한 구성 및 가능한 데이터베이스 등이 여전히 있습니다.
— fukawi2

답변:


12

"한 서버에서 다른 서버로 응용 프로그램 마이그레이션"에는 많은 관련이 있습니다. 모든 사용 사례에 대해 포괄적으로 답변 할 수있는 방법은 없습니다. 당신은 당신이 체계적으로 접근하는 경우, 비록 당신의 설정에 꽤 포괄적으로 응답 할 수 있습니다 :

  1. 응용 프로그램에 필요한 모든 목록을 작성하십시오.
    • 웹 서버?
    • 데이터베이스 서버?
    • 메일 서버?
    • 스크립팅 언어 (PHP, Ruby / Rails, Perl 등)?
    • 보조 프로그램 (ImageMagick 등)?
  2. 중요한 구성 항목 목록을 작성하십시오.
    • IP 주소, 넷 마스크, 게이트웨이 등
    • DNS 서버
    • 응용 프로그램 별 항목 (임시 디렉토리 등)
  3. (1)과 (2)에서 목록을 가져 와서 마이그레이션 개요를 작성하십시오.
    여기에는 필요한 소프트웨어 / 패키지 설치 및 구성, 데이터베이스 덤프 및로드 등이 포함되어야합니다.
  4. 마이그레이션 테스트
    서버가 시작될 때와 똑같이 모든 것을 복사하지만 서버를 활성화하지는 마십시오. 완료되면 격리 된 네트워크에 연결하고 모든 것을 테스트하십시오.
    애플리케이션에 대한 표준 테스트 절차가있는 경우 마이그레이션 된 서버에서 실행해야합니다.
  5. 모든 것이 완벽하게 진행되지 않으면 (3)으로 이동하여 (1) 및 (2)를 업데이트 한 다음 계획을 수정하십시오.
  6. 테스트 마이그레이션이 완벽하게 진행되면 실제 마이그레이션을 수행하십시오.
    마이그레이션 프로세스가 얼마나 복잡한 지에 따라 이는 데이터베이스를 삭제하고 다시로드하는 것을 의미하거나 컴퓨터를 지우고 처음부터 다시 수행 할 수 있습니다.

완료되면 특정 환경에서 특정 응용 프로그램에 대한 점검 목록이 표시됩니다. 이 체크리스트는 앱을 개발함에 따라 발전 할 것입니다. 그러나 다시 마이그레이션해야 할 때 3-5 년 안에 시작점이 될 수 있습니다.

고려해야 할 다른 사항으로는 Puppet 또는 Chef 구성 관리 구현이 있습니다.
( "sysadmin"이 되려면이를 고려해야하고, 그렇지 않으면 담당자 / 팀에게 전달해야합니다.)


5

글쎄, 당신은 서버 구성과 서버 내용을 다루고 있으며, 같은 기술이 두 가지 모두에서 작동하지는 않을 것입니다.

데이터베이스가 있습니까? 그렇다면 그 역시 움직여야합니다. Rsync는 정적 콘텐츠에 적합합니다. 한 번만 실행하여 데이터 목록을 이동 한 다음 몇 시간마다 말로 전환 할 때까지 동기화 상태를 유지하십시오. 마이그레이션하기 전에 rsync cron을 비활성화하십시오!

설정과 관련하여, 우리는 당신이 무엇을 실행하고 있는지 전혀 알지 못하므로 실제로 권장 사항을 줄 수는 없습니다.


감사! 현재 CentOS에서 WHM을 사용하는 Apache / PHP / MySQL 스택 (꽤 표준)을 사용하고 있습니다. 우리는 Rackspace에서 Redhat Linux로 모든 것을 옮기고 있습니다.
— 유령 코드
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.