서버가 죽었습니당 ㅠㅠ

incarnate의 이미지

안녕하십니까?

윤영원이라고 합니다.

다름이 아니라 제가 관리하는 서버중 하나가 이유도 없이 갑자기 죽었습니다.

모 호스팅 업체에서 서버 호스팅을 받고 있는데 서버 호스팅 시작 2일후부터 커널쪽에서 오류가 나면서 시스템이 죽고 있습니다.

사용 하드웨어는

Model: 1U Rack Type 서버
CPU: Intel Cell [2.4G]
RAM: 512M (DDR RAM memory)
HDD: IDE 80G (7,200 rpm)

이와 같은 사양에 페도라 코어2를 사용하고 있습니다.

초기 셋팅후 yum을 이용하여 전 패키지를 최신으로 유지하고 있습니다. (커널버전 2.6.10-1.771_FC2)

설치 패키지는 APM을 제외하고 전부 기본 패키지를 이용하고 있습니다.

APM은 직접 컴파일을 했고 아파치 버전은 2.0.54 / PHP버전은 5.0.4 / MySql버전은 4.1.11를 사용하고 있습니다.

동일한 버전으로 다른 서버 3대에서 운영중이지만 아래와 같은 오류는 한번도 없었습니다.

해서 /var/log/messages를 살펴보니

May 30 05:01:16 stonewall kernel: [<c017d6bd>] prune_icache+0x197/0x364
May 30 05:01:16 stonewall kernel: [<c017d89e>] shrink_icache_memory+0x14/0x2b
May 30 05:01:16 stonewall kernel: [<c014ac1c>] shrink_slab+0xfe/0x161
May 30 05:01:16 stonewall kernel: [<c014c586>] balance_pgdat+0x1a4/0x2ba
May 30 05:01:16 stonewall kernel: [<c014c75f>] kswapd+0xc3/0xc5
May 30 05:01:16 stonewall kernel: [<c013376c>] autoremove_wake_function+0x0/0x2d
May 30 05:01:16 stonewall kernel: [<c013376c>] autoremove_wake_function+0x0/0x2d
May 30 05:01:16 stonewall kernel: [<c014c69c>] kswapd+0x0/0xc5
May 30 05:01:16 stonewall kernel: [<c01011dd>] kernel_thread_helper+0x5/0xb
May 30 05:01:16 stonewall kernel: Code: 00 00 5b 5e c3 55 89 e5 57 bf 01 00 00 00 56 53 89 c3 e8 ea f5 ff ff 85 c0 0f 84 06 01 00 00 8d b3 64 01 00 00 8b 9b 6c 01 00 00 <81> 7b 6c 3c 4b 24 1d 74 13 e8 ca f4 f9 ff 8d 43 6c 50 68 e3 03

이와 같은 유언을 남기고 죽었습니다.

해당 업체에 전화를 해서 하드웨어를 디스크를 제외하고 전부 교체했습니다.

하드웨어 교체후 이제 시스템이 죽지는 않지만 /var/log/messages에

May 31 22:38:32 stonewall kernel: oom-killer: gfp_mask=0x1d2
May 31 22:38:33 stonewall kernel: Mem-info:
May 31 22:38:33 stonewall kernel: DMA per-cpu:
May 31 22:38:33 stonewall kernel: cpu 0 hot: low 2, high 6, batch 1
May 31 22:38:33 stonewall kernel: cpu 0 cold: low 0, high 2, batch 1
May 31 22:38:33 stonewall kernel: Normal per-cpu:
May 31 22:38:33 stonewall kernel: cpu 0 hot: low 32, high 96, batch 16
May 31 22:38:33 stonewall kernel: cpu 0 cold: low 0, high 32, batch 16
May 31 22:38:33 stonewall kernel: HighMem per-cpu: empty
May 31 22:38:33 stonewall kernel:
May 31 22:38:33 stonewall kernel: Free pages: 3240kB (0kB HighMem)
May 31 22:38:33 stonewall kernel: Active:61503 inactive:61379 dirty:0 writeback:0 unstable:0 free:810 slab:1697 mapped:123059 pagetables:681
May 31 22:38:33 stonewall kernel: DMA free:88kB min:88kB low:108kB high:132kB active:6532kB inactive:6080kB present:16384kB pages_scanned:13019 all_unreclaimable? yes
May 31 22:38:38 stonewall kernel: protections[]: 0 0 0
May 31 22:38:38 stonewall kernel: Normal free:3152kB min:2780kB low:3472kB high:4168kB active:239480kB inactive:239436kB present:499648kB pages_scanned:368325 all_unreclaimable? no
May 31 22:38:38 stonewall kernel: protections[]: 0 0 0
May 31 22:38:38 stonewall kernel: HighMem free:0kB min:128kB low:160kB high:192kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
May 31 22:38:38 stonewall kernel: protections[]: 0 0 0
May 31 22:38:38 stonewall kernel: DMA: 0*4kB 1*8kB 1*16kB 0*32kB 1*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 88kB
May 31 22:38:38 stonewall kernel: Normal: 72*4kB 10*8kB 2*16kB 0*32kB 1*64kB 1*128kB 0*256kB 1*512kB 0*1024kB 1*2048kB 0*4096kB = 3152kB
May 31 22:38:38 stonewall kernel: HighMem: empty
May 31 22:38:38 stonewall kernel: Swap cache: add 259055, delete 258690, find 817/1225, race 0+1
May 31 22:38:38 stonewall kernel: Free swap: 0kB
May 31 22:38:38 stonewall kernel: 129008 pages of RAM
May 31 22:38:38 stonewall kernel: 0 pages of HIGHMEM
May 31 22:38:38 stonewall kernel: 2034 reserved pages
May 31 22:38:38 stonewall kernel: 6545 pages shared
May 31 22:38:38 stonewall kernel: 365 pages swap cached
May 31 22:38:38 stonewall kernel: Out of Memory: Killed process 4442 (httpd).

이와 같은 오류를 남기고 있습니다.

오류 로그가 상당히 겁을주고 있는거 같은데 언제 다시 시스템이 죽을지 몰라서 걱정하고 있습니다.

흐흐흐.... :twisted:

해당 호스팅 업체에서 말하기를 커널을 다운그레이드(2.4)를 해보라고 하지만 영 찜찜해서 커널 다운그레이드는 우선 보류하고자 합니다.

kldp여러분들의 조언을 듣고자 합니다.

codebank의 이미지

2.4가 2.6보다는 안정성면에서는 더 좋은것같다는 개인적인 의견입니다. :)
2.6이 상당히 진보된 경향을 보이긴합니다만 서버로 사용하기에는 조금 불안한면이
없지 않아 있습니다.
이유는 지금도 계속 개발중인 커널이기 때문이죠.
물론 2.4의 경우도 계속 개발중이긴 합니다만 안정적인 상태로 버그만을 수정중인
상태이기 때문에 서버로 사용하시려면 2.4도 고려해 보시는 것도 염두해 두시라고
하고 싶네요.
항상 최신버젼이 좋은 것만은 아닙니다.

해당 메시지를 보면 swap이 전부 사용중이라고 나오는데 메모리쪽도 한번 살펴보시는건
어떨런지요?
df, top, vmstat등등을 이용해서 메모리 사용현황을 분석해보세요.
swap을 너무 작게 잡지는 않았는지도 확인해보시고 swap이 정상적인지도 확인해
보시는게 좋을것 같습니다.(256M면 적당한 크기라고 알고 있는데... 쩝...)

제가 조언을 해드릴 것은 이정도이고 만일 그래도 문제가 발생을 한다면 마지막
카드인 HDD까지 교체를 해보시는 방법이 남아있겠네요. :twisted:
(잘 안되면 장비 탓으로 돌려버리는게...)

------------------------------
좋은 하루 되세요.

incarnate의 이미지

먼저 답변주셔서 정말 감사합니다.

디스크 교체도 전체적인 하드웨어 교체전에 한번 했었습니다.

음...

제가 경력이 짧기는 하지만 페도라코어2에서 이와 같은 오류는 처음 봐서리 너무 당혹스럽습니다.

아직 서버가 죽은건 아니니 몇일더 두고 봐야 할거 같습니다.

ps : 비가옵니당 (여기는 서울...)
장혜진의 雨라는 노래가 생각나네용~
아시는분? :roll:

먹고 죽자~

익명 사용자의 이미지

OOM Killer가 도는걸로보아 일단 시스템의 전체적인 메모리가 부족합니다. codebank님의 의견에 저는 한표!!

warpdory의 이미지

codebank 님께서 말씀하신 대로 메모리 부족 같습니다.

swap 영역을 얼마쯤 잡아놓고 쓰시는지는 잘 모르겠지만, 가끔 서버가 죽어 있을 때 로그 보면 저런 게 있는 걸 몇번 본 기억이 있습니다.

일단, 메모리를 늘려 보시고, 스왑파티션 싸이즈도 좀 크게 하세요.

아파치 설정, 버전, 모듈 등에 따라서 다르지만, 한 세션이 접속하면 대충 0.5 메가쯤 먹게 됩니다. 거기에 php, db 까지 뜨는 걸 생각하면 대충 2 메가쯤 잡고서 계산해 보세요. 최대 접속할 때가 얼마쯤 접속하는지... 이런 걸요.
그러면 대략적으로 필요한 메모리가 나오게 됩니다.

제가 관리하는 서버 한대도 아직 2.4.22 에서 커널을 더이상 안 올리고 있습니다. 잘 돌아가고 있는 거... 괜히 건드릴 이유는 없다고 보거든요.


---------
귓가에 햇살을 받으며 석양까지 행복한 여행을...
웃으며 떠나갔던 것처럼 미소를 띠고 돌아와 마침내 평안하기를...
- 엘프의 인사, 드래곤 라자, 이영도

즐겁게 놀아보자.

incarnate의 이미지

서버의 메모리는 512M입니다.

스왑은 1G로 충분하다고 봅니다.

현 동시 접속자는 1~2명 정도입니다.

이런 상황에서 메모리 부족이 나온다는게 좀 이상합니당...

하여간 좀더 지켜본 다음에 이상이 생기면 다시 글을 올리도록하겠습니다.

답변주신분들 감사합니다~

먹고 죽자~

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.