LINUX.ORG.RU

Компания SUSE представила систему для обновления ядра без перезагрузки

 ,


3

1

Представленная компанией SUSE система kGraft позволяет выполнить обновление ядра без перезагрузки. В настоящее время аналогичная система Ksplice предлагается только компанией Oracle, но она является проприетарной разработкой. Возможности kGraft ограничены внесением на лету исправлений, не затрагивающих динамически изменяемые структуры данных ядра, но этого вполне достаточно для устранения уязвимостей в ядре и исправления ошибок. Обновление ядра Linux без перезагрузки является востребованной возможностью для серверных и промышленных дистрибутивов, критичных ко времени простоя. В настоящее время свободная и общедоступная реализация такой возможности не предоставляется ядром Linux.

Сейчас kGraft находится на стадии работающего прототипа, требующего доработки. После доработки созданные в рамках проекта наработки будут предложены для включения в состав основной ветки ядра Linux. Компоненты, работающие на уровне ядра, будут открыты под лицензией GPLv2, а выполняемые в пространстве пользователя утилиты, позволяющие создавать патчи к ядру, - под лицензией GPLv3. Средства наложения патчей на базе kGraft ограничены заменой целиком функций и связанных с ними констант. Патч формируется при помощи специального инструментария, на основе анализа исправлений исходных текстов выявляющего подлежащие замене функции и формирующего исходных код модуля ядра с реализацией патча. Cгенерированный модуль загружается в ядро штатными средствами, как и любой другой модуль ядра, после чего выполняет все необходимые действия по внесению изменений в ядро без прерывания работы системы.

>>> Подробности (на английском языке)

★★★★★

Проверено: Shaman007 ()

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

Учебную ситуацию я сам при тестировании создам. В продакшене любая пауза в обслуживании(даже если в договоре они указаны, даже если заранее предупредили) - повод для недовальства клиента. Можно, но зачем?

Как выше отметили, обновление ядра без перезагрузки всей системы очень нетривиальная задача. Много глюков в ней прозреваю я. ИЧСХ глюки с каждой новой версией ядра будут новые. Я лучше вызову запланированное недовольство клиента, чем незапланированный крах с вылетанием в кору.

У любого адекватного клиента пробно-испытательные мероприятия о которых они извещены заранее вызовут больше понимания чем внезапные аврально-спасательные.

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

Замораживает все процессы

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

Buy ★★★★★
()
Последнее исправление: Buy (всего исправлений: 1)
Ответ на: комментарий от ogiel

Много глюков в ней прозреваю я.

Оно только для исправлений, не затрагивающих динамические структуры ядра.

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

Во-первых, существенное различие во времени - на перезагрузку и старт сервисов уйдут минуты при условии, что вообще такой сервер загрузится, как уже сказал Reset, обычно они держатся «на соплях».

Во-вторых, сохранятся открытые соединения, сессии, в общем, полное состояние системы.

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

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

Поживём - увидим. KGraft пока на стадии прототипа. Когда Линус это в основную ветку примет - можно будет смело использовать

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

В hurd так дрова и сделали, чо.

Скажи уж прямо - в QNX :)

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

У нас весь укртелеком построен на Win

весь

sudo nmap -O ukrtelecom.ua

Starting Nmap 6.40 ( http://nmap.org ) at 2014-02-04 20:53 MSK
Nmap scan report for ukrtelecom.ua (82.207.79.152)
Host is up (0.20s latency).
rDNS record for 82.207.79.152: 152-79-207-82.ip.ukrtel.net
Not shown: 996 filtered ports
PORT     STATE  SERVICE
22/tcp   closed ssh
80/tcp   open   http
443/tcp  closed https
3000/tcp closed ppp
Aggressive OS guesses: USRobotics USR5450 WAP (87%), OpenWrt (Linux 2.4.32) (87%), Linux 2.6.24 (87%), Avaya Communication Manager (Linux 2.6.11) (86%), Citrix Access Gateway VPN gateway (86%), Juniper SA4000 SSL VPN gateway (IVE OS 7.0) (86%), Cyberoam UTM firewall (86%), Cymphonix EX550 firewall (86%), Endian 2.3 or IPCop firewall 1.4.10 - 1.4.21 (Linux 2.4.31 - 2.6.22) (86%), Linux 2.6.24 (Gentoo) (86%)
No exact OS matches for host (test conditions non-ideal).

весь

ога, прямо весь.

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

Потому, что предыдущие школьники обошли стороной.

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

Ну тут скорее всего проблема админов а не серверов - допускать эксплуатацию серверов без резервирования/замены.

Не во всех случаях failover можно сделать быстро и без потерь для бизнеса.

rtvd ★★★★★
()

ну наконец-то. интересно, когда ждать в дебиан.

chg ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Да. Пульт управления тоже не особо нужен, если так думать.

ihappy
()

А что слышно по RT-ядрам? Какой реальный профит от обновления без перезагрузки?

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

ога, прямо весь.

Я видел и изучал проектную документацию. Весь.

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

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

возможно. только почему бы не дать им утилиту, если она есть?

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

почему никто не вспомнил о kexec?

Потому что kexec не обновляет ядро без перезагрузки, очевидно.

AptGet ★★★
()

Ежели сервис требует 24/7 - нужен кластер. Остановка одного узла некритична. Поэтому его спокойно выводят, чистят, апгрейдят, тестят и вводят заново. Сабж практической ценности не представляет.

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

Оно имеет преимущества перед ksplice кроме открытости, или это можно рассмотреть как NIH? Если преимуществ нет, то планируются ли технические нововведения?

А разве ksplice закрытый?

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

Ну на это можно и с другой стороны посмотреть: что это за херня вообще такая — перезагружать компьютер? Зачем?

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

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

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

А вообще самым лучшим способом был бы содержание двух ядер в памяти с плавным переходом сервисов на второе ядро.

Лучше 3, чтобы сразу raid 5 сделать.

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

в других системах, работающих 24/7 должна быть система дублирования и резервирования

Если один из серверов у тебя находится на длительном обслуживании, то тебе нужно резервирование N+2, то есть если тебе нужно одно работающее устройство, то покупай три. Если длительного обслуживания нет, то достаточно N+1, то есть двух.

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

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

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