Миграция из Google Cloud в Selectel - Академия Selectel

Миграция из Google Cloud в Selectel

Рассматриваем, как мигрировать из Google Cloud Platform в Selectel: как создать образ виртуальной машины и из него облачный сервер.

Читайте также:

→ Как мигрировать из Google Cloud Platform

→ Как мигрировать из DigitalOcean

Введение

В инструкции мы расскажем, как перенести виртуальную машину из Google Cloud Platform в Selectel. Покажем, как создать образ загрузочного диска виртуальной машины на стороне Google Cloud Platform и развернуть из него облачный сервер в Selectel.

Мы рассмотрим перенос виртуальной машины Google Cloud Platform с сетевым диском размером 10 ГБ и плавающим IP-адресом.

Подготовка к работе

Убедитесь, что на виртуальной машине на стороне Google Cloud Platform установлен и известен пароль от root. Если вы не сможете подключиться к машине по SSH-ключу, то можно будет воспользоваться консолью в панели управления.

Установите на виртуальной машине cloud-init:


      apt update

      apt install cloud-init

Экспорт виртуальной машины

Необходимо создать образ загрузочного диска ВМ и экспортировать его. Все действия производятся в консоли Google Cloud Platform.

Отключите ВМ

Google Cloud Platform не гарантирует консистентность данных при создании образа работающей виртуальной машины, поэтому нужно ее отключить. Для этого откройте страницу Virtual Machines ⟶ VM instances, выберите ВМ и нажмите Stop.

Создайте образ диска

Откройте страницу Storage⟶Disks и выберите загрузочный диск ВМ. В меню Operations выберите Createimage:

 

Экспортируйте образ

Откройте страницу Storage⟶Images и выберите только что созданный образ. Откройте страницу образа и нажмите Export:

Экспорт возможен только при включенном Cloud Build API. Обратите внимание, что это платная функция — в дальнейшем вы сможете ее отключить. Нажмите Enable Cloud Build API:

Выберите Export format (формат образа). Selectel поддерживает форматы ami, ari, aki, iso, raw, qcow2, vdi, vhd, vhdx и vmdk. В примере мы выбрали qcow2. Нажмите Browse и выберите Cloud Storage — хранилище, в которое будет выгружен образ:

Если вы ранее не создавали Cloud Storage bucket, то создайте его на этом этапе. Для этого нажмите Create new bucket и создайте multi-regional bucket. Все остальные настройки оставьте по умолчанию:

Затем выберите созданное хранилище для экспорта образа:

Скачайте образ из хранилища

Откройте страницу Resources⟶Storage:

Скачайте образ:

Импорт образа

Из экспортированного образа необходимо создать облачный сервер в Selectel.

Загрузите образ

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

Откройте раздел «Образы» и нажмите «Создать образ». В качестве источника образа выберите «Файл» и загрузите экспортированный образ из Google Cloud Platform:

Подробная инструкция по загрузке образа — в базе знаний.

Создайте облачный сервер

Откройте раздел «Серверы», нажмите «Создать сервер». 

При создании обязательно:

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

После настройки нажмите «Создать сервер».

Подробная инструкция по созданию сервера — в базе знаний.

Настройка облачного сервера

После создания облачный сервер нужно настроить.

Подключитесь к серверу

Сначала подключитесь к серверу:

  • откройте консоль в панели управления (страница сервера, вкладка «Консоль»);
  • или подключитесь по SSH с локальной машины. Для этого введите ssh root@server_ip (server_ip — это IP-адрес облачного сервера, его можно посмотреть на странице сервера, вкладка «Порты»).

Отредактируйте /etc/hosts

  • Откройте файл /etc/hosts, например с помощью nano:

      nano /etc/hosts
  • Удалите записи, относящиеся к Google Cloud Platform.
  • Добавьте новый хостнейм в строку:

      127.0.0.1 localhost hostname

Вместо hostname укажите ваш хостнейм.

Отредактируйте /etc/resolv.conf 

Откройте файл /etc/resolv.conf:


      nano /etc/resolv.conf

Укажите в файле DNS-серверы:


      nameserver 188.93.16.19
nameserver 188.93.17.19

Отредактируйте /etc/apt/sources.list

  • Откройте файл со списком репозиториев:

      sudo nano /etc/apt/sources.list
  • Удалите репозитории, относящиеся к Google Cloud Platform.
  • Добавьте репозитории Selectel: 

      deb http://mirror.selectel.ru/ubuntu focal main restricted
deb-src http://mirror.selectel.ru/ubuntu focal main restricted
deb http://mirror.selectel.ru/ubuntu focal-updates main restricted
deb-src http://mirror.selectel.ru/ubuntu focal-updates main restricted
deb http://mirror.selectel.ru/ubuntu focal universe
deb-src http://mirror.selectel.ru/ubuntu focal universe
deb http://mirror.selectel.ru/ubuntu focal-updates universe
deb-src http://mirror.selectel.ru/ubuntu focal-updates universe
deb http://mirror.selectel.ru/ubuntu focal multiverse
deb-src http://mirror.selectel.ru/ubuntu focal multiverse
deb http://mirror.selectel.ru/ubuntu focal-updates multiverse
deb-src http://mirror.selectel.ru/ubuntu focal-updates multiverse
deb http://mirror.selectel.ru/ubuntu focal-backports main restricted universe multiverse
deb-src http://mirror.selectel.ru/ubuntu focal-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu focal-security main restricted
deb-src http://security.ubuntu.com/ubuntu focal-security main restricted
deb http://security.ubuntu.com/ubuntu focal-security universe
deb-src http://security.ubuntu.com/ubuntu focal-security universe
deb http://security.ubuntu.com/ubuntu focal-security multiverse
deb-src http://security.ubuntu.com/ubuntu focal-security multiverse
deb http://repo.os.selectel.org focal main

Перезагрузите облачный сервер

В разделе «Серверы» выберите нужный и в меню сервера выберите «Перезагрузка по питанию». 

Заключение

Мы рассмотрели, как мигрировать из Google Cloud Platform в Selectel — создали образ виртуальной машины, создали из него облачный сервер и настроили его.