Давайте дружить в Телеграме: рассказываем про новые фичи, общаемся в комментах, прислушиваемся к вашим идеям Подписаться

Миграция из DigitalOcean в Timeweb Cloud

Роман Андреев
Роман Андреев
Технический писатель
17 ноября 2023 г.
80
5 минут чтения
Средний рейтинг статьи: 5

Западные облачные сервисы не всегда подходят для российских компаний и простых пользователей. Поэтому мы решили подготовить для вас небольшую инструкцию по миграции в Timeweb Cloud из популярного сервиса DigitalOcean (далее DO). Для этого нам сначала понадобится создать новое облако в Timeweb Cloud, а затем перенести туда данные из DO.

Шаг 1. Создание облачного сервера в Timeweb Cloud

Если вы уже зарегистрированы на нашей платформе, зайдите в панель управления, найдите в левом меню пункт «Облачные серверы» и в появившемся окне нажмите кнопку «Создать».

Image5

Последующие шаги будут зависеть от характеристик вашего сервера DO: нужно выбрать наиболее похожие параметры для того, чтобы перенос прошел без проблем (например, хватило бы дискового пространства и мощностей процессора). Вот что нам понадобится последовательно настроить:

  • Операционная система и ПО. Это может быть чистая ОС, система, уже настроенная под определенные цели, а также собственноручно созданный или загруженный образ. Для двух последних вариантов доступны вкладки «Маркетплейс» и «Мои образы».

Image4

  • Региональные настройки. Здесь можно выбрать страну, где будет расположен сервер, и регион.

Image10

  • Конфигурация. Здесь вы сможете настроить сервер, максимально приблизив его по характеристикам к тому, который у вас есть на DO. Для этого укажите количество ядер процессора, размер оперативной памяти и дискового пространства (с типом диска), а также необходимую скорость передачи данных.

Image12

  • Дополнительные услуги. Если вам нужна защита от DDoS или создание бэкапов, включить данные опции можно в этом пункте.

Image9

  • Доступ по SSH. Это нужно для безопасности. Загрузите имеющийся у вас SSH-ключ. Если не знаете, как его создать, вам поможет эта статья, в которой подробно рассказывается о настройке SSH-доступа на всех популярных ОС.

Image2

  • Тип сети. Выберите, будет ли ваша сеть общей (публичной) или приватной. Последняя нужна для изоляции ресурсов или для запрета к ним доступа из интернета.

Image3

  • Загрузка скриптов. Выполняется при запуске сервера. Подробнее можно прочитать тут.

Image7

  • Информация. Здесь можно задать свое имя сервера, если созданное автоматически не нравится, а также загрузить иконку, добавить комментарий и ассоциировать сервер с каким-либо проектом, если таковой у вас есть.

Image11

Теперь осталось нажать на кнопку «Заказать» и дождаться создания сервера. После этого понадобится записать пароль, который можно будет найти в меню созданного сервера. Этот пароль понадобится для рут-доступа по SSH. Также не забудьте записать IP-адрес нового сервера.

Шаг 2. Перенос данных с DigitalOcean

Для доступа к созданному серверу на Timeweb Cloud с локального компьютера понадобится открыть терминал и ввести там команду: 

ssh root@ip-адрес

Например, если IP-адрес удаленного сервера — 123.45.67.89, то команда будет выглядеть так:

ssh root@123.45.67.89

После этого вы будете подключены к созданному удаленному серверу на Timeweb Cloud с правами суперпользователя и сможете выполнять нужные команды через командную строку.

Добавим, что если вы работаете на компьютере под управлением Windows, то вам понадобится специальная утилита для подключения по SSH. Одно из самых удобных решений — PuTTY (начиная с Windows 10 1809 была добавлена возможность подключения через встроенный клиент OpenSSH — Windows PowerShell, поэтому PuTTY не понадобится). Пользоваться PuTTY проще простого, смотрите скриншот для нашего примера (IP, разумеется, нужно указать свой):

Image6

После этого вы попадете на сервер, где нужно будет ввести root в качестве логина и пароль сервера, который вы найдете в панели управления (см. выше).

Если же Вы подключаетесь через OpenSSH на Windows 10, запустите Windows PowerShell и введите там команду вида ssh user@server, заменив user на имя пользователя удаленного сервера, а server на его IP-адрес. После этого будет выполнено соединение, и вам предложат ввести пароль.

Теперь устанавливаем всё то ПО, которое размещено на вашем сервере DO, причем желательно тех же версий.

Перенос данных можно выполнить с использованием специальной утилиты командной строки: например, rsync. Вот как это выглядит:

Image8

Если у вас на сервере установлен Linux, то эта утилита там уже будет в программах по умолчанию. rsync — отличное решение для синхронизации файлов и директорий между локальной и удаленной машинами, а также между различными директориями на одной машине. Она позволяет копировать только измененные части файлов, что делает ее очень быстрой и эффективной в использовании для резервного копирования, обновления содержимого веб-сайтов, а также для синхронизации данных между серверами и переноса данных. Если же rsync по какой-то причине не установлена, это легко исправить, введя в терминале:

sudo apt install rsync

Теперь ставим на сервер еще одну полезную утилиту — Screen:

sudo apt install screen

Для Fedora и CentOS команда установки будет такой:

yum install screen 

Screen обеспечивает удобное переключение между терминалами с выполняемыми процессами без прерывания последних и помогает отслеживать процесс переноса данных.

Чтобы подключиться к Screen, находясь на сервере, в терминале введите команду screen. Эта команда запускает сессию Screen. Все дальнейшие команды Screen запускаются через Ctrl+a вместе с одновременным нажатием целевой клавиши. Теперь можно нажать c (Ctrl+a+c) для создания нового окна. Для горизонтального разделения окон используется команда S, а для вертикального — | Переключаться между ними можно через Tab. Для последующего отключения от сессии в Screen введите d (не забывайте одновременно нажимать Ctrl+a). А вот список всех остальных команд Screen, которые могут вам понадобиться:

Image1

Теперь в текущем окне вводим следующее:

rsync -avz --progress имя_пользователя@ip:/путь /TwC/путь

Замените имя_пользователя@ip:/путь на IP-адрес вашего сервера (или «дроплета», как он там называется) на DigitalOcean и на путь к папке на сервере DO, а вместо /TwC/path укажите путь к папке на созданном сервере Timeweb Cloud.

После переноса данных может потребоваться настроить корректные права доступа (инструкцию можно найти здесь). А еще вы сможете сначала протестировать проект на нашем тестовом домене и уже затем перенести его на рабочий.

Зарегистрируйтесь и начните пользоваться
сервисами Timeweb Cloud прямо сейчас

15 лет опыта
Сосредоточьтесь на своей работе: об остальном позаботимся мы
165 000 клиентов
Нам доверяют частные лица и компании, от небольших фирм до корпораций
Поддержка 24/7
100+ специалистов поддержки, готовых помочь в чате, тикете и по телефону