LINUX.ORG.RU

Февральские тезисы о планах развития systemd

 ,


2

4

На прошедшей конференции FOSDEM Леннарт Поттеринг огласил некоторые перспективы развития systemd:

  • Интеграция в systemd загрузчика gummiboot, поддерживающего технологию UEFI Secure Boot.
  • machined — менеджер регистрации виртуальных машин, спроектированный под впечатлением от Solaris Zones.
  • В подсистеме nspawn и смежных с ней ожидается больше возможностей для управления контейнерами, например, journald сможет собирать логи не только с хоста, но и с контейнеров.
  • Уже в следующей версии ожидается улучшенная поддержка Btrfs (подразделы и снапшоты Btrfs планируется использовать для изоляции отдельных приложений).
  • Поддержка HiDPI и Юникода в consoled.
  • Сервис-ориентированный фаерволл: можно будет задавать правила в привязке не к номерам портов, а к именам процессов.
  • Отпадёт нужда указывать путь к юниту для systemctl-cat; systemctl-edit позволит редактировать юниты и после сохранения изменений автоматически перезапускать соответствующие сервисы.
  • nss-getmyhostname — функция для получения имени хоста на stateless-системах.
  • Утилита ping gateway позволит автоматически определить все доступные сетевые интерфейсы и проверить их статус командой ping.
  • Развитие networkd и собственной библиотеки для работы с DHCP (совместимой с dhcpv4 и dhcpv6).
  • Комбинирование nspawn и networkd позволит легко конфигурировать сеть для контейнеров.
  • Создание средств для широкого системного аудита, интегрированных в journald. Например, станет возможным логировать все системные вызовы к файлу /etc/passwd.
  • Движение в сторону stateless-систем, у которых только /usr доступен на чтение и запись, а /etc и /var будут автоматически заполняться systemd.
  • journald-remoting — удалённая работа логгера через HTTP. Поддержка в journald моделей pull и push: при pull выполняется запрос HTTP GET для получения потока JSON, а при push данные передаются в другой экземпляр journald при помощи HTTP POST.
  • Возможность определения для сервисов минимальных пространств имён и sandbox-изоляции: доступ к некоторым разделам и каталогам только на чтение, сокрытие устройств в /dev, приватный /tmp для каждого сервиса, и др.
  • timesyncd в качестве замены ntpd.
  • Автоматическое определение разделов GPT, не нуждающееся в указании их в fstab.
  • Поддержка перезапуска демонов без потери их состояния (посредством сохранения оного на диск).

>>> Подробности



Проверено: Shaman007 ()
Последнее исправление: ymn (всего исправлений: 1)

Ответ на: комментарий от Deleted

Либо патчи от товарища П. настолько говно, что их никто из нормальных разработчиков не принимает.

Не факт, что там объем патчей будет меньше чем новый ntp-клиент.
К тому-же, нужно подстраиваться под посторонних людей, для которых этот код будет весьма не первостепенной задачей. Да и тащить целый сервер туда, где нужен только клиент...

Представь себе другой вариант развития событий. Предположим, что LP приготовил патч-сет для ntpd, который:
1) позволяет работать с пустым /etc
2) реализует механизм связи с системд, для получения адресов ntp-серверов и настроек синхронизации времени.

Появляется новость об этом достижении. Хомячки-хейтеры паникуют и негодуют. «АААааа!! Системд съел очередной проект!111» В результате дерьмошторм в почтовой рассылке ntpd. Оно хоть кому-нить нужно?

Подозреваю, что ntp-клиент достаточно простая штука и его проще самим реализовать, нежели ввязываться в кучу флейма, который ныне называется опенсорсом.

kir2yar
()
Ответ на: комментарий от Deleted

так-то да, когда человеку честно говорят, что он дебил, это может показаться ему хамством

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

Alyssa
() автор топика
Ответ на: комментарий от redgremlin

ок

Мне нужны данные со всего лога за каждый день в промежутке от 24:00 до 01:00 Какие варианты?

и да

 /var/log -$ ps aux | grep -v grep | grep journalctl                                                                                         limbo@chemist :)
root     14088 99.6  5.5 1308548 432708 pts/0  R+   21:18   9:53 journalctl -p err --no-pager

[root@limbo log]# journalctl --disk-usage
Journals take up 1.9G on disk.

chemistmail
()

А почему всё заканчивается на «d»?

anonymous
()
Ответ на: комментарий от kir2yar

Подозреваю, что ntp-клиент достаточно простая штука

У Стивенса в «Unix network programming» реализуется в первой главе, там строчек 20.

DELIRIUM ☆☆☆☆☆
()
Ответ на: комментарий от kirk_johnson

Уф. Кошерный способ сделать это называется `библиотека'. Придумали в 60-х.

На том уровне, который обсуживает systemd, «кошерный способ сделать это» называется «запуск демона».

Только Поттерингу за каким-то хреном мало запускать демоны, ему хочется их всех переписать и засунуть в свой git.

Deleted
()
Ответ на: ок от chemistmail

итого

[root@limbo chemist]# time journalctl -p err --no-pager > /dev/null

real	12m39.839s
user	8m34.543s
sys	4m1.467s

и откушало 700 метров оперативной памяти + 100% cpu от одного ядра. а в общем то 2 гига это не большой лог.

chemistmail
()
Ответ на: комментарий от anonymous

А когда будет kerneld ?

видимо, сперва будет biosd, ну или uefid %)

metawishmaster ★★★★★
()
Ответ на: комментарий от DELIRIUM

У Стивенса в «Unix network programming» реализуется в первой главе, там строчек 20.

Так. Стоп. Погоди. У этих хейтеров баттхерт из-за того, что LP не патчил относительно крупный серверный проект ntpd ради того, что бы использовать от туда 20 строчек простого функционала?
Мол, NIH-синдром и так-далее? Дак при таком раскладе, ясен пень, проще свой ntp-клиент написать. Да и разумней.

kir2yar
()
Ответ на: комментарий от redgremlin

Не заходил на лор всего месяцок, а тут такие новости. Тогда вопросов нету.

punya ★★
()
Ответ на: комментарий от Deleted

Эээ. Ты пишешь библиотеку, которая реализует протокол NTP. А дальше чуваки пишут свои обвязки. Хоть демон, хоть плагин для веб-браузера. Это что, правда так сложно?

kirk_johnson ★☆
()
Ответ на: комментарий от kir2yar

Дак при таком раскладе, ясен пень, проще свой ntp-клиент написать. Да и разумней.

This!

DELIRIUM ☆☆☆☆☆
()
Ответ на: комментарий от kir2yar

Появляется новость об этом достижении. Хомячки-хейтеры паникуют и негодуют. «АААааа!! Системд съел очередной проект!111» В результате дерьмошторм в почтовой рассылке ntpd. Оно хоть кому-нить нужно?

Это не технический аргумент.

Подозреваю, что ntp-клиент достаточно простая штука и его проще самим реализовать

Можно перечислить кучу утилит, начиная от ls, заканчивая xprop, которые в своей основе «достаточно простая штука». Можно ожидать, что все они рано или поздно окажутся в systemd, если имеющиеся реализации в чем-то не будут удовлетворять Поттеринга?

Даже если новый ntp-клиент востребован, почему код обязательно впиливать в systemd? И этот вопрос не только к ntp-клиенту относится, а ко всем частям systemd.

Та же OpenBSD ведет кучу собственных под-проектов, но они являются самостоятельными сущностями, которые имеют собственную ценность.

В общем, тут серьёзные проблемы в области организации и менеджмента проектов.

Deleted
()
Ответ на: ок от chemistmail

Мне нужны данные со всего лога за каждый день

Для чего? Читать на ночь вместо подсчёта овец?

Какие варианты?

for + journalctl --since foo --until bar

redgremlin ★★★★★
()
Ответ на: комментарий от Black_Shadow

Какой наркоман засунет systemd в embedded?

сейчас окучиваю какую-то фигню на blackfin, и ихний buildroot предлагает варианты систем инициализации: busybox, sysv, systemd... наркоманы чертовы %)

metawishmaster ★★★★★
()
Ответ на: комментарий от kirk_johnson

Эээ. Ты пишешь библиотеку, которая реализует протокол NTP. А дальше чуваки пишут свои обвязки. Хоть демон, хоть плагин для веб-браузера. Это что, правда так сложно?

Что эээ? Это разные вещи, лежащие на разных уровнях абстракции.

Deleted
()
Ответ на: комментарий от redgremlin

systemd — не система инициализации.

скажи это товарищам из Analog Devices, и пусть они викинут нахрен упоминание о этой поделке - только глаза мозолит :)

metawishmaster ★★★★★
()
Ответ на: комментарий от redgremlin

Для чего? Читать на ночь вместо подсчёта овец?

Не, вполне себе реальный кейс. Судя по мониторингу в это время происходит что то странное, хочется понять и исправить. Для этого мне нужно посмотреть в логах этот промежуток времени.

for + journalctl ок, а чем это лучше текущего grep ... log > result, который кстати гораздо проще в использовании, отработает быстрее, и cкушает меньше ресурсов?

chemistmail
()
Ответ на: комментарий от smith

что ты ему рассказываешь, этот фанатик-первокурсник о реальных задачах только из интерента слышал

anonymous
()
Ответ на: комментарий от Fenrikus

Без Поттеринга Linux давно скатился бы в говно.

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

metawishmaster ★★★★★
()
Ответ на: комментарий от Alyssa

так-то да, когда человеку честно говорят, что он дебил, это может показаться ему хамством

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

Выпускник ПТУ Муходрищенска врывается в тред с правдой жизни.

Всё-таки интернет — великая штука. Где еще можно так здорово пообщаться с представителями иного социального слоя, да?

Deleted
()
Ответ на: Для чего? Читать на ночь вместо подсчёта овец? от chemistmail

for + journalctl ок, а чем это лучше текущего grep ... log > result, который кстати гораздо проще в использовании, отработает быстрее, и cкушает меньше ресурсов?

Я этот вопрос примерно в такой же формулировке задаю иногда фанбоям Поттеринга, мягко при этом напоминая об их рассказах 3-4-годичной давности о том, «как сильно тормозит grep, вот joutnald — другое дело!»

Обычно в ответ только оскорбления слышу. :)

Deleted
()
Ответ на: комментарий от kirk_johnson

Эээ. Ты пишешь библиотеку, которая реализует протокол NTP. А дальше чуваки пишут свои обвязки. Хоть демон, хоть плагин для веб-браузера. Это что, правда так сложно?

Ну, для маааленьких вещей наверное и нет смысла писать отдельную библиотеку. К слову, сейчас погуглил. За вычетом коментов, там реально порядка 30~40 строк кода на си. Можно, конечно и в отдельную библиотеку. Но ИМХО, не особо нужно. Там systemd-спецефичный код явно больше, чем код функционала.

(реализация ntp для андройда) http://stackoverflow.com/questions/10757575/how-to-write-a-ntp-client/1981592...

kir2yar
()
Ответ на: комментарий от Alyssa

Во как материшься. А у самого-то срака сраная.

punya ★★
()
Ответ на: комментарий от anonymous

man я просмотрел, и почитал journal-files

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

А ваше старперы, упоротый и тд, информационной нагрузки не несет. А лишь говорит о вашем воспитании и уме.

chemistmail
()
Ответ на: комментарий от mandala

уже удалил некоторое время назад, не жалею ^^

arcanis ★★★★
()
Ответ на: комментарий от Deleted

Можно перечислить кучу утилит, начиная от ls,

Расскажи это бизибоксу. Который по вашей логике - жирный блоатваре.

Как-бы как раз эти маааленькие вещи, зачастую и встраивают большим комплектом в крупные проекты.

заканчивая xprop, которые в своей основе «достаточно простая штука». Можно ожидать, что все они рано или поздно окажутся в systemd, если имеющиеся реализации в чем-то не будут удовлетворять Поттеринга?

Если будут нужны - то окажутся.

kir2yar
()

Нормально, чо. Зато шелловских портянок не будет. Ага.

anonymous
()
Ответ на: комментарий от kirk_johnson

Ты не понял. Чувакам из ntpd давно стоило выпустить нормальную библиотеку. Даже ребята из openbsd уже libssh пилят.

Ну, вполне возможно. Просто редко какому софту нужен функционал ntp-клиента. Да по сути, фактически никогда нет смысла в более чем одном ntp-клиенте на компьютере. Софту нужно точное время.

Другое дело ssh. Очень много пользовательского и серверного софта так, или иначе, нуждаются в этом функционале.

kir2yar
()
Ответ на: комментарий от kir2yar

Понимаешь, busybox это такая штука, которая работает в embedded (ну и у меня на серверах ntp демоном, но это частности). И там busybox вполне уместен из-за специфики разработки и использования систем. А тут...

kirk_johnson ★☆
()
Ответ на: комментарий от Deleted

Ну оскорбления уже поперли. :)

Я боюсь про snmp заикнуться, в snmpd можно логи в реалтайм грепать и traps слать + количество ошибок мониторить.

Думаю если про snmp заикнуться то будет новый snmp сервер в systemd. А потом когда родить не получится, объявят ASN.1 устаревшим, и будем все мониторить по HTTP и JSON.

А вопрос мониторинга systemd весьма интересный...

chemistmail
()

С интересом наблюдаю. Кончится тем, что в система будет состоять только из двух частей - ядра и systemd. А потом и ядро...

ptarh ★★★★★
()
Ответ на: комментарий от kir2yar

Расскажи это бизибоксу. Который по вашей логике - жирный блоатваре.

Это не по моей логике, а по вашим попыткам ванговать, не понявши мою логику. Бизибокс решает чётко обозначенную задачу. Утилиты в его составе процентов на 90 образуют логическое целое.

Кстати, если хочешь посраться в агрессивной манере, так и скажи. А если не хочешь, не хами.

Если будут нужны - то окажутся.

Вот и я так думаю. И по этой причине субж не нужен.

Deleted
()
Ответ на: комментарий от kir2yar

Ну, что бы при смене времени, системные часы не переводились сразу на +-пару часов, а постепенно, в течении некоторого времени, догоняли/дожидались правильное время?

Зойчем тебе это, мой сумрачный админ?

mandala ★★★★★
()
Ответ на: комментарий от kirk_johnson

Понимаешь, busybox это такая штука, которая работает в embedded (ну и у меня на серверах ntp демоном, но это частности). И там busybox вполне уместен из-за специфики разработки и использования систем. А тут...

А тут есть функционал, который в том или ином виде реализован на 90% дектопов. Но реализован либо вязанкой шелл-скриптов (задачка на задолбайство: перечисли какие скрипты стартуют во время инициализации графической системы современных линуксов), либо суровыми северными программами (от которых ипользуется 1% функционала).
LP просто начал реализовывать систему, которая покрывает все необходимое 95% десктопов/серверов. Да, в одном проекте. Но не в одном исполняемом файле. А как в gnu coreutils. Тем, кому нужно больше - те и полновесный софт поставить не напрягутся.

kir2yar
()
Ответ на: комментарий от mandala

Зойчем тебе это, мой сумрачный админ?

Я еще не придумал. ))

Но в основном, что бы новые записи в журнале не были датированы «задним числом».

А если серьезно, сейчас правильный дефолт +-0,5сек.

kir2yar
()
Ответ на: комментарий от kirk_johnson

Ты совсем упоролся?

Я-то нет. Библиотека предоставляет функции. Демон обеспечивает сервис. Зелёноё и мягкое — разные вещи.

Deleted
()

ping gateway

Шикарно. Запускаешь стандартную утилку пингануть один хост, а получаешь недокументированный WTF на ровном месте.
Безумные люди все-таки.

thesis ★★★★★
()

Сначала у меня слегка взбомбило от того, что Лёньчик переписывает Docker(имеется даже код для импорта докерфайлов), но только в составе systemd(я о machined), однако потом в голове выстроилась следующая цепочка:

  • Хипсторам-девопсам показали systemd-nspawn
  • Хипсторам-девопсам понравился nspawn(ничего устанавливать/настраивать не надо, в дистрибутивах systemd поставляется как готовый продукт™, который практически везде работает одинаково, аргументы вида «УМВР ЧЯДНТ» остаются уделом «ретроградов/хейтеров/маргиналов/whatever»)
  • Хипсторы-девопсы начинают разворачивать разработческую инфраструктуру в nspawn
  • Менеджеры-стартапедики хотят, чтобы их новый модный и сверкающий сервис по поиску партнёра для перепихончика(например) работал уже вчера и приносил бабло/пользовательскую базу, чтобы потом продаться акулам энтерпрайза™ покрупнее
  • Хипсторы-девопсы не хотят лишнее звено в процессе преобразования контейнеров(nspawn->docker), да и зачем, если вся инфраструктура по обслуживанию контейнеров в systemd уже готова?
  • Лёньчик переписывает Docker, но только с завязкой на инфраструктуру systemd

Всё это, конечно, хорошо и славно, но вот такое вот подстилание соломки под каждого хипстора-девопса(менеджер контейнеров, смотрисобака, factory reset, снапшоты) в конечном итоге будет приводить к появлению газиллионов строк некачественного кода, ибо systemd перезапустит, откатит и настроит. Ведь пофиг, что гусыня хромает на обе лапы; главное, что она продолжает нести золотые яйца.

like-all ★★
()
Ответ на: комментарий от thesis

Шикарно. Запускаешь стандартную утилку пингануть один хост, а получаешь недокументированный WTF на ровном месте.
Безумные люди все-таки.

Потому-что правильно так: ping gateway.localnet

kir2yar
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.