Ну тут действительно проблема в том что нужно отслеживать всё дерево, включая удалённые файловые системы. А с ними вообще будет беда по скорости.
И наверное теоретически FUSE можно было бы реализовать, но как вы сами заметили, скорость будет вряд ли приемлемой.
Для архивов в общем вполне не плохо справляются все среды, чтобы зайти в них, и Gnome и KDE. В консоли тот же Midnight прекрасно «заходит» в архивы.
Да, это не вполне удобно, потому что решения разные, симлинки не сделаешь, нет интероперабельности… Но с другой стороны, в большинстве случаев такой доступ всё равно очень медленный и нужен лишь чтобы «быстренько взглянуть что там», ну или поглядеть пару небольших файлов вроде README. А с этим указанные средства вполне справляются. Если вам понадобилось содержимое архива полностью, то полное его извлечение будет на порядок быстрее с помощью последовательного чтения и использования родного архиватора.
Autofs тоже хорошая штука, согласен. Я его тоже использовал.
Из важных плюсов — умеет отмонтировать файловые системы по настроенному таймауту и это удобно.
Из серьёзных минусов:
значительно сложнее в настройке. Работает на древнем automount
при этом далеко не тривиален в дебаге, если что-то не так работает как хочется. Вот например я ставил пару багов на него: bz#961312, bz#961299.
Последнюю закрыли не разбираясь, по таймауту :( Если посмотреть в багзилле кроме моих, то их тоже очень не мало, что тоже немного отталкивает.
Нет, по умолчанию ssh достаточно! Есть конечно возможность его ограничить отдельным списком команд дополнительно, но мы сейчас не будем рассматривать эти случаи. А вообще работает даже с shared хостингами на ура.
Кстати, вместо использования sshfs вы вполне также можете использовать автомаонтирование nfs с помощью afuse! Потребуются незначительные модификации скрипта-хелпера. Однако nfs требует экспорта файловых систем, вся прелесть sshfs в том что вы можете так монтировать любой хост, на который у вас есть ssh доступ, без каких-то дополнительных подготовок на нём.
Если хост недоступен, разумеется вы не сможете читать его. Но, во-первых, это просто sshfs, поведение будет в точности такое же. К afuse это не имеет отношения.
Но если вернуться к вопросу как оно будет себя вести, то при переходе в эту директорию команда просто подвиснет. В моём примере используется опция "-o reconnect", соответственно sshfs будет постоянно пытаться переконнектиться, и сделает это как только хост станет доступен, то есть вы увидите просто задержку. Если же хост стал полностью недоступен, вы можете просто убить соответствующий sshs процесс с помощью kill. Ну и отмонтировать конкретную директорию: fusermount -u somehost
Действительно, такой баг на OpenSSH открыт аж с 2009 года — https://bugzilla.mindrot.org/show_bug.cgi?id=1585
Я задавался таким вопросом, чтобы включать «этот в свой», есть разного рода костыли, основанные прежде всего на алиасе вместо ssh команды, которая по какому-либо шаблону или указанным путям собирает нужный дефолтный конфиг. Например несколько вариантов тут: http://superuser.com/questions/247564/is-there-a-way-for-one-ssh-config-file-to-include-another-one
Честно сказать, хоть и очень хотел, использовать не стал — жду выхода 7.3 с нетерпением. В общем на тек уж сложно добавить один параметр -F, если нужно соединиться с коннектом из другого конфига. Хотя конечно и хочется удобнее.
Нет, DNS не решает проблему совершенно, ведь в примере «organization.gateway» это фактически ссылка на описанную конфигурацию. Помимо просто имени узла же вы там можете задать и порты, и пользователей, и отдельные ключи, и много другой информации как к нему надо подключиться.
Ну так конечно у меня разные серверы в проекте. Балансеры, аппы, БД (мастеры, слэйвы), хранилища… Каждого типа разное количество… Вы не против, если я к вам лично постучусь и вы поделитесь опытом как это полностью автоматизировать?
Да нет же. Простые действия может конечно, я же изначально упомянул про них и правила обнаружения. Как с помощью них скажем с хоста, добавляемого в мониторинг, сказать типа «я сервер реплики Постгрес, приложения А», мне нужно применить шаблоны pg_monz, A, B, custom_stat_queries, и D. А в screen c именем «Количество сессий за 15 минут» добавить с этого хоста график C1 из шаблона custom_stat_queries?
На сколько я понимаю без API никак уже. Я не прав?
Деплоить автоматически агенты и их конфиги не проблема, развернуть сервер тоже сделано. Но вот если вы мне покажете в любой CM автоматическое полное конфигурирование в заббиксе хоста, включая добавление хоста, включение его в группы (помимо простых discovery rule), назначение шаблонов, создание графиков, скринов для него, добавление его в другие существующие скрины и графики… Буду очень благодарен. Предпочтение конечно ansible. В его galaxy я не нашёл рецептов. Мы пока так и не дошли до полного конфигурирования без веб-интерфейса. Остановились на том что некоторая реализация API всё же потребуется, а упаковать в rpm и добавить в EPEL тот же zabbyx_py я пока вписал в todo на будущее…
landergate, я думаю мы очень сильно уклонились от темы публикации. Если вы не возражаете, в остальном я не буду продолжать дискуссию и отвечать по пунктам, хотя не совсем согласен. Хочу лишь сказать что sepich затронул интересную тему и провёл интересный обзор решений по визуализации данных для Заббикса, и мне тоже не удобно то что имеется в этом плане из коробки, хотя и использую и признаю что в общем можно использовать до какой-то степени. Немного огорчает вывод что пока нет даунсемплинга и нужно хакать сам заббикс, то и внешние решения нормальные использовать не так радужно…
Не, в случае с любой Timeseries database (не обязательно Influxdb), вам не надо LLD или любого другого дискавери. Вы просто в любой момент начинаете писать данные и она их сохраняет. Ведь анализ от сбора всегда разнесён и во времени и в инструментах.
А про партиции я и говорю — велосипедов много и все вокруг.
Выглядит потрясающе. Всё присматриваюсь попробовать. В любом случае спасибо большое за открытие, да ещё под такой разрешительной лицензией.
Скажите пожалуйста, в тестах вы в основном называете Vertica. А что с cassandra? И даже пожалуй куда более интересно с scylladb? По их маркетинговым заверениям на сайте «A Cassandra compatible NoSQL column store, at 1MM transactions/sec per server.». Маркетинг оно понятно, всегда впереди, но что-то же должно быть под их обещаниями… Вы не пробовали или не планируете провести сравнение с ними на каких-то открытых данных?
Вопрос в том что настраивать конкретный проект в заббиксе тоже не очень-то удобно. Вы пробовали конфигурацию перенести? Экспортировать всё в XML и потом загрузить? Хорошо если половина у вас загрузится, а остальное опять напильником. Почему-то в Grafana достаточно JSON скопировать. А ещё можно делиться плагинами и дашбордами. Но это совсем пол беды. Вы пробовали это автоматизировать? Скажем с помощью Ansible настроить и сервер и клиентов автоматически? Ну положим с сервером самим всё просто. Хотя и нет в доке, но сформировать надо по сути один php конфиг и всё заработает. Ну а дальше? API также, Автоматизирует это на половину. Ни одной официально поддерживаемой имплементации или тулзы нет (скажем в составе, что-то вроде zabbix_cli). Можно на удачу попробовать использовать скжем какой-нибудь zabbix_api на питоне…
Скажите на милость, почему кастомные метрики надо до сих пор добавлять с двух сторон? На сервере Item с кучей настроек, а на клиенте ещё conf.d описывать команды как их посылать. По какой из причин это нельзя было сделать с одной стороны? Ну как Influxdb чтобы начать писать данные — нужно просто начать их писать. Любым инструментом, от агента, до REST запросов простых. И никаких обязательных агентов (хотя и имеется с пяток разных на выбор). А анализировать их, алармы делать или графики строить другие инструменты имеются. Что сложно в конфиге указать пару дополнительных параметров, каким это будет итемом на сервере и сколько я времени его там хочу хранить? Ну или в обратную сторону, уж если на сервере настроили всё, а агент всё равно постоянно ломится и имеет сетевое соединение, почему ещё требуется конфигурирование кастомных команд на клиенте, он не может это тоже получить с сервера как получает многие стандартные метрики?
И да, конечно многое побороть можно, и сами живём, кое-что доделываем. Вопрос больше стоит ли? На Highload в прошлом году опять общался с ребятами, и снова спрашивал, когда будет множественный пуш элементов, хаускипинг на партициях, JMX нормальный, не отваливающийся java gateway… Это всё вопросы которым много лет, а ответов так и нет. Также как постоянно обещаемый новый интерфейс.
В общем, если честно сам всё больше и больше смотрю на возможность перехода на что-то более простое, гибкое и современное типа Influxdb + Grafana. Останавливает прежде всего перенос того настроенного уже и любовно сформированного такими усилиями в заббиксе исторического скарба…
И наверное теоретически FUSE можно было бы реализовать, но как вы сами заметили, скорость будет вряд ли приемлемой.
Для архивов в общем вполне не плохо справляются все среды, чтобы зайти в них, и Gnome и KDE. В консоли тот же Midnight прекрасно «заходит» в архивы.
Да, это не вполне удобно, потому что решения разные, симлинки не сделаешь, нет интероперабельности… Но с другой стороны, в большинстве случаев такой доступ всё равно очень медленный и нужен лишь чтобы «быстренько взглянуть что там», ну или поглядеть пару небольших файлов вроде README. А с этим указанные средства вполне справляются. Если вам понадобилось содержимое архива полностью, то полное его извлечение будет на порядок быстрее с помощью последовательного чтения и использования родного архиватора.
Из важных плюсов — умеет отмонтировать файловые системы по настроенному таймауту и это удобно.
Из серьёзных минусов:
Но если вернуться к вопросу как оно будет себя вести, то при переходе в эту директорию команда просто подвиснет. В моём примере используется опция "-o reconnect", соответственно sshfs будет постоянно пытаться переконнектиться, и сделает это как только хост станет доступен, то есть вы увидите просто задержку. Если же хост стал полностью недоступен, вы можете просто убить соответствующий sshs процесс с помощью kill. Ну и отмонтировать конкретную директорию: fusermount -u somehost
Я задавался таким вопросом, чтобы включать «этот в свой», есть разного рода костыли, основанные прежде всего на алиасе вместо ssh команды, которая по какому-либо шаблону или указанным путям собирает нужный дефолтный конфиг. Например несколько вариантов тут: http://superuser.com/questions/247564/is-there-a-way-for-one-ssh-config-file-to-include-another-one
Честно сказать, хоть и очень хотел, использовать не стал — жду выхода 7.3 с нетерпением. В общем на тек уж сложно добавить один параметр -F, если нужно соединиться с коннектом из другого конфига. Хотя конечно и хочется удобнее.
На сколько я понимаю без API никак уже. Я не прав?
landergate, я думаю мы очень сильно уклонились от темы публикации. Если вы не возражаете, в остальном я не буду продолжать дискуссию и отвечать по пунктам, хотя не совсем согласен. Хочу лишь сказать что sepich затронул интересную тему и провёл интересный обзор решений по визуализации данных для Заббикса, и мне тоже не удобно то что имеется в этом плане из коробки, хотя и использую и признаю что в общем можно использовать до какой-то степени. Немного огорчает вывод что пока нет даунсемплинга и нужно хакать сам заббикс, то и внешние решения нормальные использовать не так радужно…
А про партиции я и говорю — велосипедов много и все вокруг.
Скажите пожалуйста, в тестах вы в основном называете Vertica. А что с cassandra? И даже пожалуй куда более интересно с scylladb? По их маркетинговым заверениям на сайте «A Cassandra compatible NoSQL column store, at 1MM transactions/sec per server.». Маркетинг оно понятно, всегда впереди, но что-то же должно быть под их обещаниями… Вы не пробовали или не планируете провести сравнение с ними на каких-то открытых данных?
Скажите на милость, почему кастомные метрики надо до сих пор добавлять с двух сторон? На сервере Item с кучей настроек, а на клиенте ещё conf.d описывать команды как их посылать. По какой из причин это нельзя было сделать с одной стороны? Ну как Influxdb чтобы начать писать данные — нужно просто начать их писать. Любым инструментом, от агента, до REST запросов простых. И никаких обязательных агентов (хотя и имеется с пяток разных на выбор). А анализировать их, алармы делать или графики строить другие инструменты имеются. Что сложно в конфиге указать пару дополнительных параметров, каким это будет итемом на сервере и сколько я времени его там хочу хранить? Ну или в обратную сторону, уж если на сервере настроили всё, а агент всё равно постоянно ломится и имеет сетевое соединение, почему ещё требуется конфигурирование кастомных команд на клиенте, он не может это тоже получить с сервера как получает многие стандартные метрики?
И да, конечно многое побороть можно, и сами живём, кое-что доделываем. Вопрос больше стоит ли? На Highload в прошлом году опять общался с ребятами, и снова спрашивал, когда будет множественный пуш элементов, хаускипинг на партициях, JMX нормальный, не отваливающийся java gateway… Это всё вопросы которым много лет, а ответов так и нет. Также как постоянно обещаемый новый интерфейс.
В общем, если честно сам всё больше и больше смотрю на возможность перехода на что-то более простое, гибкое и современное типа Influxdb + Grafana. Останавливает прежде всего перенос того настроенного уже и любовно сформированного такими усилиями в заббиксе исторического скарба…