会員登録すると
学習することができます。
会員登録する(無料)
登録済みの方はこちら
ログイン

リバースプロキシと切り分け ― nginx で振り分け、届かない原因を下の層から順に探す

目安学習時間 25分

課題

全問正解でレクチャー完了です。

【問題1】

別のホストから Web サーバーにつながりません。ss -tlnp で見ると 127.0.0.1:8080 で待ち受けていました。最も考えられる原因はどれですか。

[選択肢]

【問題2】

nginx の設定を書き換えたあと、サービスを止めずに読み直す前にすることとして、最も適切なものはどれですか。

[選択肢]
会員登録すると
学習することができます。
会員登録する(無料)

学ぶ目的

リバースプロキシとは

リバースプロキシは、利用者からの通信を代わりに受け取り、裏のサーバーへ渡す中継役です。裏のサーバーが複数あれば、通信を振り分けるロードバランサにもなります。

nginx で振り分ける

nginx では、upstream に裏のサーバーを並べ、location の中の proxy_pass でそこへ渡します。何も書かなければ、順番に振り分けます。least_conn と書くと、つながっている数が少ないサーバーへ渡します。nginx -t で確かめてから reload します。

届かないときは下から順に

  1. 線とアドレス … ip -br link、ip -br addr
  2. 経路 … ip route、ping、tracepath
  3. 名前 … getent hosts、dig
  4. ポート … ss -tlnp、nc -zv、curl -v
  5. ファイアウォールとログ … 許可の設定と journalctl

監視する

ネットワークの状態は、ss でつながりの数を、ip -s link で送受信の数とエラーを見ます。数字は時間をおいて2回見て、増え方を比べます。

待ち受けのアドレスを読む

ss -tlnp では、ポートの番号だけでなく、その前のアドレスまで読みます。127.0.0.1 で待ち受けていれば、そのホストの中からしかつながりません。0.0.0.0 や :: なら、どの口からの通信も受けます。

このレクチャーで学ぶこと

  • リバースプロキシとロードバランサの役割
  • nginx の upstream と proxy_pass での振り分けと、nginx -t
  • 届かない原因を、線・経路・名前・ポートの順に切り分ける
  • ss と ip -s link でのネットワークの監視

質問

まだ質問は投稿されていません。

質問投稿

ログイン後に質問の投稿ができます。