少し前から週に一度、決まった曜日と時間で事務所内MacとPC、内部サーバー、公開サーバーのメンテナンスをやっています。
経緯
元々、Windows Updateやソフトウェアアップデートの類いは自動実行にしていて、常にセキュリティパッチなどは当てていました。そのため、決まったメンテナンス日などを設定していなかったのですが、次のようなことが頻発し、メンテナンス日を決めました。
- 時間が無いときにWindows Updateがちょうど走ってしまい、時間がかかる。
- 使おうと思ったときに、自動アップデートされたものと、アップデート前のものとの組み合わせで互換性が無く、使えず、使えるようにするのに時間がかかった。
- 自動バックアップが動いていなかったことに気づかず、動いていてると思っていて、バックアップが作られていなかった。
どんなことをしているか?
メンテナンス日はそれぞれ、こんなことをしています。
クライアントのMac
- ソフトウェアアップデートを実行する
- Xcodeのマニュアルやシミュレータのアップデートを実行する
- ATOKのアップデートを実行する
- セキュリティプログラムのアップデートを実行する
- Mac Portsのport selfupdateとport upgrade outdatedを実行する
- Home Brewのbrew updateとbrew upgrade –all
- その他、アプリごとアップデータを適用する
クライアントのWindows
- セキュリティプログラムのアップデートを実行する
- ドライバ類のアップデートを実行する
- その他、アプリのアップデーを適用する
- Windows Updateを実行する
内部サーバー (OS XサーバーとCentOS)
- 自動バックアップなどのログを確認する
- Mac PortsやHome Brewのアップデートを適用する
- yumでシステム一式アップデート
- 各アプリのアップデートを実行する
- 仮想PCの複製
- JIRA, Confluence, Stash, Alfrescoのアップデートを適用
- JIRA, Confluence, Stashのアドインのアップデートを適用
公開サーバー (Webサーバーなど)
- セキュリティパッチの適用
- DBのバックアップ
- Word Pressなどのアップデート
どんな効果があったか?
経緯に書いたようなことがまず、解決されました。それと、常に使える状態が維持されているので、予期しない中断が無くなりました。それと、毎週行っているので、アップデートしなければいけない分量(差分)が少ないため、短時間で完了できます。自分自身も作業に慣れてきたので、効率的になってきました。
大きなトラブルや故障が起きる前に、対処できると思います。見直しして気がついたことの中に、自動バックアップが動いていなかったがありましたが、実際にそのバックアップが必要なときに、バックアップが存在しなかったという事態が起きていたらと考えると、ぞっとします。
状態を維持するためにやっていること
友人から「だれてきて、サボりたくならないか?」と聞かれましたが、それを維持するために次のようなことをやっています。
メンテナンスマニュアルを作って常に更新する
やりながら、必要ないかなとか、これを追加した方が良いとか、思うことが出てきます。頭で思っているだけだと、忘れてしまうので、マニュアル化して、常に更新します。更新しやすいように、Confluenceに入れています。Evernoteとかでも良いと思います。常に見れて、簡単に更新できることが必要な条件だと思います。
ちなみに、当初はもっとやっている項目多く、毎週は必要ないなと思う項目減らしていきました。
アラームをセットする
習慣化するまでは、忘れてしまうので、アラームをセットしました。iOSやOS Xのカレンダーに毎週のイベントとして通知が出るようにしています。作業に着手するまでは画面に通知を表示したままにしています。