Size: a a a

2019 July 01

PA

Polina Azarova in Data Engineers
В sys
источник

N

Nata in Data Engineers
У меня была схожая проблема на сервере с убунту, там был сервис, который при kernel error ах не мог найти а чем проблема, отъедал все ядра и вешал систему
источник

N

Nata in Data Engineers
Вылетело из головы, как назывался
источник

N

Nikita Blagodarnyy in Data Engineers
Polina Azarova
Атоп тоже показывает, но для всяких тредов просто java
Ни флажков ни названия демона)
Вот и гадай что этот за покемон
Может по lsof станет понятнее, кто это?
источник

PA

Polina Azarova in Data Engineers
Надо выловить момент)
Но я попробую накронить что-нибудь вменяемое, спасибо за идею
источник

AZ

Anton Zadorozhniy in Data Engineers
strace по процессу показывает на какие вызовы он тратит время
источник

A

Alex in Data Engineers
Самый первый вопрос: изоляция cgroups использует или нет?

Если нету изоляции то хоть ты одно ядро попроси, но потом можешь утилизировать все что только можно
источник

PA

Polina Azarova in Data Engineers
Не использует
источник

PA

Polina Azarova in Data Engineers
То есть он может отъесть больше чем выделено под nodemanager?
источник

PA

Polina Azarova in Data Engineers
За что?(
источник

A

Alex in Data Engineers
Да, он может запросить вообще 1 vcpu и создать 100500 нагруженных потоков
источник

A

Alex in Data Engineers
И утилизирует всю машинку
источник

PA

Polina Azarova in Data Engineers
А как это разруливается? Прибивать сигруппами не очень хочется(
И странно что такое происходит только на нескольких машинах
источник

A

Alex in Data Engineers
вообще можно оверкоммитить, если не используются изоляция по cgroups (вроде сейчас у всех отключено, бывают кернелпаники от него) yarn.nodemanager.linux-container-executor.cgroups.strict-resource-usage
источник

A

Alex in Data Engineers
Вот поэтому выше и сказали про cgoups
источник

PA

Polina Azarova in Data Engineers
Оверкоммитить - я поняла что увеличивать количество ядер в настройках нодменеджера (больше чем физическое)
источник

A

Alex in Data Engineers
Может конфигурация так совпала, на остальных спайки что есть быстро проходят
источник

A

Alex in Data Engineers
Да, но возьмем абстрактный spark worker

Он запросил 3 vcpu, ему его выдали, он на эти 3 vcpu запустил 3 рабочих потока.

Вроде все ок

Потом мы вспоминаем что у jvm ещё есть потоки на gc, jit, в самом спарке потоки на io, и всякие blockmanager

Итого вопрос: сколько потоков-ядер сожрёт воркер :)
источник

AZ

Anton Zadorozhniy in Data Engineers
вообще надо понять что за джоб, что делает, поговорить с автором.. 30% sys это в любом случае не очень стандартно, мб есть что-то что пользователь не знает или делает не так
источник

A

Alex in Data Engineers
Поэтому без изоляции полагаясь только на уоличество vcpu это как "мы джентльмены друг друга не обманываем"
источник