HostPro 23 года! Подарки всем нашим клиентам!

Забрать подарок

Как добавить на сервер NVMe диск

post thumbnail

Наши новые быстрые VPS тарифы уже включают в себя NVMe-диски. Выберите свой мощный VPS хостинг. Настройку и администрирование доверьте техподдержке HostPro.

Тип диска NVMe доступен только на новых тарифах NVMe VPS. Покупая этот сервер у вас есть возможность активировать себе высокоскоростное хранилище. Предназначено для очень больших баз данных NoSQL (например, MongoDB, Elasticsearch, TimeScaleDB); системы аналитики и хранилища данных.

Шаг 1 — Установите инструменты

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

Если вы используете сервер Ubuntu или Debian и еще не расстались, вы можете установить его, набрав:

apt-get install parted

Если вы используете сервер CentOS или Fedora, вы можете установить его, набрав:

yum install parted

Шаг 2 — Определите новый NVMe диск в системе

Прежде чем настраивать диск, нам необходимо правильно идентифицировать его на сервере.

Для этого используем следующую команду:

parted -l | grep Error

Ответ будет следующим:

Error: /dev/sda: unrecognised disk label

Вы также можете использовать команду lsblk и найти диск правильного размера, не имеющий связанных разделов:

lsblk
root@test:~# lsblk
NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda     252:0    0  30G  0 disk
└─vda1  252:1    0  30G  0 part /
nvme0n1 259:1    0  30G  0 disk

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

root@test:~# parted /dev/nvme0n1 mklabel gpt

После выбора формата вы можете создать раздел, охватывающий весь диск, набрав:

root@test:~# parted -a opt /dev/nvme0n1 mkpart ext4 0% 100%

Если мы проверим lsblk, мы должны увидеть доступный новый раздел:

root@test:~# lsblk                                                       
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 252:0 0 30G  0 disk
└─vda1 252:1 0 30G 0 part /
nvme0n1 259:1 0 30G 0 disk
└─nvme0n1p1 259:3 0 30G 0 part

Шаг 3 — Создайте файловую систему на новом разделе

Для этого будем использовать утилиту mkfs.ext4:

root@test:~# mkfs.ext4 -L nvme /dev/nvme0n1p1
mke2fs 1.45.5 (07-Jan-2020)
Discarding device blocks: done                           
Creating filesystem with 7863808 4k blocks and 1966080 inodes
Filesystem UUID: 50d5f8b7-d794-41cf-9ae8-d1d1f8b53add
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,4096000
Allocating group tables: done                           
Writing inode tables: done                           
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done 

Если вы хотите изменить метку раздела позже, вы можете использовать команду e2label:

root@test:~# e2label /dev/nvme0n1p1 newlabel

Вы можете увидеть все способы идентифицировать свой раздел с помощью lsblk. Мы хотим найти имя, метку и UUID раздела.

root@test:~# lsblk --fs
NAME FSTYPE LABEL UUID FSAVAIL FSUSE% MOUNTPOINT
vda                                                                            
└─vda1 ext4 root ed61e67e-7605-4383-ac16-fe54ee2ede87 26G 7% /
nvme0n1                                                                        
└─nvme0n1p1 ext4 newlabel 50d5f8b7-d794-41cf-9ae8-d1d1f8b53add

Шаг 4 — Смонтируйте новую файловую систему

Теперь мы можем смонтировать файловую систему для использования.

root@test:~# mkdir -p /var/lib/mysql 
root@test:~# mount -o defaults /dev/nvme0n1p1 /var/lib/mysql 
root@test:~# fdisk -l
Disk /dev/vda: 30 GiB, 32212254720 bytes, 62914560 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x941390d7
Device     Boot Start      End  Sectors Size Id Type
/dev/vda1  *     2048 62914559 62912512  30G 83 Linux
Disk /dev/nvme0n1: 30 GiB, 32212254720 bytes, 62914560 sectors
Disk model: SAMSUNG MZPLJ3T2HBJR-00007             
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: BA6956DF-1E18-4623-AF5E-4ACB6E5FE6A0
Device Start End Sectors Size Type
/dev/nvme0n1p1  2048 62912511 62910464  30G Linux filesystem

Смонтированный раздел обязательно необходимо добавить в файл /etc/fstab например:

UUID="50d5f8b7-d794-41cf-9ae8-d1d1f8b53add" /var/lib/mysql auto errors=remount-ro,noatime,nodiratime,nodev,nofail 0 2

где 50d5f8b7-d794-41cf-9ae8-d1d1f8b53add — индификатор

диска /var/lib/mysql — раздел в который монтирывали диск

Шаг 5 — Тестируем скорость дисков

root@test:/# sudo dd if=/dev/zero of=/var/lib/mysql/test1.img bs=1G count=1 oflag=dsync

1+0 records in

1+0 records out

1073741824 bytes (1.1 GB, 1.0 GiB) copied, 0.996802 s, 1.1 GB/s

root@test:~# sudo dd if=/dev/zero of=/tmp/test1.img bs=1G count=1 oflag=dsync

1+0 records in

1+0 records out

1073741824 bytes (1.1 GB, 1.0 GiB) copied, 5.34612 s, 201 MB/s

В первом случае скорость записи равна 1.1 GB/s, что в 8 раз быстрее стандартного SSD диска.

Вы  смонтировали данный диск под раздел /var/lib/mysql  и тем самым увеличили скорость работы сервера баз данных. Можете таким же способом смонтировать  диск в другой нужный вам раздел (например /mnt/data).

Telegram Hostpro

Наш телеграм

с важными анонсами, розыгрышами и мемами

Присоединиться

Возможно, вас заинтересует

Как самостоятельно перейти на другой тариф VPS

Как самостоятельно перейти на другой тариф VPS

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

Diana Honcharenko | Обновлено: 22.12.2023

Как создать виртуальный сервер

Как создать виртуальный сервер

«Как создать виртуальный сервер?» – частый вопрос, возникающий у многих пользователей, впервые сталкивающихся с...

Diana Honcharenko | Обновлено: 01.10.2020

Как освободить место на сервере VDS/VPS

Как освободить место на сервере VDS/VPS

В этой статье мы рассмотрим довольно распространенную причину сбоев в работе сервера, которую можно...

Viktoriya Mazur | Обновлено: 24.06.2019

Что такое хостинг?

Что такое хостинг?

Интернет-сайт для обычного посетителя — это определенный набор связанных между собой страниц, содержащих различную...

Diana Honcharenko | Обновлено: 14.08.2018