Багато хто бере участь у "перенесенні програми з одного сервера на інший" - насправді немає можливості відповісти на це всебічно для всіх випадків використання. ВИ можете відповісти на це досить вичерпно, якщо ви підходите до цього систематично:
- Складіть список всього необхідного вашій програмі.
- Веб-сервер?
- Сервер баз даних?
- Поштовий сервер?
- Мова сценаріїв (PHP, Ruby / Rails, Perl, щось інше)?
- Допоміжні програми (ImageMagick тощо)?
- Складіть список важливих елементів конфігурації.
- IP-адреса, мережева маска, шлюз тощо.
- DNS-сервери
- Елементи, що залежать від програми (тимчасові каталоги тощо)
- Візьміть списки (1) та (2) та напишіть контур міграції.
Сюди слід включити такі речі, як встановлення та налаштування будь-якого потрібного програмного забезпечення / пакунків, скидання та завантаження бази даних тощо.
- ТЕСТУВАННЯ МІГРАЦІЇ
Скопіюйте все так, як ви хотіли б, якщо сервер збирається жити, але не використовуйте його. Закінчіть його в ізольованій мережі, коли все закінчите і протестуйте все.
Якщо у вас є стандартна процедура тестування для вашої програми, слід запустити її на перенесеному сервері.
- Якщо все не пішло ідеально, перейдіть (3), оновіть (1) та (2), а потім перегляньте свій план.
- Коли тестові міграції проходять ідеально, виконайте фактичну міграцію.
Залежно від того, наскільки складний процес міграції, це може просто означати скидання та перезавантаження бази даних, або ви можете витерти машину та зробити все з нуля.
Коли ви закінчите, у вашому конкретному середовищі з’явиться контрольний список для вашої конкретної програми. Цей контрольний список, ймовірно, розвиватиметься під час розробки програми, але він може послужити відправною точкою через 3-5 років, коли вам доведеться знову мігрувати.
Інші речі, які слід враховувати, включають в себе управління конфігурацією ala Puppet або Chef.
(Якщо ви збираєтесь бути "систематичним адміністратором", вам слід розглянути їх, інакше передайте їх відповідальній особі / команді.)