一番目 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 スタイルクラスタ味見.
-
簡単なコード何竝びだけで並列演算可能.
-
設置:
-
実行:
mpirun -np 3—hostfile hosts.txt python code.py
テスト用途では “数字分けて計算する → 結果集め” のようなのがぴったり良いです.
-
-
ソケット基盤 MasterWorker
-
パイソン内臓モジュール(socket)だけ使用.
-
マスター 1台, ワーカー 2台.
-
マスターが作業を投げてワーカーが結果を送る構造.
-
別途設置必要なし.
ネットワークで実際データが行き交うのを体験するのに一番行ったという.
-
-
簡単な作業例示
-
数字二乗: 0‾99まで数字を分けて各 PCが二乗計算後結果合すること.
-
ファイル単語世紀: テキストファイルを 3切れで分けて各 PCが単語数世苦合算.
-
ウェブ要請分散: 多くの URL リストを分けて各 PCが要請後回答コード集め.
整理:
-
早い体験 → ソケット方式 (Pythonだけあれば良い).
-
本当にクラスタ気持ち → MPI (少し設定必要).
ソケット方式は TCP/IPを活用しますか?
当たります
私が申し上げた ソケット基盤 MasterWorker 方式はところで 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
同じ関数1行で “N犬ノード”に自動分散/収集可能 → ずっと直観的.
4. コード単純性比較
TCP/IP 方式 (作業分配):
→ 連結管理, データ直列化, 同期化全部直接具現しなければならない
-
-
-
첫번째 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 스타일 클러스터 맛보기.
-
간단한 코드 몇 줄만으로 병렬 연산 가능.
-
설치:
-
실행:
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 방식 (작업 분배):
→ 연결 관리, 데이터 직렬화, 동기화 전부 직접 구현해야 함
-
-
-