Традиционные архитектуры облачных хранилищ, работающие по протоколу iSCSI поверх стандартного TCP/IP, несут значительные накладные расходы на копирование буферов сокетов ядра и обработку прерываний, добавляя от 2 до 5 миллисекунд задержки к удаленному блочному хранилищу. Для высокопроизводительных реляционных баз данных и аналитических рабочих нагрузок в реальном времени эта сетевая задержка создает серьезные узкие места I/O. Путем интеграции NVMe over Fabrics (NVMe-oF) с RDMA over Converged Ethernet (RoCEv2), корпоративные кластеры хранения Ceph передают команды NVMe напрямую между областями памяти хоста со временем выполнения менее миллисекунды.
Архитектура NVMe over Fabrics (NVMe-oF)
NVMe-oF распространяет легковесный параллелизм на 64,000 очередей набора к��манд PCIe NVMe по беспрерывным сетям Ethernet без трансляции протокола SCSI. В сочетании с сетевыми адаптерами Mellanox/NVIDIA ConnectX, настроенными для Priority Flow Control (PFC) и Explicit Congestion Notification (ECN), инициаторы хранилища взаимодействуют с удаленными демонами объектного хранилища Ceph (OSDs) на скоростях, близких к локальным PCIe.
Удаленный прямой доступ к памяти (RDMA) полностью обходит стек TCP/IP операционной системы хоста. Очереди отправки и завершения NVMe сопоставляются непосредственно с аппаратными парами очередей (QP) сетевой карты, что снижает задержку случайного блочного I/O p99 4K до менее чем 250 микросекунд в сетях spine-leaf 100GbE.
Срав��ение производительности протоколов хранения
Оценка задержки случайного чтения 4K, пределов IOPS на одно ядро и накладных расходов прерываний ЦП хоста по протоколам передачи данных хранилища:
| Сетевая фабрика хранения | Задержка случайного чтения 4K | Макс. IOPS на ядро | Накладные расходы ЦП хоста |
|---|---|---|---|
| Устаревшие iSCSI / TCP | 2.4 – 4.8 мс | 80,000 IOPS |
Высокие (прерывания сокетов ядра & копии sk_buff) |
| Нативный клиент Ceph RBD (msgr v2) | 1.1 – 1.8 мс | 180,000 IOPS |
Умеренные (опрос потоков librbd в пользовательском пространстве) |
| NVMe-oF поверх RoCEv2 RDMA | 0.18 – 0.35 ms |
1,200,000+ IOPS |
Близкая к нулю (регистрация памяти аппаратного DMA) |
Настройка хост-инициатора Linux NVMe-oF
Подключите вычислительный узел Linux к удаленному целевому шлюзу Ceph NVMe-oF по без потерь 100GbE RoCEv2 фабрике с использованием nvme-cli и многопутевого I/O (ANA):
# Load kernel NVMe RDMA initiator and multipath modules
modprobe nvme-rdma
modprobe nvme-core multipath=Y
# Discover remote NVMe-oF subsystems over RoCEv2 port 4420
nvme discover -t rdma -a 192.168.100.50 -s 4420
# Connect to redundant Ceph NVMe-oF gateway group
nvme connect-all -t rdma -a 192.168.100.50 -s 4420
Развертывание устойчивой облачной инфраструктуры с WinWinHost
Ускорьте свои критически важные приложения с помощью корпоративного «железа» и облачных хранилищ. Ознако��ьтесь с нашим руководством по Linux eBPF & фильтрации XDP DDoS, изучите зарегистрированные файлы Linux io_uring, или свяжитесь с нашими инженерами по архитектуре облаков.