web-dev-qa-db-ja.com

本番サーバーでの自動更新

最近、Shellshockなどでエクスプロイトが増えているのを見て、本番サーバーでの自動更新に関する人々の意見は変わりましたか?

そして、これらを実行するための最良の方法は何でしょうか? crontabを次のようにチャックするだけです:yum -y update

または、yum-cronまたは代替を使用しますか?

ありがとう!

3
Shiv

自動更新を実行できるのは、適切なテスト環境と、バグをキャッチするために必要な時間をかけて本番前にテストを更新する方法がある場合のみです...非常に多くの変数が使用されているため、堅牢なテストシステムが必要です。

1
Jacob Evans

私の経験では、allこれらの条件を満たしている場合:

  • centOSまたはRHEL(バージョン6または7)を使用している
  • ダウンタイムウィンドウをスケジュールし、更新のたびに再起動します
  • アプリケーション/サービスは自動的にservice stopおよびstartを実行できます
  • サーバー上でOSをクリーンに保ちます
    • オフレポRPMをインストールしません
    • rpmforgeのような非推奨のリポジトリはありません
    • 手動で変更することを想定していないファイルを手動で変更することはできません)
    • 他の多くのもの-ベンダーがテスト環境で予測する可能性が低いものは何でも
    • あなたは前の管理者がこのようなことをしなかったと確信しています

これらすべてにより、yum updateで問題が発生するリスクが最小限に抑えられます。このような状況で、個人的にはまだサービスの誤動作は見ていません。したがって、実際には、可用性が低下するという許容可能な(?)リスクで、OSをより安全に保つことができます。

Ubuntu、そこには悪い経験はありませんが、私はそれらをいくつか持っているので、それらを保証するのに十分な統計データがありません。

リスクをさらに軽減するために、次のものを追加で含めることができます。

  • サービスが実行され、望ましい肯定的な結果を達成しているかどうかをチェックする監視ツールを採用する
  • ダウンタイムウィンドウ内でまだのときに修復を開始および終了できるように、通知をスケジュールします
  • クラスタリングを採用する(pcsなど)
    • セカンダリノードを更新し、再起動し、今すぐプライマリにするなど。
1
kubanczyk