Docker-контейнер вызывает снижение производительности диска/ОС

Возможно, вы захотите узнать, какой у вас WiFi-адаптер. Взгляните на устройства PCI

# pciconf -lv

и на USB-устройствах

# usbconfig list

Затем взгляните на FreeBSD 11.2 WiFi HW или версию, которую вы хотите использовать. Существует также Wiki DeviceDrivers для получения дополнительной информации. (Обратите внимание, что это (еще не )исчерпывающий список. )Более подробную информацию можно найти на FreeBSD Wireless WIKI На мой взгляд лучший выбор это Atheros или Intel. И Ralink для USB-ключей.

В случае Broadcom BCM43xx вам потребуется драйвер bwi или bwn . Найдите нужный чип на страницах руководства. Эти драйверы должны быть в вашем ядре. Найдите его (в случае bwi)

# ll /boot/kernel/ | grep bwi
-r-xr-xr-x  1 root  wheel    150968 Jun 22 06:24 if_bwi.ko*

Загрузите драйвер (и все другие драйверы, упомянутые на страницах руководства ), и проверьте kldstat . Подробности см. в /var/log/messages (. У меня нет адаптера BCM, поэтому я не могу предоставить вам живой пример.)

# kldload if_bwi
# kldstat | grep bwi
16    1 0xd2a75000 1d000    if_bwi.ko

Чтобы загрузить драйвер при загрузке, добавьте эту строку в /boot/loader.conf

if_bwi_load="YES"

Вероятно, вам потребуется дополнительное «исследование» BCM и FreeBSD в отношении вашего чипа.Более подробная информация доступна, например, в Драйвер BWI и прошивка , Справка драйвера BWN .

Если он не работает в течение разумного периода времени, я бы посоветовал найти поддерживаемый USB-ключ Ralink . Например, у меня отлично работает этот:

# usbconfig -d ugen1.3 dump_all_desc
ugen1.3:  at usbus1, cfg=0 md=HOST spd=HIGH 
(480Mbps) pwr=ON (450mA)

  bLength = 0x0012 
  bDescriptorType = 0x0001 
  bcdUSB = 0x0200 
  bDeviceClass = 0x0000  
  bDeviceSubClass = 0x0000 
  bDeviceProtocol = 0x0000 
  bMaxPacketSize0 = 0x0040 
  idVendor = 0x148f 
  idProduct = 0x5370 
  bcdDevice = 0x0101 
  iManufacturer = 0x0001  
  iProduct = 0x0002  <802.11 n WLAN>
  iSerialNumber = 0x0003  <1.0>
  bNumConfigurations = 0x0001

2
14.08.2020, 04:57
1 ответ

Отвечу с теоретической точки зрения, у меня нет опыта работы с Kafka на Docker.

Docker — это в значительной степени технология изоляции, НЕ виртуальная машина . Это означает, что он намного легче, чем вы могли бы ожидать. Большая его часть построена вокруг пространств имен и монтирований, включая связывание монтирования .

Это будет немного зависеть от того, что вы просите Docker сделать:

  • Если вы используете привязанное монтирование или том Docker , то это хранятся непосредственно в виде файлов в хост-системе. Их производительность накладные расходы должны быть не больше, чем у монтирования привязки Linux потому что это именно то, что вы получаете. Эти накладные расходы на производительность близки к нулю.

  • Другие тома хранения, такие как поддерживаемые amazon S3 , могут поставляться с накладкой.

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

4
18.03.2021, 23:12

Теги

Похожие вопросы