
첫번째 19,000원 구매
두번째 15,00원에 구매
세번째 9,500원에 구매..
1대는 미디어 서버로 상시 작동중.

12v 6a 아답터로 미니 pc 3대 작동 ..
스위치 허브를 구입해서 랜선으로 연결하면 된다.
무선 LAN으로 접속 중이지만 WOL 기능으로 3대의 전원 관리를 해야 한다면 유선으로 연결해야 한다. 1대만 WOL과 SSH로 전원 관리가 가능하다.
3대 모두 xubutu linux 설치..

클러스터 프로그램 기본 작동 원리만 호기심으로 학습할 계획이다.
스위치 허브를 주문한..
-------------------------
아하 👍 그러면 3대 PC로 테스트 목적으로 클러스터 프로그래밍을 해보고 싶으신 거군요.
(연구/상업용이 아니라 “작게 체험” 수준)
테스트라면 환경 설정이 단순하고, 결과가 바로 눈에 보이는 게 좋아요.
🔹 추천 테스트 접근
-
MPI(mpi4py)
-
HPC 스타일 클러스터 맛보기.
-
간단한 코드 몇 줄만으로 병렬 연산 가능.
-
설치:
sudo apt install mpich pip install mpi4py -
실행:
mpirun -np 3 --hostfile hosts.txt python code.py
👉 테스트 용도로는 “숫자 나눠 계산하기 → 결과 모으기” 같은 게 딱 좋아요.
-
-
소켓 기반 Master–Worker
-
파이썬 내장 모듈(socket)만 사용.
-
마스터 1대, 워커 2대.
-
마스터가 작업을 던지고 워커가 결과를 보내는 구조.
-
별도 설치 필요 없음.
👉 네트워크로 실제 데이터가 오가는 걸 체험하기에 가장 간단.
-
-
간단한 작업 예시
-
숫자 제곱: 0~99까지 숫자를 나눠서 각 PC가 제곱 계산 후 결과 합치기.
-
파일 단어 세기: 텍스트 파일을 3조각으로 나눠 각 PC가 단어 수 세고 합산.
-
웹 요청 분산: 여러 URL 리스트를 나눠서 각 PC가 요청 후 응답 코드 모으기.
✅ 정리:
-
빠른 체험 → 소켓 방식 (Python만 있으면 됨).
-
진짜 클러스터 기분 → MPI (조금 설정 필요).
소켓 방식은 TCP/IP를 활용 합니까?
맞습니다 ✅
제가 말씀드린 소켓 기반 Master–Worker 방식은 바로 TCP/IP 소켓 통신을 활용하는 방법이에요.🔹 왜 TCP/IP인가?
-
신뢰성: 데이터가 순서대로, 손실 없이 전달됨 (UDP와 달리).
-
범용성: 로컬 네트워크(LAN)뿐만 아니라, 원한다면 인터넷을 통해서도 가능.
-
간단함: Python
socket모듈에서SOCK_STREAM타입을 쓰면 자동으로 TCP 사용.
🔹 기본 구조
-
Master (Server)
-
socket(AF_INET, SOCK_STREAM)→ TCP 소켓 생성 -
bind()후listen()→ 포트 열기 -
accept()로 Worker 연결 받기 -
send()/recv()로 데이터 주고받기
-
-
Worker (Client)
-
connect()로 Master에 접속 -
send()로 요청,recv()로 작업 할당 받음 -
결과 다시 Master에게 전송
즉, 테스트 목적으로는 TCP/IP 소켓을 이용한 클러스터 구조가 제일 이해하기 쉽고, 실제 네트워크 통신도 확인할 수 있습니다
---------------
일단 TCP/IP 정도는 사용할 수 있을 것 같다.
MPI 방식이 TCP/IP 보다 쉽군요
네, 맞습니다 🙂
MPI 방식이 TCP/IP 소켓 직접 구현보다 쉬운 이유는 다음과 같아요:
🔹 1. 네트워크 처리 자동화
-
TCP/IP 직접 구현 →
socket,bind,connect,send,recv다 짜야 하고, 에러·패킷 손실·순서 보장도 신경 써야 함. -
MPI → 이런 건 전부 라이브러리(OpenMPI/MPICH)가 처리. 프로그래머는
comm.send(),comm.recv()같은 고수준 API만 쓰면 됨.
🔹 2. 클러스터 환경 최적화
-
MPI는 원래 **클러스터/HPC(슈퍼컴퓨터)**를 위해 만들어졌기 때문에, 여러 노드 간 빠른 통신을 전제로 최적화됨.
-
TCP/IP도 내부적으로 쓰지만, 사용자는 몰라도 됨.
🔹 3. 확장성
-
TCP/IP 소켓은 마스터–워커 구조를 직접 구현해야 해서, 노드 수가 늘어나면 코드가 복잡해짐.
-
MPI는
scatter,gather,broadcast같은 함수 한 줄로 “N개 노드”에 자동 분산/수집 가능 → 훨씬 직관적.
🔹 4. 코드 단순성 비교
TCP/IP 방식 (작업 분배):
# 마스터-워커 구조 (간단화) # 마스터: socket.accept() → send() / recv() 직접 처리 # 워커: socket.connect() → send() / recv()→ 연결 관리, 데이터 직렬화, 동기화 전부 직접 구현해야 함
-
-
-