Confluence와 JIRA의 함정 메모리의 늪 에 빠질 준비가 되어 계신가요? JIRA와 Confluence를 개인 서버로 사용할 때 가장 큰 고민은 메모리입니다.
Confluence와 JIRA의 함정 메모리의 늪
메모리가 부족하다.
클라우드 서버를 호스팅하는데 큰 리소스가 들어갈 것이라 생각하지 않았습니다.
홈페이지 하나 돌리는데 1 Core에 Ram 1G면 남아 돈다고 생각했습니다. 물론 개인용 서버라는 가정입니다.
하지만 JIRA가 원할하게 구동하기 위한 환경으로 최소 메모리 2G를 요구합니다.
추가로 Confluence(WIKI)까지 생각해 봤을 때 이는 심각한 문제를 초래할 수 있습니다.
KT 클라우드 서버를 사용하는 입장에서 워드프레스가 항상 너무 느렸습니다. 왜 이럴까 고민하던 찰라….
메모리를 검사해본 결과(리눅스로 명령어 free -m -t 또는 top) 충격적인 것은 항상 16M가 남아 있고, 그나마 더 이상 올라가지도 내려가지도 않았습니다.
하드를 스왑해서 계속 쓰고 있는 것이 뻔한 상황이었습니다. 느린 것도 전혀 이상하지 않은 상황입니다.
결단의 기로
일단 JIRA는 현재로서는 사용이 거의 불가능합니다. WIKI 역시 마찬가지입니다.
문제는 둘다 JVM 기반이고 JVM 자체가 무겁습니다. 사실 wordpress는 JVM 없이도 잘 돌아갔는데, WIKI와 JIRA로 인하여 더 무거워졌고 홈페이지가 너무 느려졌습니다.
Managing Confluence’s performance and memory usage really depends on what resources are available. Confluence will run faster if you give it lots of memory for its caches, but it should still be able to run quite well in low-memory environments, with the right tuning. Below are some tips on getting the most out of your Confluence site.
결단이 필요한 것 같습니다.
JIRA와 Confluence 욕심은 조금 더 차후에 내야할 것 같습니다. (이 글은 2013년 11월에 작성되었지만, 결국 2016년에 구매해서 설치하게 됩니다.).
어차피 회사에서 쓰니 회사에서 잘 쓰는 방향으로 하고, WIKI를 잘 정리해서 워드프레스에서도 유사하게 잘 쓸 수 있게 꾸며야 할 것 같습니다.
그리고 당시 KT ucloudbiz의 서비스에도 메모리 증설 옵션은 없었습니다. 애초에 시스템을 새로 꾸려야 한다는 겁니다.
꾸리는 것은 어렵지 않지만, 귀찮고 들어가는 투자 비용 대비 그만큼의 기대 효과는 없을 것 같다.
이렇게 JIRA와 WIKI를 접어야 하는 것인지… 시작 한달도 안 되서… 아쉽다.
회사에서 쓰자..
또 다른 메모리 귀신의 등장
이건 또 뭐야… 메모리가 시간 단위로 줄어들고 있습니다. 워드프레스인지 뭔지…. ㅋ 10분 단위로 계속 줄어 듭니다.
어떻게 잡을 것인가…. 쩝…. 저거 잡는게 다음 미션일 것 같습니다. 내일 아침이면 아마 메모리 안 남아 있을 것 같습니다.
이거 잡으면 WIKI 하나는 돌릴 수 있지 않을까 싶기도 한데… ㅋ
total used free shared buffers cached Mem: 1024 499 524 0 8 78 -/+ buffers/cache: 412 612 Swap: 4095 53 4042 Total: 5120 553 4567 [root@StudyDev bin]# free -m -t total used free shared buffers cached Mem: 1024 513 510 0 8 78 -/+ buffers/cache: 425 598 Swap: 4095 53 4042 Total: 5120 567 4552 [root@StudyDev bin]# free -m -t total used free shared buffers cached Mem: 1024 515 509 0 9 78 -/+ buffers/cache: 426 597 Swap: 4095 53 4042 Total: 5120 568 4551 [root@StudyDev bin]# free -m -t total used free shared buffers cached Mem: 1024 516 508 0 10 78 -/+ buffers/cache: 426 597 Swap: 4095 53 4042 Total: 5120 569 4550 [root@StudyDev bin]# free -m -t total used free shared buffers cached Mem: 1024 517 506 0 10 80 -/+ buffers/cache: 426 597 Swap: 4095 53 4042 Total: 5120 571 4548 [root@StudyDev bin]# free -m -t total used free shared buffers cached Mem: 1024 520 503 0 11 81 -/+ buffers/cache: 427 597 Swap: 4095 53 4042 Total: 5120 573 4546 [root@StudyDev bin]# free -m -t total used free shared buffers cached Mem: 1024 535 488 0 12 81 -/+ buffers/cache: 441 582 Swap: 4095 53 4042 Total: 5120 589 4530
이건 top 상황…. 2013-11-12 오후 11:16… 상황… 내일 회사 일찍 가서 확인해야겠습니다.
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 6770 apache 15 0 76352 55m 6028 S 0.0 5.4 0:34.68 httpd 6765 apache 15 0 74260 53m 6064 S 0.0 5.2 0:35.76 httpd 6768 apache 15 0 73940 53m 6028 S 0.0 5.2 0:37.58 httpd 6767 apache 15 0 73936 52m 6052 S 0.0 5.2 0:35.05 httpd 6763 apache 15 0 72616 51m 5528 S 0.0 5.0 0:40.47 httpd 6898 apache 15 0 72620 51m 5276 S 0.0 5.0 0:32.06 httpd 6764 apache 15 0 71832 50m 5148 S 0.0 4.9 0:33.70 httpd 6769 apache 16 0 70600 49m 6048 S 0.0 4.9 0:32.82 httpd 6766 apache 15 0 63600 42m 5536 S 0.0 4.1 0:30.07 httpd 6761 root 18 0 30664 9500 4964 S 0.0 0.9 0:00.02 httpd 1497 mysql 18 0 143m 7784 2884 S 0.0 0.7 5:23.18 mysqld
결론
Confluence와 JIRA의 함정 메모리의 늪 에서 빠져 나오고자 한다면 메모리 용량 1G 로는 안됩니다.
홈페이지 운영하기 위해서 구축한 호스팅 서버인데, 구동은 가능하나 너무 느리다면 의미가 없습니다.
아무래도 둘 다 모두 포기해야하는 것 같습니다. 다른 쪽에 올릴 수 있는 방법을 찾아서 연결하는 쪽으로 구상해봐야겠습니다.
이 사이트는 홈페이지가 제일 중요하기 때문에 대신 jira 처럼 쓸 수 있는 무언가를 찾아봐야겠습니다.
메모리 잠식 문제는 httpd 데몬의 수를 제한적으로 운영하도록 하여 일정 이상의 메모리 잠식이 벌어지지 않도록 httpd.conf 파일의 prefork 설정을 변경했습니다.
이 방법이 적절한지는 의문이기에 좀 더 지켜봐야할 필요성이 있어 보입니다.
4년이 지난 시점
2013-11-13 09:45 작성하였고, 결국 당시KT ucloudbiz 서비스는 종료시켰습니다. 잠깐 AWS에도 올려 보았으나, 결국 개인 용도의 서버를 구매했습니다.
HP MicroServer Gen8이라는 개인용 서버이고, 2016년 RAM을 결국 16GB까지 올려 버리고서는 JIRA, Confluence, Bitbucket까지 설치했습니다.
Confluence와 JIRA의 함정 메모리의 늪 그것은 의지가 생기니 시간이 흘러서 서버 하나 구매하고, 램 늘려주니 아무것도 아니었습니다.