리눅스 Low 메모리 질문입니다.
글쓴이: ironkknd / 작성시간: 월, 2011/02/21 - 9:56오전
현제 수리눅스 2.0(32bit)을 쓰고 있습니다.
2CPU 에 8기가 메모리를 사용하는데
/var/log/messages 에 Out of Memory 라는 문구가 올라오면서 구동중인 프로세스가 죽습니다.
관련하여 구글링 및 모니터링 결과 Low 메모리 부족으로 죽는걸로 파악되었습니다.
메모리를 2기가 정도로 쓰면 상관이 없는데 부득이하게 8기가를 써야 되는 상황입니다.
로우 메모리를 확장하면 될것 같은데 Huge-kernel이나 4G/4G split on 커널패치를 통하여 로우 메모리를 늘리는 방법이 있는데
이게 잘안되네요 혹시 경험있으신 분이나 관련해서 볼수 있는 사이트 부탁 드립니다.
Forums:
PAE 커널을 사용하면 32비트 환경에서 64GB까지
PAE 커널을 사용하면 32비트 환경에서 64GB까지 인식하지만, 성능은 64비트 모드보다 떨어집니다.
64비트로 재설치후 로그
64비트로 새로 설치하여 서비스 하는 도중에 다시 발견된 문제 입니다.
32비트시에는 Out of memory 였고 64비트에서 실행한 값은 Out of socket memory 입니다
sysctl.conf 를 참고하여 올리겠습니다.
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
kernel.shmmax = 2147483648
kernel.shmall = 2097152
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 262144
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144
net.core.netdev_max_backlog = 2500
net.ipv4.netfilter.ip_conntrack_max = 1000000
개발 언어는 C 이며 컴파일은 gcc로 하였으며
클라이언트에서 Socket 접속이 안되는 현상입니다. 기존에 소켓에 접속되어있는것도 끊어진 현상입니다.
댓글 달기