• 돌아가기
  • 아래로
  • 위로
  • 목록
  • 댓글
잡담

홈랩 서버 구축 PROXMOX

Nicona 1289

2

13

홈랩 서버를 만드는 이유에는 여러가지가 있지만 아주 뜬금없이 개인프로젝트를 진행해보자는 생각이 들었다

 

참고로 이 글은 강좌가 아닌 삽질 일기같은 느낌입니다..... 적다가 생각나는거 있음 강좌로도 만들고 여차저차....ㅎㅎ

 

젠킨스가 CICD 툴로 정말 좋은데 설정이 한세월입니다 스프링부트도 개념 못잡으면 구현이 한세월 걸립니당

작성중인데다 초안이라 주저리주저리 글이 더럽습니다만 관심있다면? 연락주십져 ㅎㅎ

 

------작성중--------------------------------------------------------------

 

먼저 프로젝트는

     목표:  erp + 창고관리 시스템 구축 

     OS : 리눅스 기반 운영체제

     예산: 10만원

라는 목적만 가지고 시작하게 되었다

 

먼저 오라클 클라우드를 이용하여 워드프레스를 이용한 블로형식의 홈페이지를 만들어본 결과 오라클클라우드 무료가상환경은 응답속도나 트래픽 속도가 감당못할 정도로 느리다는 것을 확인하게 되었다(아파치, 톰캣, DB가 어디꺼더라...)(아마 이게 1번강좌가 되야겠군요) 

 

워드프레스가 꽤 많은 리소스를 먹는 관계로

바닐라 상태의 부트스트랩을 활용하여  html과 (php 또는 아무런 백엔드)로 구성하자 라는 프로젝트를 시작하게 되었고 겸사겸사 서버로 사용할 PC를 번개장터와 중고나라를 돌아다니게 되었다 중고 PC (2,3...세대 아 왜 싼것들이요...) 를 둘러보면서 느낀건 모닝에서 롤스로이스를 고르듯이 눈이 점점 놓아지는 느낌이렸다....

적당한 매물은 없고 내 눈은 높은 관계로 자꾸 제온V3계열에 눈이 가던 중

5만원짜리 메인보드 + CPU 를 보게 되었다!! ASUS X99 -A usb3.1 + i7 5820k 세트 였는데 싸게 파는 이유가 오류를 뿜으며 바이오스에 진입되지 않는 문제가 있는 보드였다...

 

작동이 잘 되다가 갑자기 안된다고? > 메모리 오류났나본데 정상아냐? > 같은사양 중고가 20만원대 ? > 사야지 이건

 

라는 프로세스로 생각하다가 그냥 질러버렸다 지르자 마자 보드가 지원하는

메모리 논오버 메모리 스팩 2133 4G *2개

파워 500w 시소닉 클래식 2 중고 80PLUS

쿨러 쿨마 하이퍼 h411R 

그래픽 칼라풀 1050 중고

사타케이블

을 질렀다 예산이 10만원이라더니..12만원대에 사버렸다 

굴러다니는 512 nvme를 가져다가 꼽고 부팅을 해본 결과 안된다....

근데 오류코드가 뭔가 이상했다 메모리 하나도 없이 꼽으면 메모리가 없다는 오류인 55가 표시되야되는데 54 오류도 났다가 B6 NVRAM 초기화 오류도 났다가 여튼 뭔가

메모리 슬롯이 죽었거나 바이오스가 꼬였거나 멤컨트롤러가 죽었거나 CPU 소켓이 죽었거나 CPU가 죽었거나 메인보드가 죽었거나

중에 한가지 문제겠거니 하고 고민을 해 보니 보드, 전원, USB만 있으면 바이오스 플래시백 기능이 있어서 복구헤 보았다 

그래도 부팅에 실패한다... 어디가 오륜지 확인할 방법이 없었다 

그냥 한세트 더 사자 해서 같은사양으로 15만원대에 업어왔다.... 예산 17만원 초과다.... 

여튼 업어온 뒤에 CPU를 바꿔보니 ? 부트스크린까지 들어가진다 메인보드 15만원 굳었다 뭔가 CPU가 죽은 느낌인데 ..잘 보니 실리콘이 조금 삐져나와있다...뚜따 실패였나보다 ㅎㅎ...  나중에 CPU 제온으로 업그레이드 하고 남는 메인보드까지 굴리면 20만원정도 이득이라는 정신승리 하에 리눅스를 설치하려다... 이 스펙이면 내가 하고싶은거 다하겠는데 싶어서 가상 하이퍼 바이저를 찾다가

프록스목스 공짜!!! 라는 한마디에  proxmox 설치USB 만들고 설치완료 했다  

프록스목스 설치하고 리눅스 22.04 올려서 (프론트,백엔드 / DB / 네트워크 원격설정용 GUI ) 3대를 만들고 시운전해보았다 잘 작동한다

메모리 욕심생겨서 8 *2 3600 샀는데 메인보드가 꾸져서 3600 하니까 열을 너무 받는다 4G *2 2133 끼워서 2133 고정해벼렸다

공유기 DDNS 쓰고 공유기 포트포워딩, proxmox를 공유기dmz에 설정해준후 외부접속해 보았다 잘 작동한다! 완성!

인줄 알았는데 이제 시작이었다 

먼저 프론트, 백엔드, DB 언어를 선택할 시간

프론트는 NGINX에다가 리엑트, 백엔드는 노드 또는 톰캣, DB는 마리아DB 로 하려다가 직장동료의 추천으로 급 노선변경

프론트는 NGINX에다가 리엑트, 백엔드는 스프링부트, , DB는 마리아DB 로 웹 프로그램을 만들기로 한다

프론트 백엔드 서버에 도커를 올리고 도커에다가 리엑트를 빌드해야지 라고 생각 하자마자 그럼 코드 변하면 도커 컨테이너 다시 파야되나? 라는 생각이 들었고 CICD 툴을 쓰자 라는 생각으로 젠킨스를 깔게 된다 젠킨스로 깃허브와 연동하여 깃허브에 커밋하면 자동으로 다운받고 빌드하고 컨테이너 이미지 만들어서 컨테이너 실행까지 시켜준다! 였는데 문제가 발생한다 빌드할때마다 젠킨스 내부의 GLIBC 2.31(이건 평생가도 안잊어먹을듯)와 시스템 내부2.35의 버전이 다르단다 자꾸 2.32랑 2.34가 없데.... gnu c library 다시말해 C 언어 라이브러리인데 OS내의 거의 모든 프로그램이 참조하는 라이브러리라 업데이트 하려해도 컨테이너가 뻑나던지 시스템을 다운그레이드 하려해도 시스템이 뻑나던지... 알고보니까 환경변수 전체가 변하는 (시스템의 거의 모든 프로그램이 참조함....) 불가능한짓을 하던걸 확인해서 GLIBC 버전별 OS를 찾아서 20.04 버전과 동일해서 20.04로 다운....그레이드 했다 결과는 성공 프론트엔드 잘 불러온다 

백엔드가 삽질을 또 하게 했는데 먼저 스프링 이라는 개념이 잘 안와닿아서 톰캣을깔고 스프링프로그램을 설치하면 되나 라는 생각을 했다가 이런저런 오류가 나고 험난한 여정을 거처 스프링부트와 도커 openjdk 이미지를 이용하여 백엔드를 설치하고 백엔드까지 구성했다 

DB랑 연결할때도 오류났는데 property 설정하니까 바로 되더라 ..

프론트 백엔드 연결할때 cors 오류 났는데 알고보니 리엑트 프록시 설정은 디벨롭만 되더라... nginx 프록시로 구현했다

이제 api (DB조회, LOGIN 구현-업데이트 토큰방식, 은행api 연동...등등) 을 한 이후에 리엑트로 GUI를 구성하면 완성~!! 일꺼다 ...

 

 
 

 

 

신고공유스크랩
13

Nicona
5Lv. 663P
다음 레벨까지 57P

리액트, JAVA, 노드, 개발, 서버.... 잡종입니다 잡종... 

 

메인서버

OS : PROXMOX 

CPU :  Intel i7-5820K CPU @ 3.30GHz (6c 12t)

MEM : Samsung ddr4 64GB 2133

서비스 : 윈도우

 

NAS서버

OS : 헤놀로지

CPU :  Intel Pentium Gold G5400 CPU @ 3.70GHz (4c 4t)

MEM : Samsung ddr4 8GB X 2

STOR: 128gb nvme cash, 8Tb hdd X 5 R5 1.8TB hdd x1 

CASE : Tank H6

서비스: 홈페이지, 개발서버

 

NPM서버

OS : 우분투 

CPU :  Intel Celeron N2807CPU @ 1.58GHz (2c 2t)

MEM : ddr3 2GB

Gaida F200

 

회사 테스트서버 - proxmox

IBM X3650M3 

Supermicro x 2

 

테스트서버 - proxmox

lenovo x3550 m5 x2

 

윈도우 , KMS서버, 리눅스, 등등...

profile image 1등
달소 2022.12.28. 23:26
개발자이시군요 ㅎㅎ 대단하십니다..
저도 커뮤니티를 만들때 자체개발을 해볼까?? 고민도하고 스프링부트 책도폈지만 환경구성부터 빡쳐서 그만뒀습니다.. 유지보수할 재능은 또 아닌지라..
아무쪼록 proxmox 입문 축하드립니다~~
Nicona 글쓴이 2022.12.28. 23:31
달소

취미로 개발하는 사랍입니다 ㅋㅋㅋ
환경 설정 1주일찬데 환경설정 1주일 딱 하니까 개발 할 수 있는 정도 환경구성이 되더라고요

젠킨스 설정해놓으니까 (한번 하는게 어려워서 그렇지) 깃허브에만 싸기만 하면 됩니다 ㅎㅎ

여튼 proxmox 덕에 문제생기면 다시 빌드하고 할 수 있으니까 너무 편하더라고요
PC스펙도 이정도면 넘처흐르고 오라클클라우드는 너무 느려서 ... 힘들었습니다

 

 

제가봤을때는 달소님이 능력자신데

나중에 한 수 가르쳐 주심 좋겠습니다 ㅎㅎㅎ

 

profile image
달소 2022.12.28. 23:37
Nicona
크.. 젠킨스.. 저도 지인꺼 도와주긴했는데..
막상 제걸하려고하니 너무 귀찮더라구요.. 저는 발코딩입니다 핳...
docker 이미지만들때 깃 잠깐 썼는데 지금은 또 다 까먹어서.. 내년에 목표로 다시 도전해봐야겠습니다.
Nicona 글쓴이 2022.12.28. 23:41
달소

제가 구성한 환경은 DOOD 로 해서 젠킨스가 프로젝트 빌드 후 도커위에 새로운 컨테이너를 만들어서 배포하는 식으로 구성해서 정말 아무런 신경도 안써도 됩니다 ㅋㅋㅋㅋㅋㅋ 만들때 귀찮아도 만들면 겁나편한데다가 혹여 나중에 여러사람이랑 유지보수 하게되면 이런방식이 최고죠 난중에 쿠버네티스도 만들어볼까 생각중입니다

2등
Nicona 글쓴이 2022.12.28. 23:31

proxmox dmz 올렸더니 올라가던 로그 + 차단예정인 ip 등도 올려야겠군요

시간이 꽤나 걸리겠네여 ㅋㅋ

profile image
달소 2022.12.28. 23:38
Nicona
오우,, proxmox를 dmz에 올리는건 위험할것같은데요.
앞단에 리버스프록시 서버를 두고 포트포워딩만해서 사용하시는걸 강력히 추천드립니다
Nicona 글쓴이 2022.12.28. 23:44
달소

별생각없이 편해서 그렇게 했었는데 문득 로그보니까 엄청나더라고요 ㅋㅋㅋㅋ 공격한 ip, 포트는 글 적으면서 한번 정리해서 공개할 예정입니다
지금은 공유기 dmz 에서 내렸고 공유기 포트포워딩과 프록스목스 2차인증 (otp)를 활용한 보안 구성했습니다

 

리버스프록시도 만들예정이지만 일단 개발부터 완료하고 할 생각입니다

 

그러고보니 물어볼게 있었군요 프록스목스로 xpenology dsm7.1 만들었는데 proxmox 에서 안꺼지더라고요 프록스목스에서 콘솔반응도 없고 ,,, dsm들어가서 끄고 해야되서 이걸 날려 말어 하고있습니다

3등
굿럭 2022.12.30. 15:31
헑... 저렇게 구성하려면 개발공수가 많이 들어가겠죠?? -0-;; 프론트 앤드 DB 개발 지식이 읎어서 배워서 해야하는디 ㅠㅠ
Nicona 글쓴이 2022.12.31. 02:09
굿럭
천천히 공부한다 생각하시고 하시면 난중에 프론트나 DB가 안되는데요 라고 꼬장부릴때
해봤는데 된다고 쌍싸다구 날려주실 수 있습니다 ㅋㅋㅋㅋ

생각보다 어렵진 않더라구요
리엑트야 HTML + 자바
스프링부트 자바
MariaDB 짜피 SQL

HTML 자바 SQL 만 아시면 시작해볼만 한거같습니다
Nicona 글쓴이 2022.12.31. 02:10
Nicona
무엇보다 좋은점은 개발할때 다른곳에 부탁해야 하는 수고가 주는거지만
구글에 검색한는 수고는 늘어납니다 ㅋㅋ
profile image
bumworld 2023.01.01. 19:54
오~~대단하십니다.
혹시 jenkins dood docker, docker-compose 파일좀 알려주실수 있을까요?
테스트 해보고 있는데 계속 실패 해서요. ㅠ.ㅠ
Nicona 글쓴이 2023.01.02. 10:25
bumworld
혹시 가능하시면 저 커맨드 컴포즈파일로 구성 가능하십니까? 잘 안쓰니까 모르겠더라구요 ㅋㅋ
Nicona 글쓴이 2023.01.02. 10:10
제가 컴포즈 파일로 올린건 아니라서 ㅠㅠ
기본적인 개념은 로컬도커 폴더와 소켓을 바인딩을통해 젠킨스와 공유하게 하면 됩니다

docker run -d name jenk -p 8080:8080 -v /jenkins:로컬 -v /usr/bin/docker:/usr/bin/docker -v /var/run/docker.sock:/var/run/docker.socj -u root jenkins이미지(보통j/j:lts)

댓글 쓰기 권한이 없습니다. 로그인

취소 댓글 등록

cmt alert

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

삭제하시겠습니까?


목록

공유

facebooktwitterpinterestbandkakao story
번호 분류 제목 글쓴이 날짜 조회 추천
정보 proxmox/debian 레포 변경사항 (N: Repository 'Debian bookworm' changed its 'non-free component' value from 'non-free' to 'non-free non-free-firmware') 1 달소 17시간 전08:21 139 +1
잡담 Proxmox 사이트도 개편을 했나보네요 2 달소 17시간 전07:46 242 +1
질문 적용 방법을 모르겠습니다?? 13 초보나스 2일 전08:05 254 +1
394 잡담
image
달소 17시간 전07:46 242 +1
393 잡담
normal
달소 4일 전23:39 208 +2
392 잡담
normal
칼룬 24.04.18.18:12 287 +1
391 잡담
normal
bong90a 24.04.18.10:50 453 0
390 잡담
normal
deVbug 24.04.10.10:43 249 0
389 잡담
normal
아나나나나다 24.04.08.07:18 375 +1
388 잡담
image
kmw_ 24.04.07.17:24 450 +1
387 잡담
image
kmw_ 24.04.04.14:00 762 +3
386 잡담
normal
kmw_ 24.04.01.22:17 511 0
385 잡담
image
opq! 24.04.01.14:22 290 +1
384 잡담
normal
달소 24.03.30.22:32 367 +2
383 잡담
normal
kmw_ 24.03.29.13:43 482 0
382 잡담
image
주차장 24.03.26.17:47 706 +1
381 잡담
normal
아나나나나다 24.03.21.12:58 433 0
380 잡담
image
빨간물약 24.03.20.14:09 358 0
379 잡담
image
bass9030 24.03.18.18:16 460 0
378 잡담
image
purndal 24.03.16.15:15 262 +1
377 잡담
image
purndal 24.03.15.10:49 196 +3
376 잡담
image
달소 24.03.14.22:23 220 +2
375 잡담
image
달소 24.03.11.23:27 175 0