| Phase | 내용 | 예상 |
|---|---|---|
| A | 재부팅 전에 해야 할 것 — 상태 스냅샷, GRUB 기본 커널 확인, AQTION 드라이버 점검, IP 영속성 확인, 설정 백업 | 15분 |
| B | 재부팅 | 10분 |
| C | 커널/NIC/링크속도/PCIe레인/iperf3 | 20분 |
| D | iptables·swap·governor + 측정조건 기록 | 5분 |
| E | DSB 기동 (A 먼저 → B, 순서 고정) | 15분 |
| F | 셋업 검증 — consul 인스턴스=1 확인이 오늘의 분기점 | 20분 |
| G | 700/2000 재측정 + 직전 오염 의심값 대조표 | 20분 |
| H | (필요시) docker-proxy·conntrack·포트고갈·IRQ쏠림·로그 | 30분 |
| I | RPS 스윕 → knee | 60분 |
| J | 단일 서버 대조군 + 복귀 | 60분 |
| K | 결과 템플릿, 하네스 영구반영, 파일 회수 | 30분 |
grub-reboot으로 다음 1회만 지정하는 법도 넣어놨음5.15.19-htmm에서 돌려야 하니, 없으면 오늘 모듈 빌드까지 끝내두는 게 안전nmcli 연결이 아니라 ip addr add로만 잡혀 있으면 재부팅 후 IP가 사라짐. 재부팅 전에 확인해야 함restart: always라 재부팅 후 컨테이너가 자동으로 올라오는데 기동 순서가 보장 안 됨 → Phase E에서 순서를 강제로 다시 잡는 구조로 만들었어. 부팅 직후 상태는 신경 안 써도 됨jq 포함 — consul 확인이 훨씬 편해짐), 결과 저장 디렉터리, tee로 전부 파일 보존up -d 금지, -no-deps 누락, grep ens13만 하기, iptables -L로 확인하기 등 과거에 시간 날린 것들가서 순서대로 가면 되고, Phase F-2에서 인스턴스=1이 5줄 나오는지만 먼저 알려줘. 거기서 오늘 하루 방향이 갈려. 막히면 그때그때 물어봐도 되고.
# DSB 2-서버 분산 배포 — 재부팅 후 전체 검증 체크리스트
대상: Hotel Reservation, Server A(`comeng-AvenueCity-CWF-AP`, `192.168.77.1`) / Server B(`comeng-AvenueCity`, `192.168.77.2`)
전제: 10GbE NIC 교체 완료. 재부팅부터 시작해서 깨끗한 상태로 정렬한 뒤 측정까지.
관련 문서: [Re-Experimental_Setup_DSB.md](Re-Experimental_Setup_DSB.md) (셋업 경위·하들), [Session_Log_MEMTIS_DSB_0826-0909.md](Session_Log_MEMTIS_DSB_0826-0909.md) (원본 대화)
---
## 0. 오늘의 목표와 시간 배분
| Phase | 내용 | 예상 |
|---|---|---|
| A | 재부팅 전 스냅샷 + 드라이버 사전점검 | 15분 |
| B | 재부팅 | 10분 |
| C | 하드웨어·네트워크 검증 (커널/NIC/IP/속도) | 20분 |
| D | OS prerequisite (iptables/swap/governor) | 5분 |
| E | DSB 기동 — **순서 고정** | 15분 |
| F | 셋업 검증 (consul/포트/config/e2e) | 20분 |
| G | 재측정 (700 / 2000 RPS) | 20분 |
| H | (필요시) 원인 진단 | 30분 |
| I | RPS 스윕 → knee 찾기 | 60분 |
| J | 단일 서버 대조군 | 60분 |
| K | 기록·하네스 영구 반영 | 30분 |
**오늘의 핵심 분기점은 Phase F-2** — consul 인스턴스가 서비스당 1개로 나오는지. 여기 결과에 따라 이후가 갈림.
---
## 표기 규칙
- **(A)** = Server A에서 실행 / **(B)** = Server B에서 실행
- 특별한 언급이 없으면 `cd ~/DeathStarBench/hotelReservation` 상태
- 🔴 = 여기서 막히면 아래로 진행 금지
---
## 사전 준비물 — 패키지 확인
**(A) (B) 양쪽:**
```bash
for p in sysstat ifstat iperf3 ethtool conntrack numactl cgroup-tools jq rsync; do
dpkg -l $p >/dev/null 2>&1 && echo "OK $p" || echo "MISSING $p"
done
(A) comeng@comeng-AvenueCity-CWF-AP:~$ for p in sysstat ifstat iperf3 ethtool conntrack numactl cgroup-tools jq rsync; do dpkg -l $p >/dev/null 2>&1 && echo "OK $p" || echo "MISSING $p" done OK sysstat MISSING ifstat OK iperf3 OK ethtool MISSING conntrack OK numactl MISSING cgroup-tools MISSING jq OK rsync
결과는 workspace에 txt로 정리해둠