改善・変更は「保守」と覚えよう
「保守」と「運用」の違いは混同されやすい性質を持っています。例えばあるアプリケーションが不具合を起こした時、その復旧作業は保守なのか運用なのか、聞かれるとふと考えてしまうのではないでしょうか。今回は、「保守」と「運用」の違いを取り上げてみたいと思います。なお、保守には「アプリケーション保守」と「システム保守」がありますが、運用面を考えると両者は一体ですので、ここでは「アプリケーション保守」を「システム保守」の一環として考えます。
保守とは
簡単に言えば、「保守」とはシステムを改善・変更するものであり、「運用」はシステムを日々動かしていくことを言います。別の言い方をすれば、保守は開発やシステム設計と深く関わっていますが、これらは運用とは基本的に無関係です。運用ではシステムの変更作業も行いません。
保守には以下などがあります。
- アプリケーションの保守
- ジョブスケジュールの保守
- ITインフラの保守
アプリケーションの保守
アプリケーション保守では、プログラム障害やシステム障害の原因究明・改修などを行いますが、改善や仕様変更の必要がある場合は大規模な変更を行うことがあります。
なお、広義の保守はシステム利用者が保守担当者に作業を依頼した時に発生します。このため利用者からの相談を受け、問題への対応方法を検討するプロセスから、システムの学習や作業を行う時間、改善の提案をする時間などまで、保守作業に要する時間を幅広く捉えておく必要があります。
ジョブスケジュールの保守
ジョブスケジュールの保守では、新規プログラムの導入やバッチやシェル等スクリプトジョブの改善などを行います。また場合によってはJP1やSHERPA-JBと言ったジョブ管理を使用するケースもあります。単調な業務を人が実施するとミスの原因となるため、確実に実施するためにジョブスケジュールをしますが、新たに追加した設定がしっかり動作するのか、また作成したスクリプトのメンテナンスをどのようにバージョン管理するのかなど、ジョブスケジュールは、経験と技能の両方が必要な重要な業務となります。
ITインフラの保守
ITインフラは、サーバー、ネットワーク機器、ストレージ装置など、企業のITシステムを支える土台となる基盤です。このインフラを24時間365日、安全かつ安定的に稼働させることが、ITインフラ保守の役割です。
具体的には、以下のような業務が含まれます。
・監視:サーバーやネットワーク機器の状態を常に監視し、異常をいち早く検知します。
・障害対応:障害が発生した場合、迅速に原因を特定し、復旧作業を行います。
・メンテナンス:定期的に機器の点検や清掃を行い、故障を未然に防ぎます。
・セキュリティ対策:セキュリティパッチの適用や脆弱性対策を行い、情報漏洩などのリスクを低減します。
・バックアップ:データの定期的なバックアップを行い、災害や事故によるデータ損失に備えます。
ITインフラ保守は、目に見える華やかな仕事ではありませんが、企業の業務を支える縁の下の力持ちとして、なくてはならない存在です。適切な保守を行うことで、システムダウンタイムを最小限に抑え、業務の継続性を確保することができます。
運用とは
これに対して運用は、先にも述べたとおり日常的に行うものです。大きく分けると①オペレーションと②監視があります。
①オペレーション
オペレーションにはマシンやアプリケーションの起動や停止、データなどのバックアップ作成、その他の入力・出力作業などが含まれます。また、システム障害・停止からの復旧作業も運用に含みます。実際には保守担当者も参加することになるでしょうが、改善・変更を伴わないため分類は運用になります。
②監視
監視はマシンやネットワーク等の運転状況やメモリ、CPUといったシステムリソース、バッチジョブの状態などを見守り、異常を発見したら関係各所に連絡する業務を指します。ITILで言えば、インシデント管理が最も近いでしょう。
システム保守の業務内容
システム保守の業務内容として、主に以下の内容が挙げられます。
- ハードウェアの修理、部品交換
- アプリケーションなどの不具合対応
- ウイルスやサイバー攻撃への対応
- ネットワーク障害の対応
- サーバ機器やデータベースなどの点検
1.ハードウェアの修理、部品交換
物理的にハードが破損した場合、ハードの修理や部品交換が必要となります。ハードウェアの劣化も不具合に繋がるため定期的なメンテナンスが大切です。
不具合が発生している箇所を即座に判断できる場合は、比較的対処が容易であると想定できますが、部品の不足による対応の長期化や原因箇所が不明というケースも考えられます。
様々な機器を使っている環境で、原因となっている機器の判断が難しい場合はエラーの発生箇所や、事象発生時に実施していた業務等から障害発生箇所の切り分けが必要となります。
作業のエビデンスやエラー画面から事象の発生箇所が判別できる場合もあるため、不具合が発生した際には、作業ログを取得する、作業エビデンスやエラー画面のキャプチャを採取する等の対応が重要でしょう。
2.アプリケーションなどの不具合対応
OS上で稼働するアプリケーションに関する不具合への対応も保守業務の一環です。不具合発生時には、どのような処理が走っていたか、エラーの発生していたか等をアプリケーション自体のログやOSのログから究明する必要があります。
新しいアプリケーションをインストールし、既存のアプリケーションの動作が遅くなるといった事象が発生した際には、CPUの割り当てが適切に行われていない場合もありますので、アプリケーションの要件にあわせて設定することも必要です。
ログやエラーメッセージ等から原因を特定できない場合は、変更した設定値や、構成情報を再設定できるよう準備した上で、アプリケーションを再インストールし、事象が解消するかを確認するのも有効でしょう。
3.ウイルスやサイバー攻撃への対応
ウイルスやサイバー攻撃に伴うシステムへの影響リスクを軽減するためにも、外部メディアの使用方法、不審メール・ファイルの取り扱いに関するマニュアルや体制の整備が重要です。
ウイルス感染時の影響を最小限に抑えるため、観戦時の対応手順についても確認し、周知徹底する必要があります。
ウイルス対策ソフトの導入を検討し、導入した際にはサポート期限も定期的に確認できる体制作りがウイルスやサイバー攻撃への対応策として有用でしょう。システムの要となるサーバはネットワークから隔離した環境で管理し、ウイルスやサイバー攻撃に対するリスクを最小限にすることも重要です。
4.ネットワーク障害の対応
ネットワーク障害が発生した際には、pingコマンドを用いて疎通可能範囲を確認し、原因箇所を特定するための切り分けを実施することが重要です。
事前にネットワーク構成図を作成し、ネットワークを管理できると障害が発生した際の切り分けの際に有用でしょう。
ネットワークの問題だけでなく、機器の電源が落ちてしまったために疎通が取れないといったケースもあるため、稼働状況の確認も大切です。早期復旧のためには原因の切り分け作業も必要ですが、ネットワーク障害が発生した際に、環境を素早く切り替えられるようなシステム構築も重要でしょう。
5.サーバ機器やデータベースなどの点検
問題無くシステムを稼働していくためには、定期的に物理サーバ機器やデータベースの点検が必要です。環境変更に伴う、システムやプログラムの変更作業も点検業務の中で重要な要素となるでしょう。
定期的なバージョンアップ作業の実施は、脆弱性に伴う障害発生の予防に繋がると想定されるため、最新版のリリースの確認および、バージョンアップの実施も大切です。
システムの互換性を保持した上で、可能な限り最新のバージョンへアップデートを検討できると良いでしょう。サーバ機器・データベース自体の管理も重要ですが、不具合の発生に備えサポート契約が切れていないかを確認することも大切です。
不具合が発生した際にも、迅速に復旧できるよう定期的にバックアップを取得する体制を整えることも点検業務の1つと言えるでしょう。
システム保守業務の必要性
システムが問題なく稼働している場合には、システム保守業務の重要性について、あまり感じられないかも知れませんが、システムが安全に稼働するためにはシステム保守の業務が必要不可欠です。
システム保守業務の必要性について、不具合の発生リスクを低減するための対応、不具合が発生した際の対応、復旧後の対応の視点で解説します。
定期的な点検や、メンテナンス、アップデート作業は不具合の発生リスクを低減するためにシステム保守は重要な業務です。
不具合が発生してしまった際には、原因箇所を特定し対応を実施したり、稼働システムの切り分けを実施したりすることで業務影響を最小限に抑えられるよう対応します。
一度起きた不具合は今後も発生する可能性がありますので、復旧後も原因の究明や、不具合発生時の対応マニュアルの整備が必要となるでしょう。
システムが安定して稼働するには、システム保守による日々の点検やメンテナンス作業、不具合が発生した際のシステム保守の対応業務が重要な位置を占めています。
システム保守は内製化するべきか?
内製化に適したケース
人員・時間・スキルといったリソースが充足しており、システム保守業務に対応可能な人員や必要な研修が充実している場合は、システム保守業務の内製化に適しているケースといえます。
システム保守業務を内製化することでシステム保守業務に関する知識やノウハウが蓄積し、不具合対応の効率化が可能となるでしょう。リソースが不足している場合は、専門知識が無くとも保守業務を実行できる環境があれば、内製化が可能です。
外注に適したケース
自社にとって重要度が高い業務に集中したいと言う場合には、システム保守業務に対応可能な人材を育成する必要がないため外製化が適しているといえます。
システム保守業務に対応可能な幅広い専門知識を持つ人材の育成は容易ではないためです。外注先は様々なシステム保守業務に対応可能ですが、希望するシステム保守業務を一つの外注先で網羅できない場合もあります。
システム稼働が開始するタイミングなどで希望に合う外注先がスムーズに見つからないといった可能性も考えられ、コストも安価ではないことが想定されるでしょう。
専門知識が必要なシステム保守業務を外製化し、ツールを用いて簡易化できる業務や自動化できる業務は内製化するとコスト削減に繋がる可能性があります。
「SHERPA SUITE」の詳細はこちらからご確認ください。
システム保守・運用ならSHERPA SUITE
SHERPA SUITEを活用することで、自動化できるシステム保守・運用業務があります。
業務の振り分け作業の自動化は、業務量が膨大なケースが多く、特に不具合発生時などに人為的ミスも起こりやすい作業ですが、自動化することでミスが軽減されるケースがあります。安定稼働中の保守業務として、バージョンアップ業務にも対応が可能です。
複数の監視アラームを制御し、不具合が発生しアラームが通知された際には、各ベンダーに自動でエスカレーションを実施することも可能なため不具合発生時の初動を自動化し、夜間のアラーム対応に従事していた担当者の負担の軽減、残業時間の削減も可能です。
「SHERPA SUITE」の詳細はこちらからご確認ください。