반응형
배치 서버가 죽었다 ^_ㅠ
다행히 운영서버는 아니라서 괜찮았지만 왜 죽었는지 보니 젠킨스 로그에 이런게 남아있다.
~~ 서버정보 생략 ~~ Server VM warning: INFO: os::commit_memory(0x00000000c0000000, 358088704, 0) failed; error='Cannot allocate memory' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 358088704 bytes for committing reserved memory.
# An error report file with more information is saved as:
# ~~ 상세내용 생략 ~~
Build step 'Execute shell' marked build as failure
Finished: FAILURE
메모리가 부족해서 발생한 이슈같은데 최근에 개발서버에 작업했던 내용들이 있어서
현 상태의 메모리 정보 확인 차원에서 아래 명령어를 실행 시킴
# 추천! 사람이 읽기 편한 단위로 표시
free -h
# Megabytes 단위로 표시
free -m
# Gigabyte 단위로 표시
free -g

이 명령어는 전체 사이즈 기준으로 여유분이 얼마나 있나
현재 얼마만큼 쓰고 있나를 확인할 때 사용하기 좋다
젠킨스 하나 올릴 때마다 거의 700mb를 쓰고 있어서
거의 여유가 없다고 보면 된다 프로세스 돌다보면 그냥 죽는다
# 5초에 한 번씩 refresh해서 cpu 사용량 및 작업 내역 표시
top

이건 실시간으로 어떤 프로세스가 점유율이 높은지 볼 때
사용하는데 사실상 java 칭구가 가지가지로 다양하게 끌어다 쓰고 있다는 걸 알 수 있다
# 현재 실행되는 프로세스에 대해 RSS 순으로 가장 많이 차지하는 TOP 10 표시
ps -eo user,pid,ppid,rss,size,vsize,pmem,pcpu,time,cmd --sort -rss | head -n 11
PS 명령어를 통해 RSS 순으로 표시해달라고 했는데
캡쳐해서 올리기는 문제가 있어보여서 명령어만 올림
참고로 PS 명령어를 통해 표시되는 항목 중 헷갈리는 항목만 따로 적어봄
이젠 AI에 다 물어보기 때문에 굳이 써야되나 싶긴하지만 정리할 겸 써본다
- RSS의 경우 실제 점유하고 있는 메모리로 RAM에 올라가서 사용되는 사이즈를 표시한다. KB 단위로 표시됨
- VSIZE는 가상 메모리 총량을 의미하는 것으로 이 안에는 앞에서 말한 RSS도 포함되며 아직 사용되지 않은 메모리 영역까지 포함한다. 사용가능한 메모리로 미리 잡아둔 거라고 보면 될 듯.
메모리 사용율 확인할 때 유용한 명령어 세 가지를
사용 용도에 따라 사용하는 방법을 공유해봄
블로그 너무 오랜만에 쓰는데 이제 더 쓸 일이 없어지겠지,,,
[참고]
ps 명령어 사용법 https://code-lab1.tistory.com/328
반응형
'Server > Linux' 카테고리의 다른 글
[Linux] crontab 설정 및 로그 확인 (2) | 2021.01.13 |
---|---|
[Linux] 로그 삭제 배치프로그램 (2) | 2019.09.23 |
[Linux] alias 설정하기 (0) | 2019.09.02 |
IP 확인 : ping, tracert, nslookup (0) | 2018.10.04 |
[Linux] 최근 변경 파일 탐색 (0) | 2018.09.27 |