@puppet_ru

Страница 96 из 112
Andor
06.09.2018
08:59:37
Доллар в рубях не нужен
сам главное его вписал

Freddie
06.09.2018
09:02:05
Я епп рисовал)

Всё равно где-нибудь наверняка налажал, конечно

Единорожа
06.09.2018
09:26:30
Все решилось слишком просто

Google
Единорожа
06.09.2018
09:26:41
<% @mysql_servers.each do |server| -%> {address="<%= server['address'] %>", port=<%= server['port'] %> , hostgroup= <%= server['hostgroup'] %>}, <% end -%>

Freddie
06.09.2018
09:28:05
одна проблема (а может нет) - висяцая запятая на последней строке останется

Единорожа
06.09.2018
09:28:26
вот блин

и да это syntax error

Freddie
06.09.2018
09:36:08
можно мапой, а потом .join(',')

[1] pry(main)> servers = [] => [] [2] pry(main)> servers << {'address' => '192.168.0.1', 'port' => 3306, 'hostgroup' => 0} => [{"address"=>"192.168.0.1", "port"=>3306, "hostgroup"=>0}] [3] pry(main)> servers << {'address' => '192.168.0.2', 'port' => 3306, 'hostgroup' => 0} => [{"address"=>"192.168.0.1", "port"=>3306, "hostgroup"=>0}, {"address"=>"192.168.0.2", "port"=>3306, "hostgroup"=>0}] [4] pry(main)> puts servers.map {|s| "{ address=\"#{s['address']}\", port=#{s['port']}, hostgroup=#{s['hostgroup']} }" }.join(",\n") { address="192.168.0.1", port=3306, hostgroup=0 }, { address="192.168.0.2", port=3306, hostgroup=0 } => nil

вот так примерно на рубях будет, 1-3 - это я массив набиваю, хиерой прикидываюсь, а 4 переводится на future parser один в один

можно написать функцию, хоть на рубях, хоть на паппете, если у тебя достаточно новый, и темплейт вообще не понадобится, можно будет просто content => proxysql::genconfig($servers)

ну или как ты её там назовёшь

Andor
06.09.2018
10:04:45
писать функции на пупете - торт

Max
07.09.2018
21:30:02
Итак … Апдейт за создание фолдеров или юзеров с фолдерами внутри класса… Нашел другой класс, отвечающий за юзера и группы. Все еще предстоит работа по переписке, так как soe оказался “костыль”, вместо “для всех”. Вопрос к знотокам - как вы относитесь к “виртуал” ? не встречал даной реализации в продакшыне - только в книжках и не факт что они работают))) но все же - стоит ли писать виртуал клас (юзера, группы и тд и тп) или это что-то олдскульное ? (ведь начиналось все с рр файла только …) Тема или топик был о редефайне хом директории внутри 2 классов, которые просто должны создать рут фоллер). Пример: /opt/some_schit/grafana /opt/some_schit/here_your_ads Где /opt/some/schit/ должен создаваться как для grafana так и here_your_ads. Повторюсь - если описать ресурс для обоих класов и задефайнить для разных серверов - все будет работать, но если использовать 1 сервер для обоих ролей-профайлов - папет выругает за ре-декларацию точки входа.

Andor
07.09.2018
21:43:48
что "виртуал"?

Google
ptchol
08.09.2018
13:37:19
Вероятно речь о виртуал ресурсах, которые в случае реалайзов позволяли избегать дупликейт декларейшн. Имхо сейчас это нужно решать хиерой и правильной компоновкой содержимого классов

Andor
08.09.2018
20:43:25
Вроде не умер, ему же предлагают в маркетологи докеров пойти

ptchol
08.09.2018
21:00:06
в тебе умер Евангелист Докера, птчёл
Ксюш, это опять личностное суждение, никак не связанное с сутью высказанного. Тоесть просто перестань, или молчи )

Mikhail
11.09.2018
08:24:21
Можно ли вычислять факт только для определенной группы серверов?

Andor
11.09.2018
08:24:46
давай подробнее кейс

Freddie
11.09.2018
08:25:22
у фактов есть "confinement"

но не уверен, что тебе это нужно здесь. зачем ты хочешь НЕ вычислять?

Mikhail
11.09.2018
08:26:31
потому серверов у меня 1к, а нужен он на 8

Andor
11.09.2018
08:26:47
а на других мешать будет?

Mikhail
11.09.2018
08:27:07
ну смысл греть бесполезно проц

Freddie
11.09.2018
08:27:25
а что, прямо греть?

Andor
11.09.2018
08:27:30
может ты ещё остальные факты хочешь отключить, которые не используешь?

Freddie
11.09.2018
08:27:42
а как ты знаешь, на каких "надо", а на каких "нет"?

Mikhail
11.09.2018
08:27:54
ну нет, но тут пара тактов, там десяток и вот тормозит все!

Freddie
11.09.2018
08:28:12
ну не об паппет раз в 15 минут же

Mikhail
11.09.2018
08:28:14
Freddie
11.09.2018
08:28:51
тут конфликтик получается: роли - это что ТЫ знаешь о ноде, факты - это что сама нода про СЕБЯ знает

Google
Freddie
11.09.2018
08:29:00
смешивать некруто

Mikhail
11.09.2018
08:31:34
у меня этап Info: Loading facts выполняется 15 секунд, бесит )

Freddie
11.09.2018
08:33:36
это более или менее нормально. с -d можно увидеть, обо что именно тормозит. скорее всего не об твоё

хотя нет, у меня в пределах двух секунд

ну это в домашней песочнице. боевое - около 7 секунд, там фактов больше раз в пять

а паппет у тебя какой? cfacter намного быстрее, старый чисто рубёвый был примерно как у тебя, кажется

Mikhail
11.09.2018
08:36:32
Debug: Facter: resolving Xen facts. вот на чем висит

4 паппет

Freddie
11.09.2018
08:36:58
да, должен быть новый фактер

ну и видишь, не об твоё тормозит. а что, облако? и таки прямо xen?

Mikhail
11.09.2018
08:38:02
ну мое еще не впилено. Я хз где у нас xen, а вот видимо на какой-то машинке есть и теперь на остальных тормозит

Freddie
11.09.2018
08:38:53
это встроенные факты, они везде чекаются

в исходники лезть совсем не хочется

Freddie
11.09.2018
08:39:40
https://github.com/puppetlabs/facter где-то здесь :)

Mikhail
11.09.2018
08:40:10
Факты разных машин друг с другом не связаны же
да, но вычисляются то на всех одни и те же факты ведь?

Freddie
11.09.2018
08:40:17
да

но xen - в "ядре": https://github.com/puppetlabs/facter/blob/master/lib/src/facts/resolvers/xen_resolver.cc

Andor
11.09.2018
08:43:16
вопрос почему он тормозит

Freddie
11.09.2018
08:43:25
насколько я вижу, должно туда попадать только если есть /usr/bin/xl или /usr/bin/xm

Google
Andor
11.09.2018
08:43:26
@azalio а facter xen тоже тормозит?

Mikhail
11.09.2018
08:43:44
а вот нет, не тормозит

Andor
11.09.2018
08:44:20
а puppet facts?

Mikhail
11.09.2018
08:44:27
Debug: Facter: resolving Xen facts. Debug: Dynamically-bound server lookup failed, falling back to server setting Debug: Dynamically-bound port lookup failed; falling back to masterport setting Debug: Failed to load library 'msgpack' for feature 'msgpack' Debug: Puppet::Network::Format[msgpack]: feature msgpack is missing Debug: catalog supports formats: pson yaml dot binary Debug: Using cached connection for https://rbpuppet.i:8140

вот тут затыкается

Andor
11.09.2018
08:44:52
а следующая запись какая в логе?

Freddie
11.09.2018
08:45:13
это уже не факты, тут он ждёт каталога от мастера

Andor
11.09.2018
08:45:28
угу, это уже после фактов

Freddie
11.09.2018
08:45:30
15 секунд - это норм, и он просто ждёт, а не проц греет

Mikhail
11.09.2018
08:45:34
Debug: Facter: resolving Xen facts. Debug: Dynamically-bound server lookup failed, falling back to server setting Debug: Dynamically-bound port lookup failed; falling back to masterport setting Debug: Failed to load library 'msgpack' for feature 'msgpack' Debug: Puppet::Network::Format[msgpack]: feature msgpack is missing Debug: catalog supports formats: pson yaml dot binary Debug: Using cached connection for https://rbpuppet.i:8140 Debug: Caching connection for https://rbpuppet.i:8140 Debug: Evicting cache entry for environment 'production' Debug: Caching environment 'production' (ttl = 0 sec)

Freddie
11.09.2018
08:46:01
можешь в логе на мастере это увидеть, grep compiled должно быть достаточно

Andor
11.09.2018
08:46:22
а мастер рубёвый или жрубёвый?

снимай метрики с мастера!

Mikhail
11.09.2018
08:46:43
какие-то сложные вопросы пошли!!!

Freddie
11.09.2018
08:46:49
четвёртый паппет, не будет там рубёвого без ебли (но тогда бы вопросов не было)

puppetserver же у тебя?

Andor
11.09.2018
08:47:17
короче сервер у тебя генерит каталог по 15 секунд, а не факты тормозят

Mikhail
11.09.2018
08:47:35
puppet 3397651 204 54.1 43933348 35656448 ? Sl Aug09 96578:51 /usr/bin/java -Xms32g -Xmx32g -Djava.security.egd=/dev/urandom -XX:OnOutOfMemoryError=kill -9 %p -cp /opt/puppetlabs/server/apps/puppetserver//puppet-server-release.jar clojure.main -m puppetlabs.trapperkeeper.main --config /etc/puppetlabs/puppetserver/conf.d --bootstrap-config /etc/puppetlabs/puppetserver/services.d/,/opt/puppetlabs/server/apps/puppetserver/config/services.d/ --restart-file /opt/puppetlabs/server/data/puppetserver/restartcounter

Freddie
11.09.2018
08:47:44
ага, оно

Andor
11.09.2018
08:47:49
жрубёвый

Google
Andor
11.09.2018
08:47:56
а тредов сколько в конфиге выставлено?

Freddie
11.09.2018
08:47:56
там ява, с него можно метрики снимать прямо по хттп

-Xms32g -Xmx32g щедро :)

Mikhail
11.09.2018
08:48:41
Andor
11.09.2018
08:48:49
ну погрепай по конфигу

Freddie
11.09.2018
08:48:51
если оно воркает нормально - збс, но я в итоге занижал эти штуки. хотел на жирных тачках запускать по десятку маленьких инстансов, но забил

Andor
11.09.2018
08:48:52
я не помню отсюда

кстати сделай лучше 31гб

Mikhail
11.09.2018
08:49:03
root@rbpuppet1: ~/rbpuppet 15# less /etc/puppetlabs/puppetserver/conf.d/puppetserver.conf | grep threa root@rbpuppet1: ~/rbpuppet 16#

Freddie
11.09.2018
08:49:03
это какой параметр?
max-running-instances, кажется

он по дефолту закомменчен. ищи instances

Andor
11.09.2018
08:49:17
жава с 31гб теоретически лучше работает чем с 32гб

Mikhail
11.09.2018
08:49:26
max-active-instances: 12

Freddie
11.09.2018
08:49:39
норм, а ядер?

Andor
11.09.2018
08:49:47
ну ты сначала в логе посмотри, сколько времени комилятся каталоги

Mikhail
11.09.2018
08:49:53
16

Freddie
11.09.2018
08:49:56
норм

Mikhail
11.09.2018
08:51:11
2018-09-11 11:44:12,785 INFO [qtp1704771126-32215] [puppetserver] Puppet Compiled catalog for rbkube-node-dp02 in environment production in 16.00 seconds 2018-09-11 11:45:20,419 INFO [qtp1704771126-32231] [puppetserver] Puppet Compiled catalog for rbkube-node-dp02 in environment production in 15.27 seconds

Freddie
11.09.2018
08:51:16
если тебе кажется, что медленно (на самом деле вполне ок), смотри на кэши (параметр environment_timeout в environment.conf или puppet.conf), но их надо будет сбрасывать при деплое

Andor
11.09.2018
08:51:21
ага

вот оно и пишет про 15 секунд

Страница 96 из 112