4システムの保守と運用管理
- 4.1make によるソースからのビルドとインストール
パッケージ管理に頼らずソースコードからビルドする一連の流れを学びます。git clone・git tag -l・git checkoutによるソース取得、gzip・gunzip・bzip2・xz・tar・unzipによる展開、patchによる差分適用、configureによる環境検出、make・make installによるビルドと配置を押さえます。
- 4.2バックアップとリストア
バックアップ戦略の基本(完全・差分・増分)と、代表的なバックアップソフトウェア(Amanda・Bacula・Bareos・BackupPC)、媒体(テープ・HDD・光メディア)、実行コマンド(dd・tar・mt・rsync)を学びます。
- 4.3ユーザへの通知
システム保守作業の前後にログインユーザーへ状況を伝える仕組みを学びます。ログイン前メッセージの/etc/issue・/etc/issue.net、ログイン後メッセージの/etc/motd、稼働中の全ユーザーへ即時通知するwall、シャットダウン予告を兼ねるshutdown、サービス制御と組み合わせるsystemctlを押さえます。
- 4.4リソース使用状況の把握
CPU・メモリ・ディスクI/O・ネットワークI/Oそれぞれの使用状況を把握するツール群を学びます。CPUはtop・htop・ps・sar、メモリはvmstat・free・sar、ディスクはiostat・iotop・sar、ネットワークはnetstat・iftop・ss・sar。開いているファイルを見るlsof、ネットワークトラフィックのiptrafも押さえます。
- 4.5死活監視・リソース監視・運用監視ツール
リソース枯渇・過負荷・異常停止を早期に検知する監視の考え方と、OOMKillerの挙動、SNMPによるリモート監視、しきい値とアラートの設計、代表的な監視ツール(Icinga2・Nagios・collectd・MRTG・Cacti・Zabbix)を学びます。
- 4.6システム構成ツール(Ansible)
構成管理の自動化がもたらす標準化・効率化・スケール可能性・冪等性という価値と、Ansibleの基本概念(インベントリ・モジュール・Playbook・YAML)、実行コマンドansible・ansible-playbook、代表的な用途(仮想サーバー/コンテナ払い出し・アプリケーションリリース・ネットワーク機器の設定変更)を学びます。

