Есть виртуала на kvm + Libvirt . Примерный объем трафика в секунду около 200 мегабит. Сетевка по умолчанию была какой то там Интел, щас забыл уже поменял на Virtio. Грузил проц по soft-irq на 100%. Сменил на Virtio, спала до 20% примерно. А можно ее еще как то оттюнить? Или раскидать нагрузку на несколько процессоров? До этого у меня был Proxmox . Но он потихоньку помер, древний уже и там как раз можно было на много процов нагрузку раскидать. А как такое же сделать на Libvirt.
Вообще тема "прибить обработку сетевой карты на ядра проца" достаточно популярная и легко нагугливается, в том числе и про особенности виртуалок (т.к. людей, поднимающих на виртуалках вебсерверы и т.п. предостаточно).
Валентин, если бы я легко нагуглил то и писать бы не стал :). Тут ещё вопрос что спросить, то что я гуглил не в одном документе этого не нашёл. Может из за плохого английского не заметил конечно. Да и рас такая простая тема, почему же тут никто не ответил? :).
kiranananda, потому что надо немного понимать, что делаешь. Тут как с рецептом - "добавьте приправ по вкусу и варите до готовности", а "по вкусу" и "до готовности" с опытом приходит. В разных ядрах - немного разные параметры, плюс под разную нагрузку разные значения, т.е. надо понимать под что тюнится - под вебсервер, под маршрутизацию, или под что-то еще.
Конкретно вопрос "раскидать" вот так и нагугливается - how to bind network card cpu - че-то типа того гугли. Там еще момент в том, что делается и на хосте, и частично на самой виртуалке, т.е. опять же надо понимать, что делаешь.
Валентин, спасибо. Как на виртуалке по процам сетевую нагрузку раскидывать я знаю. Но вот в проксмоксе там была тычка прям в настройке виртуалки с указанием количество процов. Если я верно помню. И сетевой трафик автоматом раскидывался например на 5 ядер. В системе мне не нужно было ничего крутить. Это удобно что бы не морочится с раскидыванием прерываний...
Валентин, таких незнаю ). У меня на хосте по прерываниям от сетевок вообще тишина. А вот в виртуалке, где загруз процентов на 30 одного ядра при примерно 400 мегабитах трафика суммарного. Понятно, что запас вообщем есть и гигабит вытянет худо бедно, но хотелось бы настроить, что бы не мучаться в дальнейшем. У меня когда проксмокс стоял я тоже озадачился и после нашел в настройках сетевик там через веб морду возможность использовать несколько ядер процессора и нагрузка плавненько распределилась :).
С проксмоксом связываться больше не хочу. Так как обновления там платные. Стоит он дороговато честно говоря. А 5 серваков обновлять каждый раз совсем не охота :). Поэтому написал скрипит для бэкапа сделал заметку себе с нужными командами и все виртуалки перенес на либвирт, благо их не много :).
я к чему, это ведь не разработка проксмокса какая то? Надо просто какую-то настройку крутануть в настройках виртуалки, но сам ничего не нашел...
kiranananda, хотя бы https://habr.com/ru/post/108240/ читал? Пост старый, но суть не меняется. Это вот именно что универсальное. А в проксмоксе могли просто скрипт написать, который сам все чекает и настраивает.
Валентин, да конечно. Это средствами ОС раскидывание прерываний. В коменте выше писал что не это ищу. В проксмоксе решение было очень простым. Если можно так сделать зачем возюкаться с прерываниями? Это если не найду как делать и нагрузка вырастет больше 70% тога начну раскидывать прерывания по ядрам уже...