기술노트

기술노트

게시물 상세
​​Linux open files 의미와 수정
작성자 : 관리자(jieun@ehostidc.co.kr)  작성일 : 2019-02-19   조회수 : 3661

Linux open files 의미와 수정
 
1. open files 의 의미
 - 서버의 프로세스가 가질 수 있는 소켓 포함 파일 갯수
 
2.  ubuntu 16.04 서버에서의 open files 설정 확인
# ulimit -a


3. 주요 체크 사항
  - open files               : 서버의 프로세스가 열 수 있는 최대 파일 갯수
  - max user processes  : 유저가 사용 가능한 프로세스의 초대 갯수
  - 유저는 최대 3764개의 프로세스를 사용할 수 있고, 해당 프로세스는 최대 1024개의 파일을 열수 있다.
    ==> open files 설정이 제한 사항
 
4. running 환경에서의 간단 수정
# ulimit -u 16384 -n 65536

-  max user process : 16384 / open files : 65536  으로 변경됨.
- 재부팅 시 원복됨으로 인해, rc.local 파일에 해당 command 등록시 상시 적용
 
5. 실 서버에서의 open files 확인 방법
# ps -ef | grep 프로세스명
# lsof -p 프로세스ID | wc -l

 

6. /etc/security/limits.conf  설정
   - soft limit 와 hard limit 의 두가지 설정
  a. soft limit 확인 방법   
# ulimit -a  
# ulimit -Sa
 
  b. hard limit 확인 방법
# ulimit -Ha

 

c. open files 설정
     - soft > hard 보다 커게 설정 안됨.
# mysql 
mysql   soft   nofile     10240
mysql   hard  nofile     10240
 
# oracle
oracle   soft   nproc    2047
oracle   hard   nproc    16384
oracle   soft   nofile   1024
oracle   hard   nofile   65536
 
#  전체 user 에 동일 하게 설정시 
*   soft      nofile          65536
*   hard     nofile          65536
 
 7. 기타
    a. open files 의 경우  oracle 의 설치시 요구되는 65536 으로 설정하고, max user process 의 경우 10240 정도로 설정한다
    b. max user process 가 가장 민감한 서비스는 apache 같은 웹서버의 max process
    c. max user process 가 10240으로 설정된 apache 서버의 경우 apache max connection을 10240까지 셋팅 가능하다는 의미
    d. apache 운영시 apache의 user_id 별로 max user process 설정에 따른다.

이전글 CentOS Software Raid 구성
다음글 java 멀티 설치 및 환경 설정