ローリングアップデート【rolling update】ローリングアップグレード/rolling upgrade

ローリングアップデートとは?

ソフトウェアの更新、入れ替えの方法の一つで、稼働中のシステムを完全には停止させずに徐々に新しいものに入れ替えていく方式。複数のサーバで構成される環境でソフトウェアを更新する際などに行われる。
ローリングアップデートのイメージ画像

通常、ソフトウェアを更新する際にはシステムを停止して新しいプログラムを導入する必要があるが、サービス提供中のシステムでは停止時間が利用者に影響を与える可能性がある。ローリングアップデートでは、同一のサービスを提供する複数のサーバインスタンスを用意し、そのうちの一部を順番に停止して更新を行い、更新後に再びサービスに参加させる方法を取る。

更新対象のサーバを一台ずつ、あるいは少数単位で入れ替えていくことで、全体としては常に稼働中のサーバが残る状態を保つことができ、利用者から見たサービス停止を最小限に抑えることが可能となる。更新中は旧バージョンと新バージョンが混在した状態で稼働する期間が生じるため、両バージョン間の互換性を事前に確認しておくことが必要になる。

近年では、コンテナ技術マイクロサービスアーキテクチャの普及に伴い、自動化されたデプロイメントの方法としても利用されることが多い。例えば、Kubernetesのようなコンテナオーケストレーションシステムでは、新しいバージョンコンテナを順次起動しながら古いコンテナを段階的に停止することで、サービスを継続したまま更新処理を実行する仕組みが提供されている。

類似する更新手法として、旧環境と新環境を並行稼働させてトラフィックを切り替える「ブルーグリーンデプロイメント」や、一部の利用者やグループにのみ新バージョンを提供して段階的に展開する「カナリアリリース」などがある。ローリングアップデートはこれらと比較してインフラコストが抑えやすい反面、問題発生時の現状復旧(ロールバック)に時間を要する場合があるため、監視体制の整備と組み合わせて運用されることが多い。

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。