На главную

61c46507-12c7-4300-a301-bd8bc30c7c19 Инструкции для серверов

Подготовка образа для создания облачного сервера

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

Ниже рассмотрим, какие проверки и настройки потребуется выполнить для успешного создания сервера.

Основные настройки

Таблица разделов

Проверьте разбивку разделов на диске. Мы рекомендуем использовать для разбивки MBR или GPT; они обе поддерживаются большинством Linux-дистрибутивов командами fdisk, gdisk и аналогичными.

gdisk -l /dev/vda

Пример вывода:

GPT fdisk (gdisk) version 1.0.5
Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: not present

Если используется иная разметка, потребуется создать образ заново, с корректной разметкой.

Разметка диска

Если на диске размечен всего один раздел (корневой) и он имеет файловую систему ext3 или ext4, то при установке сервера из образа будет выполнен ресайз файловой системы. ФС будет расширена до заданного в конфигурации сервера размера диска.

Например, если размер блочного устройства в образе 10 Гб, то при установке сервера с диском 15 Гб блочное устройство и ФС будут расширены до 15 Гб.

Ресайз файловой системы не будет выполнен, если задействован LVM (Logical Volume Manager).

Загрузчик ОС

Мы используем для запуска виртуальных машин SeaBIOS, поэтому в ОС должен быть установлен обычный загрузчик для BIOS. Если установлен UEFI-загрузчик, его необходимо удалить и установить загрузчик для BIOS.

Если вы используете GRUB2, cмотрите инструкции по установке и настройке здесь.

Настройка /etc/fstab

Для стабильного запуска системы в файле /etc/fstab для корневого раздела указывайте монтирование по UUID, например:

UUID=f19002a1-6e7a-45ac-91cd-24b7cc0e4cd9 / ext4 defaults 0 1

Посмотреть UUID раздела можно, например, командой:

blkid

Пример вывода:

/dev/vda1: UUID="f19002a1-6e7a-45ac-91cd-24b7cc0e4cd9" TYPE="ext4" PARTUUID="f7a1fae1-01"
/dev/loop0: TYPE="squashfs"
/dev/loop1: TYPE="squashfs"
/dev/loop2: TYPE="squashfs"

Наличие основного пользователя

При создании сервера будет сгенерирован пароль для пользователя root (или Администратор в случае Windows). Убедитесь, что такой пользователь существует. Как правило, пользователь есть, если он не был специально удален.

Наличие qemu-guest-agent

Убедитесь, что установлен и запущен сервис qemu-guest-agent — он необходим для выполнения определенных операций из панели, например, для создания бэкапов.

  • Проверьте статус.

Systemd:

systemctl status qemu-guest-agent.service

OpenRC и init.d:

/etc/init.d/qemu-guest-agent status

или:

service qemu-guest-agent status
  • Установите агент, если он отсутствует:

Debian/Ubuntu:

apt-get install qemu-guest-agent

CentOS / RHEL:

yum install qemu-guest-agent

Alpine Linux:

apk add qemu-guest-agent
  • Добавьте в автозагрузку:

Systemd:

systemctl enable qemu-guest-agent.service

init.d:

chkconfig --add qemu-guest-agent

OpenRC:

rc-update add qemu-guest-agent

Для Windows сервис можно установить с помощью специального ISO-образа, который можно скачать здесь. Также с его помощью можно установить virtio-драйверы, необходимые для поддержки виртуализированных устройств. 

Данных настроек достаточно для создания облачного сервера из образа. Остальные настройки рекомендуется выполнить для более удобной работы с сервером.

Дополнительные настройки

Установка Zabbix

Для сбора статистики с серверов мы используем агент Zabbix. Чтобы отображать статистику в панели, рекомендуем установить Zabbix с помощью скрипта командой:

wget -O - http://zabbix.repo.timeweb.ru/zabbix-install.sh | bash

Сетевые настройки

После запуска сервера необходимо обеспечить его доступность по сети. Для этого потребуется настроить DHCP-клиент для автоматического получения IP- и IPv6-адресов. 

В большинстве систем клиент DHCP установлен по умолчанию, мы рекомендуем использовать утилиту dhclient с таким файлом конфигурации:

option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;
option dhcp6.next-hop code 242 = ip6-address;

send host-name = gethostname();
request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, domain-search, host-name,
        dhcp6.name-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.sntp-servers,
        netbios-name-servers, netbios-scope, interface-mtu,
        rfc3442-classless-static-routes, ntp-servers, dhcp6.next-hop;

timeout 300;

Доступ по SSH

Так как для доступа к серверу, как правило, используется протокол SSH, проверьте, что он установлен и запускается при загрузке сервера.

  • Проверьте статус:

Systemd:

systemctl status ssh.service  

OpenRC и init.d:

/etc/init.d/ssh status

или:

service ssh status
  • Установите SSH, если он отсутствует:

Debian/Ubuntu:

apt-get install openssh-server

CentOS / RHEL:

yum -y install openssh-server openssh-clients

Alpine Linux:

apk add openssh 
  • Добавьте в автозагрузку:

Systemd:

systemctl enable ssh.service

Init.d:

chkconfig --add ssh

OpenRC:

rc-update add sshd
  • Также убедитесь, что в используемом файрволе открыт доступ к порту SSH (по умолчанию — 22).

Отключение swap

Рекомендуем отключить файл подкачки.

  • Проверьте информацию о включенном swap:
swapon --show

Пример вывода:

NAME      TYPE SIZE USED PRIO
/swap.img file 685M   0B   -2
  • Отключите swap:
swapoff -a
15 лет опыта
Сосредоточьтесь на своей работе: об остальном позаботимся мы
165 000 клиентов
Нам доверяют частные лица и компании, от небольших фирм до корпораций
Поддержка 24/7
100+ специалистов поддержки, готовых помочь в чате, тикете и по телефону