Serverfaultコミュニティの実稼働環境での Ksplice の経験を聞いてみたいと思います。
ウィキペディアからの簡単な宣伝文:
Kspliceは、Linuxカーネルの無料のオープンソース拡張機能であり、システム管理者は、オペレーティングシステムを再起動しなくても、実行中のカーネルにセキュリティパッチを適用できます。
そして
Kspliceは、カーネルを再起動せずに、カーネルコードを変更するだけでよいソースコードパッチを適用できます。他のホットアップデートシステムとは異なり、Kspliceは、統合された差分と元のカーネルソースコードのみを入力として受け取り、実行中のカーネルを正しく更新します。これ以上の人的支援は必要ありません。さらに、Kspliceを利用する場合、システムを最初に起動する前に準備する必要はありません(たとえば、実行中のカーネルを特別にコンパイルする必要はありません)。更新を生成するために、Kspliceは、カーネル内のどのコードがソースコードパッチによって変更されたかを判別する必要があります。
だからいくつかの質問:
安定性はどうでしたか?カーネルの「リブートレスライブパッチ」で発生した奇妙な問題はありますか?カーネルパニックまたはホラーストーリー?
私はいくつかのテストシステムで実行しており、これまでのところ宣伝どおりに機能していますが、「オールイン」して本番サーバーにデプロイする前に、他のシステム管理者がKspliceでどのような経験をしたかに興味があります。
では、Kspiceを本番環境で使用している人はいますか?
update:うーん、数時間後にこの質問に対する実際のアクティビティは表示されません(いくつかの種類の賛成票とお気に入りを除く)。たぶんsparkいくつかのアクティビティ私はさらにいくつかの質問をして、この議論を進めることができるかどうかを確認します...
「Kspliceをご存知の場合、使用していない理由はありますか?」
「まだ証明されていない、またはテストされていない、まだエッジが出血しすぎていると感じますか?」
「Kspliceは現在のパッチ管理システムにうまく適合しませんか?」
「稼働時間が長い(そして安全な)システムが嫌いですか?」 ;-)
(まず、免責事項:私はKspliceで働いています。)
当然のことながら、自社の本番インフラストラクチャで使用していますが、さらに重要なのは、500を超える企業顧客(2010年12月現在の数)でも使用していることです。
1人のシステム管理者がRed Hat Enterprise Linuxユーザーのメーリングリストで同じ質問をします そして、いくつかの回答があります。そのうちのいくつかを以下に抜粋します。
Kspliceは、数か月間、数十のホストで本番環境で実行されています。これまでのところ、宣伝どおりに機能します。
そして
私は500台を超えるマシンを管理しており、そのうち約445台がアップトラックに接続されています(rhel 4および5)。マシンを再起動する前に、kspliceを使用していくつかのルートエクスプロイトをブロックしました。まだテスト中なので、とにかく新しいカーネルをロールアウトしましたが、何週間も問題なくkspliceを実行しました。
人々が表明した懸念の1つは、安定性ではなく、既存の監査および監視ツールとの統合です。
Kspliceの使用に関する唯一の「落とし穴」は、「ksplice対応」の監査ツールがまだ利用できないことです。
ご想像のとおり、これは現在、私たちが多額の投資を行っている分野です。
Kspliceのことを聞いたとき、それはいい考えだと思いました。ダウンタイムなし、再起動なし。しかし、それから私はそれをもう少し調べて、それを試すのが怖くなりました。
それを避ける私の理由は次のとおりです。
Linuxカーネルはすでに非常に複雑です。 Kspliceは複雑さを増します。より複雑な=より多くの失敗。
リモートサーバーでKspliceを試してみるのは無謀で、障害が発生すると長いダウンタイムとコストのかかる修復が発生します。
私の場合の唯一の利点は、稼働時間の統計が高くなることです。
私はホームサーバーでKspliceを使用しています(稼働時間は重要ではありませんが、便利です)。まったく問題はありませんでした。Aptを介してクライアントに時折更新され、カーネルの更新自体に問題が発生することはなく、(顕著な)不安定性もありません。
ただし、通常の「YMMV」免責事項が適用されます。 ;-)
Kspliceはオープンソースのカーネル拡張機能ですが、このソフトウェアは無料で誰でも使用できますが、Linuxパッチ管理を行う会社(「Ksplice」とも呼ばれます)によって特別に作成されていることに注意してください。 Ksplice(カーネルmod)は、カーネルにkspliceで使用可能なパッチがある場合にのみ実際に役立ちます。これは、Ksplice(会社)とのサポート契約がない限り、おそらく表示されることはありません。
したがって、ksplice(ツール)はかなり成熟していますが、パッチ管理にKsplice(会社)を使用することを検討している場合にのみ、実際に関係があります。
良い質問。私の最初の応答は、 "なぜdo私はこれが必要ですか?"の線に沿ったものになります
ほとんどの場合必要ありません。ファイブナインセットアップでも、「スケジュールされたメンテナンス」は、多くの場合、この種のダウンタイムを可能にするSLA)の句です。HAセットアップがある場合は、フェイルオーバーに切り替えて、インストールします。一方のボックスでカーネルを再起動し、もう一方のボックスで繰り返します。ボックスで5分間のダウンタイムさえ許容できない場合は、とにかくフェイルオーバーのセットアップが必要です。
それは新しい技術ですが、私はまだそれの実用的な使用をあまり見ていません。もちろん、カーネルのセキュリティ更新は必要であり、できるだけ早くパッチを適用する必要がありますが、これにより、新しいカーネルをインストールして再起動するよりも、どれだけの時間/労力/心配を節約できますか?何か問題が発生した場合はどうなりますか? PXEタイプのリカバリオプションを利用できる幸運なことに、システムを再イメージングすることでどれだけの時間が失われましたか?
また、前述のように、このようなテクノロジーをリモートで実験すると、複数のサーバーで問題が発生した場合に大惨事になる可能性があります。テストでは、DCとまったく同じハードウェアを使用していますか?あるマシンでNiceを再生するものは、別のマシンではNiceを再生しない場合があります。
ちょうど私の0.02ドル。