現在位置: ホーム / OSSブログ / Kernel4.0で注目をあつめるライブカーネルパッチ機能

Kernel4.0で注目をあつめるライブカーネルパッチ機能

2015年4月12日にリリースされたLinux Kernel 4.0からライブカーネルパッチの機能が組み込まれました。 サイオスでは以前よりライブカーネルパッチの機能を紹介していましたので、情報をまとめてみたいと思います。

こんにちは、村田です。

2015年4月12日にリリースされたLinux Kernel 4.0 にライブカーネルパッチの仕組みが組み込まれました。ライブカーネルパッチとは、システムでは再起動を行うことなく、Linux Kernel にパッチを適用することができる機能です。

昨年のShellShockなどでカーネルのバージョンアップの際の再起動が運用に大きな影響があることを痛感した方も多いのではないでしょうか。システムを再起動するということは、システムを停止させるタイミングを事前に調整しなければなりませんし、システムの電源ON/OFFには2次災害的なシステム障害が発生することまで配慮しなければなりません。ライブカーネルパッチに対応したシステムであれば、カーネルの脆弱性や不具合が確認された場合でもシステムを再起動することなく、パッチを適用・反映させることができます。

既にいくつかのLinuxディストリビューターではライブパッチ機能に対応してることはご存知でしょうか?
Oracle Linux, SUSE は下記のようにサイオスでも情報を公開中です。

Oracle Linuxのエンタープライズ向けのソリューション「Ksplice」

主要Linuxディストリビューターでいち早くライブパッチ機能を提供したのがOracle Linuxです。
2011年7月にホットパッチ技術を提供する「Ksplice」社を買収し、自社が展開するOracle Linux のPremier Supportの契約者向けに提供しています。Kspliceでは、ユーザランドのプログラムが呼び出すsystem callテーブル中の関数のジャンプ先(ポインタ)がRAM上に配置されており、書き換え可能になっているという特性を利用しています。

詳細は以下の記事にて紹介をしておりますので、ご参照ください。

URL:http://oss.sios.com/oracle-ch/ksplice

「ダウンタイムゼロへの挑戦」 SUSE Linux Enterprise 12 登場

次にSUSE Linux でもライブパッチ機能の提供を開始しております。
SIOS OSSポータルサイトのSUSE Ch.の記事"「ダウンタイムゼロへの挑戦」 SUSE Linux Enterprise 12 登場"の中で以下のように語られています。

ライブパッチを実現する機能は、kGraftが利用されています。kGraftはSUSE Labsの研究開発プロジェクトとしてスタートしたものですが、これをオープンソースとして一般公開しました。他のLinux技術を有効活用することで、kGraft自体のコードは少量で実装しており、Linuxとの高い親和性、安定性、信頼性を持つライブパッチ機能として、評価されています。SUSEでは、SUSE Linux Enterprise Live Patchingとして提供します。システム停止が許されないミッションクリティカルシステム、一度システムを停止すると再度メモリー上にデータを展開するまで時間を要するメモリーデータベース、長期間実行するシミュレーションなどに活用できます。

URL:http://oss.sios.com/suse-ch/downtime-zero

Red Hatの「Kpatch」も Red hat Enterprise Linux 7.1 からテクノロジープレビューとして含まれましたので、今後の展開が期待されます。