web-dev-qa-db-ja.com

UbuntuでNginxとPHP-FPMで許可されるオープンファイルの最大数を増やす

Ubuntu 16.04でNginx 1.10とPHP-FPM 7で開くことができるファイルの最大数を増やす必要があります。いくつかのチュートリアルによると、/ etc/security /limits.confでユーザーごとに開くファイルの最大数を変更しました

*    soft nofile 64000
*    hard nofile 68000

また、/ etc /sysctl.confでシステム全体で開かれるファイルの最大数を変更しました

fs.file-max = 200500

仮想マシンをリロードした後、システムにログインするユーザーのソフト制限とハード制限を確認しました。

igor@ubuntu:~$ ulimit -Sn
64000
igor@ubuntu:~$ ulimit -Hn
68000

ご覧のとおり、制限はユーザーに適用されています。私の問題は、NginxとPHPの制限を変更できないことです

igor@ubuntu:~$ Sudo ps aux|grep nginx
root      1124  0.0  0.0  45988   980 ?        Ss   01:04   0:00 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
www-data  1125  0.0  0.2  46164  2372 ?        S    01:04   0:00 nginx: worker process
igor      2754  0.0  0.0   5108   848 pts/6    S+   01:14   0:00 grep --color=auto nginx
igor@ubuntu:~$ cat /proc/1124/limits
Limit                     Soft Limit           Hard Limit           Units     

.....
Max open files            1024                 4096                 files     
.....  

そして、phpについても同じです

igor@ubuntu:~$ Sudo ps aux|grep php
root      1097  0.0  2.1 118388 22496 ?        Ss   01:04   0:00 php-fpm: master process (/etc/php/7.0/fpm/php-fpm.conf)
www-data  1140  0.0  0.5 118388  5532 ?        S    01:04   0:00 php-fpm: pool www
www-data  1141  0.0  0.5 118388  5532 ?        S    01:04   0:00 php-fpm: pool www
igor      2795  0.0  0.0   5108   852 pts/6    S+   01:20   0:00 grep --color=auto php
igor@ubuntu:~$ cat /proc/1097/limits
Limit                     Soft Limit           Hard Limit           Units     
.....
Max open files            1024                 4096                 files     
.....

PHPおよびNGINXの制限を変更するにはどうすればよいですか?

2
user2265529

その構成をsystemdユニットファイルに追加する必要があります。ドロップインファイルを介してこれを作成するのが最善です。

mkdir /etc/systemd/system/nginx.service.d
echo "[Service]
LimitNOFILE=10000" > /etc/systemd/system/nginx.service.d/local.conf
systemctl daemon-reload
systemctl restart nginx

次に、php7.0-fpm.serviceユニットファイルについても同じことを繰り返します。

/etc/systemd/system.confでデフォルトを設定することもできますが、ドロップインファイルを使用することをお勧めします。

2
Thomas