CubeCOSにおけるワンクリック更新・アップグレードの概要
Overview
バージョン3.1.0以降、CubeCOSにはローリングアップデートおよびアップグレード機能が搭載されています。 この機能は、クラスタのスケジューリングとメンテナンスを自動化し、マルチノード環境の運用を簡素化するとともに、デプロイメントのリスクを低減します。
- アップグレードの種類:
- 修正パックの更新:パッケージを更新します。そのほとんどは、コンポーネントの一部に関するものです。 通常、これらの更新によってシステムの動作が中断されることはありません。
- ファームウェアの更新:オペレーティングシステム(OS)をアップグレードします。 この処理中に影響を受けるノードは再起動するため、一時的にシステムのパフォーマンスに影響が出ます。
- バージョンに関する注意事項:バージョン3.1.0より前のバージョンからアップグレードする場合は、CLIアップグレードガイドに従ってください。
- 重要:アップグレードを確実に成功させるためには、この記事および次のセクションに記載されているすべての手順を確認する必要があります。 作業を進める前に、システムから提供されるすべての情報をよく確認してください。
:::info[Prerequisite]
ワンクリックでの更新およびアップグレード操作は、CubeCOS 3.1.0以降のバージョンでのみサポートされています。
:::
更新とアップグレードの種類
CubeCOSでは、アップグレード/アップデートを、オペレーティングシステムへの影響およびアップグレード/アップデートの仕組みに基づいて、2つのタイプに分類しています。
| 機能 | ファームウェアのアップデート | 修正パッチの更新 |
|---|---|---|
| 方法 | イメージベース(フルOS) | パッケージベース(コンポーネント) |
| 前処理 | 並列パーティショニング | 順次インストール |
| 再起動 | はい | バージョンによって異なります |
| ロールバック | 対応していません | 対応済み |
1. ファームウェアのアップデート
- バージョン番号:ファームウェアのアップグレードに伴うメジャーバージョンの変更(例:3.0.0 から 3.1.0 へ)。
- イメージベース:オペレーティングシステムのイメージ全体を置き換えます。
- 並列インストール:時間を節約するため、すべてのノードで同時にパーティションの準備を行います。
- 元に戻せません:アップグレードすると、以前のフィックスパックの記録とパッケージ情報は削除されます。
2. 修正パックのアップグレード
- パッケージベース:特定のソフトウェアコンポーネントにパッチを適用したり変更を加えたりするもので、小規模なパッチやセキュリティ修正なども含まれます。
- ローリングインストール:高可用性を維持するため、ノードを1つずつ順次インストールします。
- 安全:フィックスパックがロールバックに対応している場合、前の状態に戻すことができます。
ホットフィックスとは、通常、公式のテクニカルサポートが提供する緊急パッチのことです。 これらは手動での操作であり、Bigstackテクニカルサポートの指導の下で行う必要があります。
前提条件
アップグレードを開始する前に、以下のチェックリストに従い、アップグレードや更新が本番環境のワークロードに影響を与えないことを確認してください。
アップグレード/更新の種類
リソースを適切に割り当て、ダウンタイムのスケジュールを立てるために、アップデートの範囲と種類を特定してください。 アップデートの種類によって、システムに与える影響の程度が決まり、正常な導入に必要な前提条件が増える可能性があります。
- 修正パッチの更新:特定のコンポーネントに対する小規模な更新。 これらは一般的に体への負担が少ないものです。
- 影響:通常、更新による影響はごくわずかです。 ほとんどの更新は特定のコンポーネントにのみ影響するため、更新作業中もシステムは正常に動作し続けます。
- 前提条件:更新を開始する前に、以下の点を確認してください:
- 依存関係:更新プログラムは以前のパッチに依存している可能性があるため、すべての以前のフィックスパックがインストールされていることを確認してください。
- ファイルの整合性:更新ファイルの整合性を確認します。
- ロールバック:更新プログラムがロールバックに対応しているか確認してください。これにより、エラーが発生した場合に以前のバージョンに戻すことができます。
- 再起動:バージョンによっては、一部の更新でシステムの再起動が必要になる場合があります。 本番環境のワークロードに影響を与えないようにしてください。
- ファームウェアのアップグレード:大規模なインフラの更新。 これらの操作は、アップグレード手順中にクラスタのパフォーマンスを大幅に低下させる可能性があります。 アップグレードのために専用のメンテナンス時間を設定してください。
- 影響:アップグレードは通常、大きな影響を及ぼします。 各ノードの再起動が必要となり、システムのパフォーマンスが低下します。
- 前提条件:アップグレードを開始する前に、以下の点を確認してください:
- 正常:すべてのノードが正常な状態であることを確認してください。
- メンテナンスの時間帯を設定する:アップグレードを実施できる時間帯として、利用が集中しない時間帯を計画してください。
- 再起動:アップグレードの過程でシステムが再起動できることを確認してください。
- ファイルの整合性:更新ファイルの整合性を確認します。
- ロールバック:ファームウェアのアップグレードは元に戻せないことにご注意ください。 リリースノートを確認し、互換性と「互換性を損なう変更」について確認してください。
- 前提条件:アップグレードを開始する前に、以下の点を確認してください:
リリースノートと互換性を確認する
新しいバージョンが既存の本番環境に支障をきたさないことを確認するため、技術監査を実施する。
- 変更点の確認:「互換性を損なう変更」や非推奨となったAPIについて、リリースノートを確認してください。
- ワークロードの検証:現在のワークロードおよびサードパーティ製統合機能が、対象バージョンと互換性があることを確認してください。
- クラスタに影響を与える可能性のある以下の項目を確認してください:
- 新機能や変更点
- 互換性を破る変更
- 既知の問題
- 機能の非推奨およびサポート終了のお知らせ
- このバージョンでは、いくつかのサードパーティ製および自社開発のコンポーネントが更新されています。
- クラスタに影響を与える可能性のある以下の項目を確認してください:
メンテナンスの時間帯を設定する
本番環境への影響を最小限に抑えるため、アップグレードはメンテナンス時間帯に実施してください。
ヘルスチェック
アップグレードやアップデートを正常に行うには、システムが正常な状態であることが必要です。
- システムの整合性:クラスタのチェックと修復を実行し、すべてのサービスが正常であることを確認してください。
- エラーの軽減:アップグレードやアップデートを行うと、軽微な不安定さが悪化する可能性があるため、作業を開始する前に、既存のシステムエラーやパフォーマンスの低下を解消してください。
- 更新を開始する前に、すべてのサービスが正常に動作していることを確認してください。 エラー状態にあるサービスは、アップグレード操作の失敗を引き起こす可能性があります。
- エラー状態のサービスを使用してアップグレードを行うと、クラスタの状態が悪化する可能性があります。
- サービスエラーの解決方法については、サービスの正常性を修復する を参照してください。
デプロイメントのステージングと実行
ファイルの配置と自動ワークフローの開始を行い、準備を完了します。
- バイナリのアップロード:Fixpackまたはファームウェアのファイルを、プラットフォームのリポジトリに安全にアップロードします。
- トリガー更新:上記のすべての前提条件が確認された後にのみ、ワンクリック更新機能を使用して自動処理を開始します。
ファームウェアのアップデートは元に戻せません。 ワークロードと対象バージョンの互換性については、必ずまずステージング環境で確認してください。
アップグレードのワークフロー
ライフサイクル管理エンジンは、アップグレードプロセスのあらゆる段階を追跡・監視します。
ファームウェア
CubeCOSのアップグレードプロセスは、迅速性と柔軟性を重視して設計されています。 更新処理中、システムはすべてのノードに新しいOSイメージをダウンロードし、並行してセカンダリパーティションに書き込みを行います。 このバックグラウンド処理により、稼働中のサービスに影響を与えることなく、アップグレードファイルがステージングされます。
ファームウェアのアップグレード後、個々のフィックスパックはシステム履歴に表示されなくなります。 このアップグレードには、これまでのすべての修正パックが含まれています。
アップグレードモード
アップグレードモードは、「クラスタ設定」メニューで設定できます。 ご都合に合わせて最適なモードをお選びください:
- ローリングモード(デフォルト):本番環境に最適です。 このシステムでは、ノードを再起動する前に、ライブマイグレーションを使用してそのノードからVMを移行します。 ノードは順次更新されるため、ワークロードのダウンタイムは発生しません。
- 非ローリングモード:速度を最優先するメンテナンス期間に最適です。 管理者は、すべてのノードに対して手動で同時再起動を実行します。 このモードではワークロードの停止が発生しますが、クラスタ全体の更新をより迅速に完了させることができます。
アップグレードのライフサイクル
- インストール:すべてのノードが同時にダウンロードを行い、パーティションへの書き込みを行います(サービスへの影響はありません)。
- 再起動待機中:ノードはアイドル状態となり、OSの切り替えに備えています。
- 再起動:
- ローリングモード(デフォルト):システムはVMを移行(ライブマイグレーション)し、ノードを順次再起動します。
- 非自動再起動モード:管理者が手動で同時再起動を実行します。
- 成功:ノードが新しいパーティションから正常に起動しました。
本番環境での運用に支障をきたさないよう、必ずローリングアップグレードを選択してください。 ノードの再起動中もサービスを稼働させたままにするため、システムは自動的にVMの避難を実行します。
修正パック
段階的なアプローチにより、安全かつ復旧可能なサービスパッチ適用を確保します。 バージョンによっては、アップグレード後にシステムの再起動が必要になる場合があります。
フィックスパックのインストール(再起動が必要)
- インストール:ノードはパッチを1つずつ適用します(順次)。
- インストール済み:再起動が不要な場合、ステータスはここに遷移します。
- 再起動待ち:パッチの適用にカーネルまたはサービスの再起動が必要な場合、サイクルが完了する前にこの状態になります。
- ロールバックまたは再起動:
- ロールバック(オプション):エラーが発生した場合、システムはノードを利用可能な状態に戻します。
- 再起動:パッチの適用にカーネルまたはサービスの再起動が必要な場合、システムはノードを再起動します。
フィックスパックのインストール(再起動不要)
- インストール:ノードはパッチを1つずつ適用します(順次)。
- インストール済み:再起動が不要な場合、ステータスはここに遷移します。
- ロールバック(オプション):エラーが発生した場合、状態は「RollingBack」に移行し、「Available」に戻ります。
Summary
この仕組みを理解することで、メンテナンス期間に適した戦略を選択できるようになります:
- 事前確認:アップグレードやアップデートを開始する前に、すべてのノードが「正常(Healthy)」状態であることを確認し、新しいイメージをインストールするのに十分なディスク容量があるか確認してください。
- ファームウェアのアップグレード:ファームウェアのアップグレードを使用してください。 並列分割により、大規模クラスタの準備期間を大幅に短縮できます。
- Fixpack Update:Fixpack Updateを使用してください。 ロールバック機能を通じて、安全策を提供します。