ケーススタディ集

  • 少し作業につまづいたり、どうすれば良いか迷ったり、問題が発生したときのケーススタディをまとめたドキュメント
  • なんてことないものでもちゃんと整理しておくと、後々同じことがおこった時にスムーズに解決できる
  • 自分向けのメモなので内容を信じておきた一切の事故は感知しません

rsync をかけるときに確認すべきこと

  1. dry-run を行い転送するデータ量を確認する
    • 必要であれば exclude オプションを使い、不要なファイルの同期を除外する
    • exclude オプションはパターンしていなので、絶対パスを指定すると期待した動作にならない点に注意
  2. 受け入れ側サーバーに転送データを置く空きスペースがあるか確認する
# dry-run を行う
$ rsync -ah --dry-run --size-only --stats --exclude '$pattern' $src $dest

# 受け入れ側サーバーのディスクの空きを確認する
$ df -hl

# rsync をかける
rsync -ahv --size-only --stats $src $dest
  • ディスクフルを防ぐ
  • サーバ間の意図しない大きなトラフィック発生を防ぐ
  • 転送サイズが、作業想定よりも大きかったり小さかったりすることを確認することにより作業ミスを早期発見できる

ローカルネットワーク内のサーバー動作検証時に期待したレスポンスが得られない

前提

  • ローカルネットワーク内にあるサーバーの動作確認することが目的
  • nginx vhosts 設定で後ろにあるアプリケーションサーバーへプロキシしている

問題

  • vhosts にマッチするように /etc/hosts 書き換えを行い、リクエストすると 403 が帰ってくる

ケーススタディ

  1. 4XX 応答が帰ってくるので対応するポートをウェブサーバが listen していることは間違いない
  2. したがって、対象ポートを listen しているウェブサーバー設定を確認しにいく
  3. vhosts 設定のマッチ条件に適合するかどうか慎重に確認する