Develop/RaspberryPi

Raspberry pi 웹서버 사용기 및 2 > 4로 업그레이드 후기

GuriZzang 2019. 9. 3. 01:23

먼저 2014년쯤 회사에서 윈도우 서버와 MSSql을 사용하는 회사라 지인이 쓰다 넘겨주신(버린)

인텔 제온 CPU와 보드 1Tb의 HDD와 4Gb램으로 윈도우 서버를 구축하고 IIS와 NameServer 그리고 MSSql로

개인 웹서버를 만들어 관리하였다.

 

하지만 큰 덩치와 끊임없는 전기 폭식으로 지인의 사업장에 파킹서비스(그냥 구석에서 전기좀 써도 될까요? 구걸함)를 하기로 하였고

서버를 설치하였고 SKT를 사용하는 IDC(사업장 구석데기)에서 원치않는 노하우를 쌓게 되었다.

바로 SKT는 80포트를 지원하지 않는다는거. (궁서체다 진지하다)

 

일단 80포트가 열려있는 회선을 알아보게 되었고 국내유일하게 KT에서 80포트가 열려있다는 확인을 받았다. (SKT와 LGu+ 그리고 지역 케이블 TV에서는 자체서비스에서 80및 웹서비스용 포트들을 사용한다고 하였다)

내가 너희를 구원할 KT다~

80이 열려있는 서비스 업체는 결정하였고 SKT를 사용하는 지인의 IDC(...) 의 회선을 바꾸기 위해 결코 거부할 수 없는

떡밥을 던지기 위해 사은품을 제일 많이 줄 수 있다는 가업업체를 찾아다녔고 결국 지인의 핸드폰등을 결합상품으로 묶고

현금 4장정도를 받을 수 있다는 업체를 찾아 떡밥을 던졌다. 물론 파킹요금도 같이 퉁 치자는 말도 잊지 않고 말이다.

공짜 가즈아~

 

지인은 KT로 바꿔주었고 1년간 무료 파킹서비스를 받을 수 있었다.

 

서론이 길었지만 박찬호급의 TMI가 아니기때문에 상관하지 않겠다.

마! 아직 2014년이다.

 

그러던중 PHP, Linux를 사용하는 회사를 들어가게 되었고

엄청난걸 보게 되었다.

리눅스 콘솔은 JAVA를 할때 서버 restart를 하라고 받았던 shutdown 명령어가 내 인생의 전부였다.

 

어찌저찌 윈도우서버를 지우고 리눅스 서버를 세팅해야 할까 라는 생각을 하다 윈도우는 남기고 리눅스용 서버를

새로 만들자는 생각을 하게 되었을때 개발도상국의 아이들을 위해 교육용으로 개발하였다는 라즈베리파이를 알게 되었다.

제가 개발 도상국 입니다. 성은 도에 이름은 상국이지요.
이그시 Raspberry Pi 2 Model B 이다

그렇지 개발을 하는 도씨성의 상국이를 위한 교육용이기에 가격도 저렴했다.

5만원대에 출시 되었다지만 한국에선 배송비를 포함해서 7만원대에 구입한 걸로 기억한다. (써글 난 개발 도 상국인디)

 

암튼 어찌저찌 Apache, Php, Mysql등을 설치하고 웹서버를 구축해서 사용하다 어느날 라즈베리파이 최대 단점을 찾게 되었다.

이 라즈베리파이라는 놈은 Micro SD카드를 사용하는데 이놈이 내구성이 엄청나게 약하다는 것이다!

어느날 갑자기 웹사이트 접속이 안되 알아봤더니 메모리가 죽었다.

고생 고생해서 웹서버 세팅하고 사이트 구축했더니... 메모리가 죽었다. 백업도 안해놨는데..

 

미대 다닐때 (2007년쯤으로 기억한다) SCSI 20기가 하드를 메인으로 40기가 하드4개를 사용했는데(메인, 멀티미디어, 작업물) 시게이트에서 대용량 80기가 HDD가 나왔다고 해서(그때 당시엔 정말 큰 용량) 80기가짜리 두개로 전체 하드를 변경한 적이 있다.

정말 어이없던게 HDD를 변경하고 데이터를 전부 옮기고 한달 정도 후 하드에서 끼릭 끼릭 소리가 나서 재부팅을 했는데 하드가 죽었다.

그것도 멀티미디어가 담겨있던 HDD가 아닌 5년간의 작업물이 고스란히 담겨있던 HDD가 멈췄다.

혹시 몰라 USB외장형 케이스도 구입해서 물려보고 친구 컴에도 물려보고하면서 디스크를 혹사 시켰다.

결국 자체 해결은 포기하고 시게이트 A/S센터를 방문하여 데이터 복구 업체를 소개받았고 그때당시 80Gb디스크의 복원가격은 60만원정도 든다고 안내받았다.

5년간의 데이터가 들어있기때문에 복원을 해달라고 하였지만 평균 2~3일이면 끝난다고 안내받았던게 2주나 지나서야 완료가 되었다는 연락을 받고 복구 업체를 찾아갔다.

하지만 복구업체에선 디스크가 물리적으로 너무 많은 상처가 났고 그나마 복구한것을 확인해보고 원하면 비용을 지불하고 가져가고 아니면 그냥 포기 하라는 답변을 들었다.

졸업 작품을 준비하던 데이터도 사업을 하며 만들었던 캐릭터들도 한순간에 날아가는 순간이었다.

그 후로 난 시게이트를 사용하지 않는다. 절대로..

 

다시 본론으로 돌아와 미대 다닐때 이후 디스크(메모리)가 날아가 당황했던적은 처음이었다.

라즈베리파이는 메모리가 아닌 USB장치로의 직접 부팅은 불가능하였고(가능하다는 말은 많았지만 난 실패했다)

Noobs라는 비슷한 기능을 하는 OS를 설치하게 되었다.

 

외장으로 사용하던 5400rpm 500Gb HDD를 사용하였고 라즈베리파이의 부족한 USB파워를 위해 5V 2A 아답터 두개를 사용하였다.

(최초 부팅할때는 동시에 전원을 켜줘야 했다.)

결과는 만족스러웠고 충분한 성능을 발휘했다. (물론 접속자가 나랑 웹 크롤러외에는 없으니 가능했다고 본다.)

Git Server를 설치해 사용하였고 워드프레스, Mysql, 웹사이트 7~8개를 띄워놓고 사용했었다.

개인적으로 트래픽이 많지 않다면 1Gb램으로도 충분하다 생각했다. Gitlab을 설치하기 전까진..

 

그러다 명령어로 사용하는 GitServer로 브랜치 관리와 태그를 관리하기가 힘들어 Gitlab을 설치하기로 하였다.

Gitlab은 기존 설치되어 있던 Apache를 사용 할 수 없었다. 이래저래 검색끝에 프록시로 해결은 했으나

엄청나게 느렸다.

최소사양이 Ram 2Gb였던 Gitlab을 위해 1Gb의 스펙을 가지고 있던 파이의 100Mb 스왑을 2Gb로 늘려봤지만 프로젝트를 생성하는순간 라즈베리파이가 멈췄다.

 

결국 라즈베리파이4를 새로 주문하였고 추가로 HDD확장 모듈도 같이 구입하였다.

배송이 완료된날 원래 있던 메모리와 HDD를 라즈베리파이 4로 이식하고 부팅을 시도하였으나.... 먹통.

부팅이 안된다. 아... 또 메모리... 백업도 안했는데.. 파일은 어찌 저찌 백업을 한다고 해도 워드프레스 DB는 백업도 안했는데..

 

결국 우려가 현실이 되었고

결국 새로운 파이4를 위해 노트북의 HDD를 뜯어서 새로운 서버를 만들고 있다.

 

결론은 간단한 웹서버로서 라즈베리파이 2는 충분히 만족스러운(개인적으론 그렇게 생각한다.) 성능을 보여주었고 디스크의 안정성만 확보된다면 NAS서버, 웹서버등으로 충분히 사용할만하다는 것이다.

 

그리고 라즈베리파이4는 훨씬 좋은 CPU (어딘가에선 갤럭시 A7과 동급이라고 말하는 포스팅을 본 적이 있다) 4Gb램 USB3.0으로 훨씬 더 좋은 스펙을 갖고 있으니 간단한 웹서버, Gitlab서버, Nas서버로 충분히 매력적이라고 볼 수 있겠다. (아직 세팅전이다. 그렇다 예상이다.)

 

제목은 사용기라고 했으니 사용기를 썼다. 다른말도 많이 썼지만 법을 어긴건 아니다.

마 내가 대학교대...
,,,,,,

 

 

마지막으로 라즈베리파이2와 파이4의 스펙비교로 마무리 하겠다.

 

- 추가 : 라즈베리파이4는 발열이 엄청나다. 기본 아이들시 파이2는 미적지근 하는 정도였다고 하면 4는 뜨끈하다.

아이들시에는 훨씬 더 뜨겁고 기타 칩셋등에서도 훨씬 뜨거운 열이 난다.

왼쪽이 Pi4 오른쪽이 Pi2. 방열판을 훨씬 큰걸 달아놨지만 훨씬 뜨겁다. Pi2는 켜져있다는것을 알 수 있을정도로만 미지근 하다.
USB외장디스크 모듈. USB 3.0을 자체 제작한 "ㄷ"자 모양 컨넥터로 연결된다. 깔끔하다.
외장HDD의 파워는 파이에 연결하였다. 이제 파이를 끄면 같이 꺼진다.
예전 메인보드를 버릴때 때어놓은 방열판들을 붙여놨다. 저리큰걸 달아놔도 대기모드일때조차 뜨겁다. 많이. 써멀구리스도 GPU용을 발랐는데 여름엔 작은 팬이라도 달아야지 싶다.
파이2에도 방열판을 붙여놨었다. 물론 CPU에만달아놨지만 충분히 미지근하다. 단! gitlab을 돌릴때 몇년만에 처음으로 엄~~~!!청 뜨거워졌었다. 

 

   

Specification

Compared to the Raspberry Pi 1 it has:

  • A 900MHz quad-core ARM Cortex-A7 CPU
  • 1GB RAM

Like the (Pi 1) Model B+, it also has:

  • 100 Base Ethernet
  • 4 USB ports
  • 40 GPIO pins
  • Full HDMI port
  • Combined 3.5mm audio jack and composite video
  • Camera interface (CSI)
  • Display interface (DSI)
  • Micro SD card slot
  • VideoCore IV 3D graphics core

 

Specifications

  • Broadcom BCM2711, Quad core Cortex-A72 (ARM v8) 64-bit SoC @ 1.5GHz
  • 1GB, 2GB or 4GB LPDDR4-3200 SDRAM (depending on model)
  • 2.4 GHz and 5.0 GHz IEEE 802.11ac wireless, Bluetooth 5.0, BLE
  • Gigabit Ethernet
  • 2 USB 3.0 ports; 2 USB 2.0 ports.
  • Raspberry Pi standard 40 pin GPIO header (fully backwards compatible with previous boards)
  • 2 × micro-HDMI ports (up to 4kp60 supported)
  • 2-lane MIPI DSI display port
  • 2-lane MIPI CSI camera port
  • 4-pole stereo audio and composite video port
  • H.265 (4kp60 decode), H264 (1080p60 decode, 1080p30 encode)
  • OpenGL ES 3.0 graphics
  • Micro-SD card slot for loading operating system and data storage
  • 5V DC via USB-C connector (minimum 3A*)
  • 5V DC via GPIO header (minimum 3A*)
  • Power over Ethernet (PoE) enabled (requires separate PoE HAT)
  • Operating temperature: 0 – 50 degrees C ambient

* A good quality 2.5A power supply can be used if downstream USB peripherals consume less than 500mA in total.