IT運用のためのカナリア展開

2 Min Read | 9月 23, 2021

この記事はもともとジャクセンター.

カナリアデプロイメントは、問題をキャッチして修正するためにグループに小さな更新を送信する、時間差ロールアウトに一般的に使用されるDevOpsプラクティスです。最終的に、カナリア展開などのDevOpsプラクティスを試すことで、IT(およびIT運用)がビジネスとのギャップを埋め、より多くの価値をより迅速に提供できるようになります。

IT運用チームは、次のような従来の手法を使用して仕事をしています。ITIL、 長年。彼らの焦点は、パフォーマンスとサービスの可用性を確保するための正確で標準化されたアプローチを使用して、一貫性、信頼性、および安定性にありました。一方、DevOpsは速度と柔軟性によって定義されます。まだ現代のIT組織 両方が必要です。そのため、今日のITインフラストラクチャのより動的で予測不可能な性質を考えると、近年、DevOpsの原則をIT運用に統合する動きがあります。

[私たちの見解を読んでください ITIL 関連性 ブログで]

カナリアの展開、時間をずらして展開するための人気のあるDevOpsプラクティスは、DevOpsがエンタープライズIT運用にプラスの影響を与える方法の代表的な例です。この展開方法は、ユーザーの母集団全体に一度に展開するのではなく、問題をキャッチして迅速に修正することを目的として、更新を小グループに段階的に送信します。大量展開では、重大なバグが発見された場合、問題を発見して修正し、大規模なユーザーベース全体に再展開するには、より多くの費用と労力がかかります。 Canaryの展開では、継続的な改善も可能です。リリースを微調整して、ユーザーエクスペリエンスや結果を向上させます。

「炭鉱のカナリア」の例えを考えてみましょう。に基づいて真の実践 カナリアが有毒ガスをテストし、人間を保護するために無慈悲に鉱山に送られた鉱業では、カナリアの展開は、ソフトウェアの欠陥の影響を少数の聴衆に隔離することを目的としています。ありがたいことに、採掘作業は労働者の安全を維持するために無実の鳥を犠牲にすることはなくなりましたが、ソフトウェアとITでは、カナリアは急速な解放と変更のサイクルのリスクを減らす上で貴重な役割を果たします。そして、誰も死ぬことはありません。

カナリアの展開は数年前からありますが、
DevOpsおよびSaaS組織では一般的ですが、
エンタープライズIT環境。正しく行われると、結果として生じる可能性があります
より速く、よりクリーンで、より成功した変更。

表面上、この方法は多くのIT運用変更イベントで役立つ可能性がありますが、以下の2つが最も直接的で測定可能なメリットを提供すると思います。

IT運用におけるカナリアのユースケース

  • デスクトップ、サーバー、およびオペレーティングシステムにパッチを適用することは、日常的でありながら重要なIT運用タスクです。 更新中に問題が発生し、天国が禁止したり、ネットワークがダウンしたり、会社全体の応答時間が1日ひどい場合は、多くの人が非生産的で不幸になります。代わりに、カナリアの増分ロールアウト用の論理セグメントを作成できます。これは、デバイスタイプ、クラスター、地域またはデータセンター、ビジネスユニット、またはMSPなどの顧客ごとに行うことができます。実行しているリリースの種類に応じて、各ロールアウトを1時間、場合によっては1日ずらして、新しい環境で問題がないかどうかを監視できます。クリアしたら、最初に修正する問題がない限り、次のバッチに進みます。

  • 夜間のバックアップは、カナリアの展開が役立つもう1つの領域です。 2つのvCenterの仮想ストレージ(VMDK)をAWSなどのクラウドサービスにバックアップするとします。 100台以上のVMがある大規模な環境では、バックアップを途中で停止し、破損したファイルなどの問題に対処してから、バックアッププロセス全体を繰り返す必要があるため、時間がかかります。そのワークロードを4つの25VMグループにセグメント化し、さまざまなツール(sys logモニタリングやクラウドサービスモニタリングを含む)を使用することで、他のバックアップセグメントを開始する前に、転送が不完全であるか、その他の問題があったかをすばやく知ることができます。

カナリア展開を実行するためのいくつかの考慮事項

外部からは簡単ですが、カナリア展開を実行する際に留意すべき点がいくつかあります。

最初に時間を入れてください: ほとんどの企業には、次のようなパッチ適用ツールまたはサービスがあります。 Ansible 変更イベントを自動化します。ただし、これらのIT自動化ツールの多くは、セグメンテーションとスケジューリングをネイティブにサポートしていません。したがって、既存のツールセットを使用することはできますが、カナリアの展開にそれらを適応させる必要がある可能性があります。最初は、構成に時間がかかりますが、練習を重ねるほど簡単になります。

トレードオフを考慮してください。 展開がずらされているため、すべての人が一度に新しいリリースの恩恵を受けるわけではありません。チームが他のグループにリリースする前にバグを修正する必要がある場合、予想される更新に対してビジネスに緊張が生じる可能性があります。四半期末のレポート期間中の販売管理ソフトウェアの更新など、ミッションクリティカルなエンドユーザーサービスの場合、カナリアリリースを行うのは賢明ではない場合があります。あなたの人々は彼らの締め切りに間に合わせるためにできるだけ早くその更新を必要とするかもしれません。

ユーザーエクスペリエンスの方向を変える: ITの多くの変化と同様に、考え方も変化する必要があります。古くからの「設定して忘れる」IT管理手法は、今日の分散型で常に変化するハイブリッドクラウド環境では関連性が低くなっています。忘れられないエンドユーザーエクスペリエンスの提供に重点を置いたDevOpsオリエンテーションにより、IT運用チームはこれらの新しいプラクティスを迅速に採用できます。 IT運用者は、タスクを完了するための新しい、より機敏な方法を試すために、実証済みのプラクティスのいくつかを放棄する必要があります。

最終的に、カナリア展開などのDevOpsプラクティスを試すことで、IT(およびIT運用)がビジネスとのギャップを埋め、より多くの価値をより迅速に提供できるようになります。

次のステップ:

cta-blog-canary-deploy


Recommended posts