2026年9月24日
2026年9月24日
バックアップと監視のランブックを作成する方法
はじめに
このランブックでは、Linuxサーバー運用におけるバックアップと監視の重要性を説明し、その実践方法について解説します。バックアップはデータの保護、監視は問題発生時の迅速な対応に不可欠です。
症状・背景
このテーマが必要になる主な場面には以下のものがあります:
- サーバーがダウンし、重要なデータが失われたとき
- ファイルが改ざんされたか、不正アクセスがあったときに迅速に対応するため
- システムのパフォーマンスや安定性を確認するため
手順・設定方法
ステップ1: バックアップの設定
# まず、必要なパッケージをインストールします
sudo apt-get update && sudo apt-get install -y rsync
# ディレクトリ間のバックアップを行うためのrsyncコマンドを作成します
echo "rsync -avz /path/to/source /path/to/destination" > backup.sh
chmod +x backup.sh
# 定期的なバックアップを実行するためにcronを使用します
echo "* * * * * /path/to/backup.sh" | sudo tee -a /etc/cron.d/backup >> /dev/null
ステップ2: バックアップの確認
# バックアップが正しく動作しているかを確認します
sudo /path/to/backup.sh
ls -l /path/to/destination # 最新のバックアップファイルが存在することを確認
ステップ3: 監視設定
# パッケージをインストールします
sudo apt-get update && sudo apt-get install -y zabbix-agent
# Zabbix Agentの設定ファイルを編集します
sudo nano /etc/zabbix/zabbix_agentd.conf
# [監視項目]を追加する例: Disk space, CPU usage, Memory usage
UserParameter=disk.space,/bin/df -h /path/to/check | awk '{print $5}'
# Zabbix Serverとの接続設定を行います
Server=your-zabbix-server-ip
Hostname=my-linux-server
# プロセスを再起動します
sudo systemctl restart zabbix-agent.service
ステップ4: 監視の確認とトラブルシュート
# Zabbix Web UIから監視結果を確認します
http://your-zabbix-server-ip/zabbix/
# 監視値が正しく表示されているか確認
# 例えば、システムリソースの使用状況が異常な場合の対応例
if [ $(/usr/bin/top -b -n1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1}') -gt 85 ]; then
echo "システムのCPU使用率が異常です。"
# 対応が必要な場合のアクションを実行します。
fi
注意事項
- バックアップディレクトリは十分なストレージ容量を持つことを確認してください。
- 監視設定では、適切な監視項目を選択し、必要に応じて通知ルールを定義することです。
- セキュリティ上、バックアップファイルのアクセス権限を厳しく制御します。
まとめ
1. 定期的なバックアップ: データ保護のために重要なファイルを定期的にバックアップします。
2. cronを使用した自動化: 定期的なバックアップ実行にcronジョブを使用します。
3. Zabbixを利用した監視: サーバーの状態をモニタリングし、問題が発生した際に迅速に対応できます。
4. 注意点: ストレージ容量やアクセス権限を適切に管理します。
5. セキュリティとパフォーマンス: データの安全性とシステムの安定性を確保するために必要な設定を行います。
関連記事: