Dos Mesos никогда не позволяет сервисам запускаться, когда используемые ресурсы процессора составляют 71% - PullRequest
0 голосов
/ 25 мая 2018

У меня проблема с тем, что мы пытаемся запустить несколько служб в нашем кластере mesos dcos, и некоторые из них работают с процессом spark и некоторые службы python.Таким образом, в нашем небольшом тестовом кластере mesos dcos мы достигаем 70% ресурсов ЦП, используемых несколько раз в день.

А сервисы, которые люди хотят запустить, просто зависают в ожидании предложений ЦП, которые можно хорошо встретить на подчиненных узлах, но для некоторыхрезонанс не может быть распределен.

Типичным примером будет 7 неиспользованных процессоров и 1-3 службы, которые ищут предложения от 0,5 до 2 ресурсов для использования.это можно встретить.если смотреть на ресурс узла в представлении.

На мой вопрос есть ли жесткое ограничение, не позволяющее выделять более 70% процессорного времени одновременно?

И есть лирезонанс для этого предела, каков будет эффект изменения этого значения на более высокое?

И, наконец, кому мы изменим предел?

1 Ответ

0 голосов
/ 30 мая 2018

Кажется, что ответом является то, что указано в документации по мезосфере для сценариев отладки 1.

Но вместо того, чтобы проблема была проблемой ролей или что мы пытаемся просто выделить больше, чем кластер может обработать.https://docs.mesosphere.com/1.11/tutorials/dcos-debug/scenarios/scen-1/ проблема заключалась в том, что некоторые из наших служб хранят ресурсы процессора в зарезервированном.

reserved_resources ": {" cassandra-role ": {" disk ": 10496.0," mem ": 5152.0,"gpus": 0.0, " cpus": 1.6 , "ports": "[7000-7001, 7199-7199, 9042-9042]"} "kafka-role": {"disk": 5256.0, "mem": 2080.0, "gpus": 0.0, "cpus": 1.1 , "ports": "[1025-1025]"}}

, что в сумме составляет 2,8 илив mesos 2,81

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

Это вводило в заблуждение при попытке найти ответ, потому что графический интерфейс отображает только использованный, а не зарезервированный.

Я смог найти ответ, пройдя по https: /// mesos / state-summary

Просто, чтобы показать еще одну вещь, которую я нашел, один узел был "hostname": "1.0.1.199", "port": 5051, "attribute": {}, "pid": "slave (1) @1.0.1.199:5051","registered_time":1526561517.17816,"reregistered_время ": 1526561517.17896," resources ": {" disk ": 119266.0," mem ": 29476.0," gpus ": 0.0," cpus ": 4.0," ports ":" [1025-2180, 2182-3887, 3889-5049, 5052-8079, 8082-8180, 8182-32000] "}," used_resources ": {" disk ": 15752.0," mem ": 6368.0," gpus ": 0.0," cpus ": 1.81," ports ":"[1025-1025, 7000-7001, 7199-7199, 9042-9042]"}, "offer_resources": {"disk": 0.0, "mem": 0.0, "gpus": 0.0, "cpus": 0.0}, "reserved_resources": {"cassandra-role": {"disk": 10496.0, "mem": 5152.0, "gpus": 0.0, "cpus": 1.6, "ports": "[7000-7001, 7199-7199, 9042-9042] "}," kafka-role ": {" disk ": 5256.0," mem ": 2080.0," gpus ": 0.0," cpus ": 1.1," ports ":" [1025-1025] "}}, " unreserved_resources ": {"disk": 103514.0, "mem": 22244.0, "gpus": 0.0, "cpus": 1.3, "ports": "[1026-2180, 2182-3887, 3889-5049, 5052-6999, 7002-7198, 7200-8079, 8082-8180, 8182-9041, 9043-32000] "}

unreserved_resources : дает" процессор ": 1.3, "это значение, я не понимаю, почему это один 1.3, а не 1.19.учитывая, что 1.19 - это то, что показывает страница отладки, а также то, что я могу запросить и получить с сервера 1.0.1.199.

...