Ответы пользователя по тегу Linux
  • Как создать виртуальную сеть на уровне IP?

    @asmelnik
    "как получить 220 вольт без розетки и проводов?
    Ведь электроны есть везде, и провод тут явно лишний...."
    Увы, но IP пакет сродни контейнеру,, т.е. коробки или упаковки, а Ethernet, atm, ppp и т.д. таки транспорт для этих контейнеров.
    Контейнер без транспорта, при всей своей виртуальности, сам по себе перемещаться не может.
    Так что хотя бы виртуальный транспорт вам будет нужен.

    Кстати, в вашей постановке гораздо проще выбросить IP
    Просто паковать напрямую в в фреймы.
    Есть протоколы, которые для повышения эффективности именно так и работают.
    Ответ написан
    Комментировать
  • Неестественно долгий старт сервера Linux, что может быть?

    @asmelnik
    В логах отображается в том числе временные метки старта того или иного сервиса.
    Они о чем говорят?
    Если сервер "железячный" (да и виртуальный тоже) - подключайтесь к "локальному монитору" и смотрите.
    Как вариант -- рейд -контроллер при каждом старте проводит полную пересинхронизацию зеркала (бывало такое), или был случай, когда рейд-контроллер искал и инициализировал HDD по 8-10 минут...
    Ответ написан
  • Что делать если не запускается synapse сервер?

    @asmelnik
    Он же вам написал:
    Нет прав на /data/matrix.......
    Для начала дайте права, а там дальше еще смотреть надо,но после.
    Ответ написан
    4 комментария
  • Какой выбрать легкий и простой дистрибутив Linux для серфинга интернета?

    @asmelnik
    Конкретизируйте ваш вопрос!

    Ответ на ВАШ вопрос:
    Если ноут с CPU 64bit, и чтоб совсем мало.
    Ставите минимальный debian(ubuntu?) БЕЗ GUI , на него links (консольный web-браузер) и ... ну когда запустите сами поймете.
    Возможно даже проникнитесь и вам понравится :)

    Но вы (с вероятностью 0.99) вряд ли хотите именно того, о чем просите.
    Хотя бы характеристики ноута укажите, ибо "старый" -- весьма относительное понятие.
    У меня на полке лежит lenovo 2008 года выпуска (4Гб DDR2 RAM-ы), и он вполне приемлем для серфинга (если сравнивать с Samsung-ом 2004-ого), на нем даже кеды (KDE) с гномиком(GNOME) как-то работают...
    Ответ написан
    1 комментарий
  • Роль ип адреса моста используемым докером?

    @asmelnik
    Т.к. сервисы у вас работают обычно по IP, то (увы) без IP сложно организовать работу по IP !!
    Можно IPv6 only конечно, но опять-таки это IP.
    Если вам нужно ТОЛЬКО взаимодействие между контейнерами и хост-системой (оставим в покое сложные костыли конвертирования "внешних" данных из IP во "внутренние" БЕЗ IP), вы можете это попробовать реализовать другим протоколом, хоть тем же Ethernet или IPX (мир его праху)
    Но взаимодействие с "внешним миром" -- это таки через IP и никуда в обозримом будущем вам от этого не деться.
    Ответ написан
    Комментировать
  • Могут ли сетевые устройства работать параллельно?

    @asmelnik
    Практически любой современный физический интерфейс на компьютере --ПОСЛЕДОВАТЕЛЬНЫЙ: USB, Ethernet (100/1000/2500/5000/10000 Мбит), PON, SATA... (параллельные LPT и IDE(PATA) давно сошли со сцены)
    Т.е. сколько физически (Но не логически) интерфейсов вы задействуете, столько и получите одновременных потоков.
    При этом если USB -- то это шина, т.е.в каждый момент времени только одно устройство передает данные. И сколько бы вы устройств на одну шину не повесили -- физически это один поток данных.
    Если что-то хотите передавать в сеть в реальные 16 или 32 потока -- вам надо соответствующее количество физических интерфейсов.
    Но возникает вопрос "зачем"??
    Не просто так от параллельных интерфейсов перешли на последовательные :)
    Ответ написан
    2 комментария
  • Context switch per second (Linux) 1.3млн это много или мало?

    @asmelnik Автор вопроса
    Спасибо всем неравнодушным и ответившим по существу проблемы.
    Всякое решение плодит новые проблемы.(один из законов Мэрфологии)

    Похоже время ответить на вопрос и закрыть тему

    Context switch per second (Linux) 1.3млн это много или мало?
    Если коротко — это для конфигурации
    E5-2699v4 — 2шт
    RAM 378Gb
    Довольно много, но не предел.
    Достигнутый максимум 1.5 млн.
    Достигнут был при следующих условиях:
    Совет от edo1h,
    1. mitigations=off, это снизит стоимость переключения контекста;
    2. «Зажал» бы частоту процессора и отключил всякие c3, энергосберегающие опции плохо совместимы с короткими запросами.
    processor.max_cstate=1 intel_idle.max_cstate=1 к параметрам ядра, плюс поставить pstate-frequency и запустить pstate-frequency -p max (если помогло, то в systemd включаем pstate-frequency@max)

    Дал направление копания, итоговый набор параметров ядра совпал с советом выше.
    mitigations=off intel_idle.max_cstate=1 processor.max_cstate=1

    Замечания jcmvbkbc, res2001, Everything_is_bad натолкнули на мысль разделить задачи сервера на более-менее автономные блоки и исследовать как по отдельности, так и взаимосвязи между ними.

    Результат оказался для меня неожиданным (об этом в п.3)

    1. Сеть
    Тюнинг сетевой подсистемы дал снижение количества прерываний/сек (не слишком значительное, но это положительным образом сказалось на результатах).
    Убрал bonding интерфейсов (выигрыш на уровне погрешностей измерения, но иногда(хоть и крайне редко) при работающем bonding наблюдались всплески interrupts, которые полностью отсутствовали при выключенном bonding в течении 4-х дней)
    Максимальный размер буферов на адаптере.
    Воспользовался tuned + корректировка параметров sysctl.
    Профиль network-latency субъективно подошел лучше всего.

    2. Работа nginx-а
    Тут дало положительный эффект запуск 2-х независимых серверов на 2-х dummy интерфейсах. Не могу пока предположить с чем связано.

    3. Неожиданный эффект — т.к. логирование таки необходимо, довольно много сливалось в rsyslog по unix.socket (сеть не вариант, нагрузка выше заметно)
    Вот отказ от заливки логов nginx-а в rsyslog снял 75-76% (С 1.3млн до 0.3млн на пиках нагрузки) количества «Context switch per second».
    Буквально «на коленке» на python написал заменитель, вся задача — сообщение из unix.socket записать в файл в нужном формате.

    Итог, сервер выполняет те же функций:
    «Context switch per second» -- снизился на 50% от исходного.
    Нагрузка на CPU — снижение примерно на 25-30%.
    При тех нагрузках, при которых ранее появлялись отказы, отказов нет.
    Ответ написан
    4 комментария
  • Как проверить наличие параметра при загруженного ядра?

    @asmelnik
    cat /proc/cmdline
    Строка загрузки работающего ядра
    Ответ написан
    Комментировать