내 redis.log 파일 맨 위에이 오류가 표시됩니다.
현재 최대 열린 파일은 1024입니다. maxclients는 낮은 ulimit를 보완하기 위해 4064로 줄었습니다.
나는 이 단계들을 편지에 따라 갔다가 다시 부팅했다.
또한, 나는 실행할 때 이것을 봅니다 ulimit
.
ubuntu@ip-XX-XXX-XXX-XXX:~$ ulimit -n
65535
이 오류가 특이한가? 그렇지 않은 경우 수행해야 할 다른 단계는 무엇입니까? 우분투 LTS 14.04.1 (다시 나무 끝)에서 redis 2.8.13 (나무 끝)을 실행하고 있습니다.
사용자 정보는 다음과 같습니다.
ubuntu@ip-XX-XXX-XXX-XXX:~$ ps aux | grep redis
root 1027 0.0 0.0 66328 2112 ? Ss 20:30 0:00 sudo -u ubuntu /usr/local/bin/redis-server /etc/redis/redis.conf
ubuntu 1107 19.2 48.8 7629152 7531552 ? Sl 20:30 2:21 /usr/local/bin/redis-server *:6379
따라서 서버는 우분투로 실행 중입니다.
주석없이 내 limits.conf 파일은 다음과 같습니다.
ubuntu@ip-XX-XXX-XXX-XXX:~$ cat /etc/security/limits.conf | sed '/^#/d;/^$/d'
ubuntu soft nofile 65535
ubuntu hard nofile 65535
root soft nofile 65535
root hard nofile 65535
다음은 sysctl fs.file-max의 출력입니다.
ubuntu@ip-XX-XXX-XXX-XXX:~$ sysctl -a| grep fs.file-max
sysctl: permission denied on key 'fs.protected_hardlinks'
sysctl: permission denied on key 'fs.protected_symlinks'
fs.file-max = 1528687
sysctl: permission denied on key 'kernel.cad_pid'
sysctl: permission denied on key 'kernel.usermodehelper.bset'
sysctl: permission denied on key 'kernel.usermodehelper.inheritable'
sysctl: permission denied on key 'net.ipv4.tcp_fastopen_key'
sudo로
ubuntu@ip-10-102-154-226:~$ sudo sysctl -a| grep fs.file-max
fs.file-max = 1528687
또한 redis.log 파일의 맨 위에이 오류가 표시되지만 관련이 있는지 확실하지 않습니다. 우분투 사용자는 최대 열린 파일을 변경할 수 없지만, 높은 ulimits를 설정하면 설정하지 않아도됩니다.
[1050] 23 Aug 21:00:43.572 # You requested maxclients of 10000 requiring at least 10032 max file descriptors.
[1050] 23 Aug 21:00:43.572 # Redis can't set maximum open files to 10032 because of OS error: Operation not permitted.