※この記事は翻訳されたものです。本記事の原文はこちら
メンテナンスは、あらゆる企業のライフサイクルの一部です。すべてのインフラは、たとえ耐用年数が近づいているものであっても、常に動いており、変化しています。皆さんのチームは、これまで行ってきたことで多くの成功を収めてきたと思いますが、システムがより複雑になってくると、過去に成功したことも見直しが必要になるかもしれません。この記事では、クラスターのメンテナンスを改善し、高可用性を最大化し、ダウンタイムを最小限に抑えるために考慮すべき10項目をご紹介します。
- システムメンテナンス中に高可用性を確保する方法
- 1.ビジネス関係者にとってベストな日とは?
- 2.チームがメンテナンスのスケジュールを組むのに最適な日程は?
- 3.パートナー、コンサルタント、個人の請負業者とどのような日時で調整するのがベストなのか?
- 4.メンテナンスの対象範囲、メンテナンス活動で求める成果は何かを包括的に考える。
- 5.メンテナンスの期間(予想される時間、許容される時間)はどれくらいか?
- 6.ロールバックの計画は?
- 7.関係する個々のチームメンバーは誰か、その役割と責任は?必要な役割と責任はすべて明確に定義されているか?
- 8.メンテナンス計画はどこに文書化されているか?計画の見直し、更新、テストが最後に行われたのはいつか?
- 9.生産計画前のテスト/QAではどのような問題が解決されたのか?
- 10.計画に足りないのは誰か、または何か?
- 高可用性を維持するためには、システムメンテナンスが重要
- 関連記事
システムメンテナンス中に高可用性を確保する方法
1.ビジネス関係者にとってベストな日とは?
メンテナンス中は、計画外ダウンタイムとは異なり、複数のチームやシステム、相互接続されたリソースが、計画された作業に利用できなくなります。たとえば、ある企業では、毎月システムのコンプライアンスチェックや安全点検を行うことが義務付けられていますが、この間、検査官や監査官などによって、業務が停止されます。
2.チームがメンテナンスのスケジュールを組むのに最適な日程は?
カスタマーエクスペリエンス担当として、私たちは、特定のイベントや活動に除外日を設けている多くのチームと緊密に協力してきました。皆さんのチームの多くは、複数のシステムやサーバーを管理し、重要なアプリケーションやインフラを持つ複数のチームに報告していると思います。チームにとって最適な日程を理解することで、リソースの制約による混乱や衝突、時間的なロスを避けることができます。
3.パートナー、コンサルタント、個人の請負業者とどのような日時で調整するのがベストなのか?
重要なインフラには通常、会社の人員配置とは直接関係のない他の多くのプロバイダーやベンダーが関与しています。OS、セキュリティ、HAベンダーやコンサルタント、インフラプロバイダーやその他のパートナーのアーキテクトなどです。どの日程が最適か、あるいはサポートに含まれるかを事前に理解することは、適切なスケジュール設定と人員配置を行う上で非常に重要です。
グローバルチームの増加に伴い、これらすべてのメンバーにとって適切なタイミングを見つけることも重要な問題です。米国、インド、欧州・中東・アフリカ、その他の地域のメンバーにとって最適な時期はいつなのでしょうか?
4.メンテナンスの対象範囲、メンテナンス活動で求める成果は何かを包括的に考える。
アプリケーションの単純なメンテナンスだけでなく、それが動作している環境全体を含めて考えてください。最近、アプリケーションのアップグレードを計画していたお客様が、OSのアップグレードも同時に行うことになりました。しかし、このわずかな変更が予想以上に大きな結果をもたらすことになりました。そのアプリケーションはアップグレードされたOSをサポートしておらず、問題が発生したのです。メンテナンスの範囲を明確に定義し、その範囲に対する結果を詳細化してください。環境が動くというだけでは十分ではありません。可能な限り、期待されるバージョン、動作、測定可能な結果について詳しく記述してください。
5.メンテナンスの期間(予想される時間、許容される時間)はどれくらいか?
理想を言えば、メンテナンスのための時間を常に確保したいと誰もが思っていますが、世界中にお客様がいると、たとえ重要な作業であっても、計画的なダウンタイムが許される余地はほとんどありません。メンテナンスの計画を立てる際、どの程度のダウンタイムが予想されますか?現実的に許容される最大限の時間を確保することは可能ですか?もしそうでなければ、メンテナンスの計画を立て直す必要があります。
6.ロールバックの計画は?
何も問題が起きないことを願う一方で、私たちはソフトウェア、複雑な環境と構成、そして多くのチームが関わっている未確定要素を扱っていることを認識する必要があります。ロールバック計画、つまりシステムをメンテナンス前のバージョンや設定に戻す手段は不可欠です。何か問題が発生した場合、フルバックアップやマシンイメージなど、ロールバック計画を必ず立ててください。
7.関係する個々のチームメンバーは誰か、その役割と責任は?必要な役割と責任はすべて明確に定義されているか?
カスタマーエクスペリエンス担当として、私たちのチームはメンテナンス活動に参加していましたが、重要なチームメンバーが欠けていたため、予期せぬ遅延が発生しました。計画やアーキテクチャを策定する際には、チームメンバー、そしてITの必要な役割と責任を明確にする必要があります。シニアサポートエンジニアのグレッグ・タッカーも言うように、HAはストレージ、ネットワーク、コンピューティング、OS、セキュリティ、ポリシーなど、環境のあらゆるレイヤーに影響します。
8.メンテナンス計画はどこに文書化されているか?計画の見直し、更新、テストが最後に行われたのはいつか?
成功は素晴らしいものですが、その反面、自己満足や気の緩みを招くこともあります。長年の成功の後、手順が十分に文書化されなくなったり、積極的に守られなくなっているかもしれません。これらの質問に答えることで、チームは成功し続けることができるようになります。
9.生産計画前のテスト/QAではどのような問題が解決されたのか?
メンテナンス手順のテストを継続するのは素晴らしいことです。テスト環境で解決された問題が、本番のメンテナンス計画に適切に追加されるようにしてください。SIOSのカスタマーサクセスチームは、お客様がQAテストを実施し、誤った仮定を発見し、必要な修正を行ったにもかかわらず、その修正を本番のチェックリストに入れなかったのを見たことがあります。
10.計画に足りないのは誰か、または何か?
計画、タイミング、チーム、役割、そしてアーキテクチャを確認したところで、最後に1つの疑問が残ります。誰が、何が足りないのか? 最後のステップとして、計画を見渡して、こう問いかけてみてください。 「この計画には誰が欠けているのだろうか? 」あるいは「私たちの計画には何が欠けているのか?」
私はカスタマーエクスペリエンス担当として、数え切れないほどのお客様の活動計画をチームと一緒に見直してきました。その中でも特に印象に残っているメンテナンス計画では、ロールバック計画の中に、クローンイメージからサーバーを復元したり、バックアップからデータを復元したりする手順が含まれていたにもかかわらず、イメージの複製とデータのバックアップはタスクリストに含まれていなかったのです。これらは見落とされており、プロセスの早い段階で行われたものと考えられていました。
高可用性を維持するためには、システムメンテナンスが重要
システムメンテナンスは、コンピューターシステムを維持する上で重要かつ必要なものです。メンテナンスは、エラーの修正、新しいソフトウェア機能の導入、新しいユースケースへのシステムの適応などを行うためのものです。問題のシステムが、組織のビジネス継続性を維持するのに不可欠なビジネスクリティカルなシステムである場合、綿密な計画を立てることが重要です。ここに挙げた10の質問とその他皆さんの環境に固有の質問を検討し、不必要なリスクや遅延を生じされることなく、メンテナンスがビジネスのニーズに応えられるようにしてください。
高可用性とディザスターリカバリーソリューションの詳細については、SIOSまでお問い合わせください。