soft limit 에 대해 보통은 초과해도 되는 값이고 hard limit 이 max 수치로 알고 있었으나
soft limit 을 초과할 시, mysql user 로 스위칭 및 db 접속도 불가한 현상이 발생하였다.
보통은 아래 파일에 해당 값을 넣는데
/etc/security/limits.conf
* hard nofile 65535
* soft nofile 65535
* hard nproc 65535
* soft nproc 32768
* hard core unlimited
왠걸.. OS 를 기본 설치하면, 해당 경로에 파일이 하나 더 있다..
그래서 아래 경로의 설정을 읽어서 soft limit 이 적용 됨.
/etc/security/limits.d/20-nproc.conf
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.
#* soft nproc 32768
* soft nproc 4096
root soft nproc unlimited
rpm -qf /etc/security/limits.d/20-nproc.conf
pam-1.1.8-22.el7.x86_64
따라서 os 설치 후 해당 경로의 설정 값도 같이 변경하거나
아니면 삭제를 해도 무방할 것으로 보임.
추가로 limit.conf에 적용하여도 기존 구동된 프로세스는 이전 설정의 영향을 받으니 재기동 필요.
cat /proc/58955/limits | grep "Max processes"
Max processes 4096 65535 processes
prlimit --nproc --output RESOURCE,SOFT,HARD --pid 58955
RESOURCE SOFT HARD
NPROC 4096 65535