Russian Fedora

cообщество русскоязычных участников
международного проекта Fedora

Новости виртуализации

За недавнее время в виртуализации произошло много нового. Во-1 поздравляем наших друзей ksys labs с выходом версии 13.11 фреймворка Genode, для сборки микроядерной операционной системы. В этой версии, помимо все прочего, улучшена поддержка Qt5. Коллеги-аналитики уже обсудили новость на OpenNET.ru

Наши друзья из Parallels выпустили CRIU версии 1.0. В репозитория Fedora его изначально включили, как crtools, но недавно, по случаю выхода новой версии, наконец-то переименовали в criu.

В версии 1.0 в общем радикально новых вещей не было, и номер означает лишь пригодность к реальной работе (вы, кстати, уже могли слышать, что приложение уже используют). Парни на лаврах не почивают, и развивают проект дальше - в планах сделать CRIU модульным, с системой плугинов, что поможет с dump/restore сложных приложений, когда знание business-specific деталей работы приложения может помочь более эффективно его дампить. Для начала планируется создать дополнения для обработки приложений с соединениями с D-BUS и systemd, затем работающие с блочными устройствами.

Месяц выдался богатым на новые гипервизоры. Сначала разработчик Qemu, инженер Siemens, Jan Kiszka, объявил о выходе нового гипервизора, Jailhouse, предназначенного для запуска real-time приложений и операционных систем внутри Linux (новость уже обсуждается на OpenNET.ru).

Затем Xen Project объявил о выпуске написанной на Ocaml системы виртуализации - Mirage OS, работающей поверх Xen, и метящей в ту же нишу, что и OSv от Cloudius Systems, но предлагающей разрабатывать целевое ПО на Ocaml. Коллеги-аналитики уже обсуждают маркетинговые перспективы системы на OpenNET.ru. А мы сейчас обсуждаем возможность выступления на нашем следующем ивенте представителя Cloudius Systems, с обзором перспективных систем виртуализации, так что не пропустите.

Отступив от темы виртуализации, наш коллега, Rich W.M. Jones постоянно заявляет, что ставка на Ocaml, это не так и плохо. Ему часто задают вопросы, почему virt-builder написан на Ocaml? И наконец-то он написал пост об этом. Сразу сообщим заключительный вывод автора - Ocaml, это хорошо, а если вы программист, но не понимаете его, то вам нужно сменить профессию на более соответствующую вашему низкому уровню интеллекта. Так то.

/images/okay_guy.jpg

Возвращаясь к виртуализации - разработчики OSv, Cloudius Systems, присоединились к Linux Foundation. Поздравляем!

В Fedora, наконец-то, включили Docker! Пакет называется docker-io, т.к. имя docker уже было занято какой-то никому не нужной утилитой для замшелого window manager из 1990х. Для включения пришлось закрыть 19 багов. Включили недавно вышедший релиз 0.7, в котором благодаря Red Hat больше не требуются Ubuntu-специфичные патчи для ядра. Участник проектов GNOME и Fedora, Alexander Larsson, дал интервью, в котором рассказал, как протекал процесс включения в Fedora, зачем это было нужно, и как это изменит обычный процесс работы с виртуальными машинами (в пользу контейнеров).

Вообще, именно с Docker связывают свои надежды довольно много людей. В нем видят подход к безопасности виртуализации будущего или даже будущее Cloud-технологий. Недаром на прошедшем в Гонконге OpenStack саммите к проекту был проявлен заметный интерес. Тем не менее, традиционный Qemu/KVM свое еще покажет, и у нас есть кое-какие новости.

До нас дошли слухи, что один из больших пользователей Xen решил начать переход своей инфраструктуры на Qemu/KVM, и этот переход будет фатален для всего проекта Xen. Если мы в ближайшее время услышим подтверждение тому, что сказал нам наш скромный и нетщеславный информатор, то мы обязательно назовем имя компании. Это, конечно, непроверенная информация, но отказ от Xen в пользу Qemu не может не радовать.

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

Разработчик Kernel и Qemu/KVM, бывший инженер Red Hat и нынешний разработчик компании Cloudius Systems, Avi Kivity дал интервью, в котором рассказал, насколько сложно или просто было добиться включения KVM в kernel.

После его ухода проект не потерял в динамике, и недавно инженер Amazon, бывший инженер IBM, Anthony Liguori, объявил о выходе Qemu версии 1.7. В этой версии было внедрено довольно много интересного:

  • В гостевых системах PowerPC теперь поддерживается дамп памяти
  • Улучшена поддержка USB 3.0
  • Создание ACPI таблиц налету внутри QEMU, что позволит в будущем добавлять новую функциональность без пересборки firmware
  • Поддержка Suspend-to-RAM для гостевых систем Xen HVM
  • Новый алгоритм ограничения и регулировки (throttling) пропускной способности для блочных устройств
  • Поддержка freeze/thaw файловых систем в гостевых системах Windows
  • TCG теперь поддерживает любимую некоторыми гентушниками x32 ABI

Обязательно ознакомьтесь с полным списком изменений.

И тут же проект начал работу над фичами версии 2.0. Antony кратко рассказал о них в своей презентации на CloudOpen 2013. Если кто-то пропустил, то вот его презентация и видеозапись его выступления. Это, конечно, пока по большей части планы, но одно можно сказать определенно - раз IBM пообещал, что в 2014 году Qemu/KVM будет работать на микропроцессорах архитектуры Power, то это точно будет. Раньше они с Power продавали свой проприетарный PowerVM, но похоже, что в лесу что-то произошло.

И забавная новость. В то время, как открытые стандарты (ну, хотя-бы гибридные) виртуализации и облачных технологий захватывают рынки, от Microsoft разбегаются немногочисленные пользователи их виртуализационных решений. Проблема в том, что обилие угроз в адрес пользователя в договорах и лицензиях на продукты Microsoft приводит к тому, что даже если щедро оплатить все из них, то становится просто непонятно, не нарушишь ли ты очередной закон, сделав что-нибудь на базе купленного задорого решения.

/images/The_Seven_Deadly_Sins__AVARICE_by_blackeri.jpg

Daniel Stenberg теперь работает в Mozilla Foundation

Известный разработчик и создатель таких проектов, как cURL, libssh2, c-ares, Rockbox, участник Debian Community, сообщивший нам и сам исправивший не одну ошибку в Fedora, Daniel Stenberg, в своей ленте Google+ объявил, что с января 2014 будет работать в Mozilla Foundation над сетевой подсистемой Firefox.

С радостью присоединяемся к поздравлениям! Daniel, это очень ценное приобретение для коллектива разработчиков MoFo, и мы не сомневаемся, что положительные результаты этого мы увидим уже в 2014 году.

Coreutils 8.22

Наш коллега, мэйнтейнер coreutils, инженер Red Hat и участник Fedora Pádraig Brady объявил о выходе coreutils версии 8.22 (предыдущая версия 8.21 вышла в феврале 2013го). Новость уже обсуждают аналитики ведущего российского сайта о Linux и открытом ПО, Linux.og.ru.

На текущий момент в репозиторияx Fedora доступна лишь предыдущая версия, и пока неизвестны планы мэйнтейнеров на эту версию.

ARM64, т.е. AArch64, и непростой путь перехода ARM на новые стандарты

Это архивная статья

Как вы могли заметить, в RHEL 7 забросили поддержку 32-битных микропроцессоров, в т.ч. x86. К сожалению, это означает, что для 32-битных ARM RHEL 7 не будет. Конечно, неофициальные пересборки будут существовать, но официально Red Hat будет заниматься только 64-битным ARM, вся архитектура которых спроектирована с участием нашего коллеги, инженера Red Hat, участника Fedora ARM SIG Jon Masters.

Коммьюнити тяжело принимало рекомендации Red Hat - ACPI, UEFI, как обязательные стандарты для ARM. Очевидные недостатки ARM-систем (не микропроцессоров, а систем, построенных на базе лицензируемых у ARM Holdings технологий) некоторыми виделись, не как недостатки, а как преимущества - свобода выбора и свобода реализации. В принципе так оно и есть, потому что любое следование стандартам и правилам, это отказ от некоторых свобод. Но понятно, что это не то, что нам, как разработчикам дистрибутива, и нашим коллегам, разработчикам и архитекторам серверных платформ, хочется. Заметьте, очень характерно то, что не существует ARM-дистрибутива - есть ARM-сборки для той машинки, для другой, для третьей, и т.п., с зачастую общим userland, но различными ядрами, и методами установки и последующей загрузки. Как курьез можно привести архитектурное решение, использованное в Raspberry Pi - в процессе загрузки используется видеопроцессор.

Стандартизация ARM-систем, начавшаяся с Device Tree и unified kernel и продолжившая с UEFI, ACPI была принята разработчиками дистрибутивов как манна небесная, хотя разработчики ядра и были недовольны свалившейся на них работой и новыми проблемами.

Так или иначе, вроде коммьюнити в целом успокоилось по поводу перехода на новые стандарты, как вдруг все началось снова. Мы уже говорили, что инженер Google, Olof Johansson, был недоволен ACPI-кодом, но свое недовольство он выражал в ленте Google+. Внезапно он написал в мэйллист пост, в котором предложил вообще отказаться от ACPI в ARM.

Вместо него он предложил разработать тонкую прослойку перед ядром, которая бы читала ACPI-таблицы, и формировала бы на ее основе DeviceTree. Чуть позже, он предложил кое-что еще более удивительное - подождать, пока Microsoft отладит и допишет стандарт на ACPI для ARM.

У многих в этот момент, при словах "Майкрософт разработает стандарт", проснулись болезненные воспоминания - Russell King и Mark Rutland почти одновременно высказались о том, что было б очень наивно ожидать, что Microsoft разработает хороший открытый стандарт, который потом можно будет беспроблемно реализовать в открытом ПО. Russel высказался еще об одном моменте - сейчас Linux доминирует в ARM-мире, и отдавать это преимущество просто потому что кто-то из разработчиков Google не хочет следовать стандарту, стратегически неверно. К диалогу присоединился Jon Masters и мастерски завоевал всеобщую любовь, сказав, что решать уже нечего, т.к. серверные производители у себя, за речкой, все давно решили в пользу ACPI, потому что ваш DT - глючный отстой, [STRIKEOUT:и сами вы все дураки]. Чуть позже он закрепил успех сказав, что Red Hat тоже хочет ACPI на ARM, хотя не планирует выпускать коммерческий продукт в ближайшее время, так что разработчикам ARM надо все переписывать с DT на ACPI прямо сейчас. Проблема усугубилась тем, что оказалось, что Jon подписал какое-то адское NDA, запрещающее ему рассказывать публично, что же такого хорошего в ACPI по сравнению с DT? С таким вот настроением разработчики приступили к обсуждению того, все таки, как работать ядру с ACPI на ARM? Основные проблемы в том, что ACPI - это немаленькая (особенно по меркам разработчиков ARM) виртуальная машина в ядре, и в том, что реализация еще очень далека от стабилизации.

Идея Olof о трансляции ACPI в DT, хотя и будет работать в каких-то случаях, не будет работать, когда в ACPI будут использоваться скрипты на ACPI Machine Language (AML), порой используемые для инициализации сложного оборудования. Увы, но аналогов в DT просто нет. Так или иначе придется реализовывать ACPI для ARM, и теперь уже понятно, что этот скандал был не последним в LKML - впереди еще UEFI.

Корни сложившейся ситуации в том, что в организациях, ответственных за стандарты ARM, из авторитетных Linux-компаний есть лишь Red Hat и коллектив участников Linaro. Пока коммьюнити радовалось свободе выбора и сотням форков Linux - по одному на каждое ARM-устройство, индустрия требовала стандартов, и недождавшись конструктивного диалога с любителями "поковыряться с девайсом", решила двигаться сама. Хорошо хоть вес Red Hat в Linaro Enterprise Group сделал свое дело, и коммьюнити постепенно начало переходить к стандартизированным технологиям.

Вдоволь наругавшись, начали писать код. Недавно инженерами Linaro была добавлена возможность загрузки ядра с UEFI, реализованы сервисы UEFI, и включен базовый функционал ACPI для ARM64. Этак дело пойдет, и не придется пересобирать ядро 2.6.17.4 и старые версии U-Boot с out-of-tree патчами!

XFS в RHEL 7

Многие коллеги-аналитики выразили свои сомнения в целесообразности перехода на XFS по умолчанию в RHEL 7. Возражения разделились на две части - медленная работа с множеством маленьких файлов и потери данных при авариях. С первым пунктом разобрались еще в прошлом году, а вот по авариям - мы уверены, что пользователям надо бы следить за физическим состоянием жесткого диска, и не повторять легенды времени включения XFS в Linux.

Кстати, развитие XFS почти полностью ведется инженерами Red Hat (как и всегда, они развивают ключевые Open Source продукты, используемые в их продуктах), и если кто пропустил, в ноябре была интересная история.

Несмотря на почти половину всей работы над файловой системой, инженер Red Hat, Dave Chinner не был ее мэйнтейнером. Система формально была под контролем компании SGI - мэйнтером числился инженер SGI Alex Elder, и, вероятно, была еще скрытая от нас иерархия принятия решений в самой компании SGI.

Неожиданно, еще один инженер SGI, Ben Myers, выступил с инициативой - сменить мэйнтейнера с ушедшего от них разработчика на другого работника компании. Шаг вполне понятный - компания хочет сохранить управление над проектом.

Но не тут то было! Разработчик Red Hat, Ric Wheeler обратил внимание коммьюнити, что это не очень демократично, и что у продвигаемого будущего мэйнтейнера всего два десятка патчей, относящихся к файловой системе. В принципе и у старого мэйнтейнера тоже было с три дюжины патчей, но это всех устраивало.

Фишка в том, что все управленческие изменения в OSS-коммьюнити происходят согласно правилу меритократии. Т.е. тот, кто пишет код, тот и решает - именно поэтому Red Hat скупает разработчиков, и именно поэтому участники Fedora Community решают, в состав чего войдет udev.

Несогласные, конечно, могут форкать, но дело в том, что их не слушают именно потому, что они пишут мало кода, и практика показывает, что после враждебного форка, кода от них будет также ничтожное количество. В общем понятно, что так, как хотелось бы в невидимой нам управленческой иерархии SGI, приказом по отделу, у нас дела не делаются.

Возвращаясь к XFS - после изучения git log, выяснилось, что есть два лидера. Это разработчик Red Hat, Dave Chinner, и Christoph Hellwig, бывший сотрудник SGI, продолжающий работу над файловой системой. Среди них и предстояло бы выбирать, но Christoph взял самоотвод в пользу Dave, и инженер Red Hat, наконец-то получил контроль над развитием XFS.

Как раз перед релизом RHEL 7! Интересно, что коллеги-аналитики с иностранных сайтов заподозрили тут заговор известно кого, с понятно какой целью, хотя тут все просто - если хочешь контролировать разработку, то напиши с четверть или больше патчей.

Новости systemd за прошедший месяц-полтора.

Это архивная статья

Выход RHEL 7 Beta c systemd не стал для нас новостью, но за этот месяц были и другие примечательные systemd-события.

Наконец-то вышел первый полноценный мобильный телефон на базе systemd от компании Jolla. Ну, если по-честному, то 450 экземпляров первой партии выглядит не очень внушительно, но это уже значит, что Jolla продвинулась в бесконечное количество раз дальше, чем другая компания, показывающая рендер мифического смартфона, щедро приправленный подмигиваниями о ведущихся переговорах с неназываемыми производителями. Если говорить о конкурентах Sailfish, то к сожалению, systemd пока не используется в Anroid - у Google пока нет заинтересованных в этом инженеров, зато он уже используется в Tizen.

Сетевые возможности systemd были расширены. Теперь systemd умеет создавать bridge, спасибо разработчику Arch Linux, Tom Gundersen. Кстати, в NetworkManager эта фича ожидается лишь в Fedora 20, т.е. в других дистрибутивах можно ожидать лишь к лету-осени 2014 года.

Разработчики проекта CoreOS продолжают расширять функциональность systemd. До сих пор его возможности для интеграции в кластерную систему были незначительны - так, встроенный HTTP-сервер, чтоб получить логи, запуск виртуальных машин и контейнеров с помощью socket activation. Вот и все, что вспоминается навскидку. Это, конечно, не удовлетворяет запросам инженеров сложных систем, состоящих из десятков и сотен тысяч контейнеров, на которых и ориентируется проект CoreOS. Именно поэтому в рамках проекта был написан на golang еще один компонент - coreinit. Это надстройка над etcd и systemd для управления процессами в виртуальных машинах и контейнерах. Если вам раньше требовался SSH-доступ (или иной shell-access) на виртуальную машину, то теперь это не нужно. Вряд ли приложение будет включено в состав systemd, но в перспективе его функциональность может быть частично перенесена.

Kay Sievers в своей ленте G+ объявил, что kdbus уже можно пробовать, и выложил инструкцию (с логом) запуска тестового контейнера с systemd и kdbus.

Lennart Poettering чуть более подробно рассказал о текущей ситуации.

Почти все работает, кроме одного важного момента - нет разграничения по пользователям. Прямо сейчас в kdbus регистрировать имена может лишь суперпользователь, а простые юзеры могут посылать кому угодно какие угодно сообщения. Это, разумеется, проблема. Еще он переводит kdbus на использование GVariant в качестве внутреннего формата, и в этом ему помогает один из немногих разработчиков Canonical - Ryan Lortie. Интересно, что критика подходов, применяемых в systemd, со стороны Canonical как-то подутихла - вероятно из-за того, что они наконец-то разобрались в техническом превосходстве systemd и теперь заняты бэкпортированием фич из systemd в Upstart, ну и потихоньку втягиваются. Это здорово.

В то время, как инженеры Canonical втихомолку от своего главаря сотрудничают с нашими коллегами, Debian продолжает биться в корчах. Как вы знаете, Debian теряет свои позиции в пользу более динамичных RHEL/Fedora или даже Ubuntu. Все понимают это, и нынешний лидер проекта Debian, Lucas Nussbaum, разумеется, тоже в курсе. Debian, это стабильность в смысле "окаменелость", и никто уже давно не ожидает увидеть там новые технологии. Переделать это крайне сложно, т.к. шумные любители юниксвэя парализуют спамом и персональными атаками любое взвешенное обсуждение на тему, а т.к. разработчики OSS люди ранимые и пугливые, то нужные шаги просто не совершаются. А делать что-то надо. Последнее обсуждение того, на какую систему инициализации переходить, systemd или Upstart, (разумеется, отказавшись навсегда от бессмысленных поигрушек с просто неработающими или отстающими на декаду ядрами, типа Hurd или FreeBSD), превратилось в фарс, наподобие российских выборов - участники Debian, перепуганные грузом ответственности, брать которую просто разучились, самоустранились, передав право решать техническому комитету, почти наполовину состоящему из людей, имеющих коммерческий интерес в одном из двух вариантов. Нам очень тяжело смотреть на все это, как дети и внуки смотрели бы на погружающихся в болото старческой деменции родителей.

Lucas, осознавая свое бессилие переломить ситуацию по превращению когда-то самостоятельного и авторитетного проекта в тестовый полигон коммерческой компании, сделал последнее, что мог - ввел в состав технического комитета известного разработчика XFree86/X.org, архитектора графических пoдсистем Unix, начиная от X11 и заканчивая Wayland, Keith Packard. Мы уже говорили, что Keith технически грамотно смотрит на архитектуру Unix, поэтому можно ожидать от него незаполитизированного мнения, которое может переломить тенденцию сползания проекта на третьи роли. Ну что, посмотрим.

Вышла Fedora 19 Enterprise, т.е. RHEL 7 Beta!

Это архивная статья

На Linux.org.ru сообщают коллеги-аналитики, что релиз основан на Fedora 19, а среди основных изменений:
  • Ядро 3.10
  • Дефолтная файловая система - XFS
  • Поддержка Ethernet 40G
  • Поддержка работы openLMI, интеграция с AD при помощи samba 4.1
  • systemd вместо upstart
  • дефолтный десктоп - gnome classic 3.8.5
  • обеспечена бесшовная миграция виртуальных машин c хостов на rhel6

С удовольствием обновляемся!

Неформальная юбилейная встреча в Москве 23-го ноября 2013

Это архивная статья

У нашего сообщества завтра пятилетний юбилей, и мы отметим это в субботу, 23 ноября, в 14:00, в Пилзнере на Маяковской.

В качестве дополнительного стимула - к нам доехали из Брно несколько кружек и бейсболок с лого Fedora.

Go Moscow Meetup

20 ноября в Яндексе пройдёт очередная встреча московского Go-сообщества. Специалисты по Go, начинающие Go-разработчики и все, кто интересуется этим языком, услышат доклады о его использовании в разных проектах, смогут пообщаться и обменяться опытом.

Программа:

  • `Golang и Fedora

    System Message: WARNING/2 (<string>, line 8); backlink

    Inline interpreted text or phrase reference start-string without end-string.

System Message: WARNING/2 (<string>, line 9)

Bullet list ends without a blank line; unexpected unindent.
<http://tech.yandex.ru/events/yagosti/go-msk-meetup/talks/1454/>`__ - Петр Леменков, Fedora Project

System Message: WARNING/2 (<string>, line 11)

Block quote ends without a blank line; unexpected unindent.

Участие бесплатное, но зарегистрироваться необходимо.

20 ноября, в среду, с 18:30 ждем участников по адресу: Москва, ул. Льва Толстого 16, офис Яндекса, зал Экстрополис.

Количество мест ограничено. Если вы зарегистрировались, но не сможете прийти, – пожалуйста, сообщите нам об этом заранее.