Nginx で ELB のヘルスチェックのログを出力させない

概要

ELB のヘルスチェック時の User-Agent ($http_user_agent) が ELB-HealthChecker の場合に、ログをオフにする設定の備忘録です。

1
2
3
4
5
6
7
8
9
http {
...
map $http_user_agent $loggable {
~ELB-HealthChecker 0;
default 1;
}

access_log /var/log/nginx/access.log ltsv if=$loggable;
}

access_log のパラメータ if で条件を指定でき、アクセスログの出力の on/off が可能です。

続きを読む

Fargate のタスクサイズ による Nginx の起動プロセス数

備忘録です。

Nginx の設定で、プロセス数を auto にして CPU コア数に委ねる設定があります。

1
worker_processes auto;

Fargate のタスクサイズだとプロセス数はどの程度になるか調査しました。

結果発表

cpu mem nginx worker process 数
256 512 2
1024 2048 2
2048 4096 4

タスクサイズを上げれば、ちゃんと auto で worker プロセス数が増えてくれた。

ちなみに
プロセス数が増えても net.maxsoconn 値は Fargate で変更できない ので
リクエストをより捌く様にするには、タスク数を増やした方が良いです。

ちなみに、以下で同額のコスト♪

  • cpu=256, mem=512 × 8 タスク
  • cpu=2048, mem=4096 × 1 タスク

タスク数を増やそう!

Nginx on Fargate で発生した Resource temporarily unavailable エラーを調査した