diff --git a/02_Architecture/Infrastructure_Project_Structure.md b/02_Architecture/Infrastructure_Project_Structure.md index e4a830e..29566a3 100644 --- a/02_Architecture/Infrastructure_Project_Structure.md +++ b/02_Architecture/Infrastructure_Project_Structure.md @@ -41,7 +41,7 @@ ## 2. 보조 운영 자산 -### `infra-config` +### `workspace-config` - 무엇: `runtime.env`, `secrets.env` - 왜: 환경값의 기준점을 코드/개별 `.env` 밖으로 분리해 SSOT를 유지하기 위해 @@ -74,5 +74,5 @@ ## 4. 문서화 원칙 - 역할 정의는 이 문서 같은 구조 문서에 고정한다. -- 실제 IP/포트/마운트 값은 SSOT 문서 또는 `infra-config` 기준으로 관리한다. +- 실제 IP/포트/마운트 값은 SSOT 문서 또는 `workspace-config` 기준으로 관리한다. - 장애/변경/복구 과정은 `journey/`에서 사실 중심으로 기록한다. diff --git a/journey/plans/260309_24서버_실서비스운영전환_계획.md b/journey/plans/260309_24서버_실서비스운영전환_계획.md index 62dc560..e1871b7 100644 --- a/journey/plans/260309_24서버_실서비스운영전환_계획.md +++ b/journey/plans/260309_24서버_실서비스운영전환_계획.md @@ -65,7 +65,7 @@ tags: [infra, 24-server, robeing, production-transition, ssot, plans] ### 2. 24 서버 런타임 SSOT를 먼저 정리한다 -- 24 서버에 `/home/admin/infra-config/runtime.env`, `/home/admin/infra-config/secrets.env`를 복구하거나 배치한다. +- 24 서버에 `/home/admin/workspace-config/runtime.env`, `/home/admin/workspace-config/secrets.env`를 배치한다. - 24 서버 `.env`, `docker-compose.yml`, workflow에서 다음 잔존값을 제거한다. - `192.168.219.52` - `192.168.219.45` @@ -92,7 +92,7 @@ tags: [infra, 24-server, robeing, production-transition, ssot, plans] - 3순위: `skill-email`, `skill-calendar`, `skill-news`, `skill-slack` - DB/auth 의존성이 있는 스킬군을 기동 - 4순위: `robeing-monitor` - - `infra-config`와 DB 의존성 확인 + - `workspace-config`와 DB 의존성 확인 - 5순위: `rb8001` - 모든 하위 서비스와 23 인프라 연결이 열린 뒤 마지막 기동 diff --git a/journey/research/260309_24서버_로빙운영_자료수집.md b/journey/research/260309_24서버_로빙운영_자료수집.md index 5a5037f..f06ccf9 100644 --- a/journey/research/260309_24서버_로빙운영_자료수집.md +++ b/journey/research/260309_24서버_로빙운영_자료수집.md @@ -93,7 +93,7 @@ tags: [infra, 24-server, robeing, operations, ssot, research] - `robeing/AGENTS.md`는 아직 `192.168.219.52`, `192.168.219.45`, `/home/admin/ivada_project/...`를 기준으로 설명합니다. - `robeing/DOCS/book/300_architecture/310_전체_시스템_구조_컨테이너와_마이크로서비스.md`와 `325_robeing_monitor_모니터링_아키텍처.md`도 과거 IP 기준 설명을 유지합니다. -- `/home/admin/infra-config/runtime.env`는 현재 이 24 서버 워크스페이스에 존재하지 않습니다. 인프라 구조 문서에서는 `infra-config`를 보조 SSOT 자산으로 정의하지만, 실제 파일은 확인되지 않았습니다. +- `/home/admin/workspace-config/runtime.env`는 현재 이 24 서버 워크스페이스에 존재하지 않았고, 당시에는 `secrets.env`만 먼저 생성된 상태였습니다. ## Interpretation @@ -131,7 +131,7 @@ tags: [infra, 24-server, robeing, operations, ssot, research] ## Unresolved -- 24 서버 주소의 SSOT 파일이 `infra-config`에도 반영됐는지 이 서버에서는 확인하지 못했습니다. 로컬에 `infra-config/runtime.env`가 없습니다. +- 24 서버 주소의 SSOT 파일이 `workspace-config` 기준으로 모두 채워졌는지는 이 문서 시점에 확정하지 못했습니다. - `robeing/AGENTS.md`와 `robeing` 아키텍처 문서가 새 주소/경로 기준으로 갱신되지 않아, 현재는 참고 문서이되 최신 SSOT는 아닙니다. - 자동배포 레포와 수동배포 레포 구분은 `robeing/AGENTS.md`에 있으나, 실제 `.gitea/workflows`와 완전히 일치하는지 서비스별 대조는 아직 하지 않았습니다. diff --git a/journey/research/260309_24서버_실서비스운영전환_리서치.md b/journey/research/260309_24서버_실서비스운영전환_리서치.md index ad859df..e52e9f0 100644 --- a/journey/research/260309_24서버_실서비스운영전환_리서치.md +++ b/journey/research/260309_24서버_실서비스운영전환_리서치.md @@ -79,14 +79,13 @@ tags: [infra, 24-server, robeing, production-transition, ssot, research] - 24 서버 `skill-publish/.gitea/workflows/deploy.yml`: `/home/admin/ivada_project/skill-publish` - `ivada_project`는 이미 운영 경로에서 제거된 상태이므로, 위 경로는 24 실서비스 전환에 그대로 사용하면 안 된다. -### 7. 24 서버의 `infra-config` 기준 파일이 현재 없다 +### 7. 24 서버의 `workspace-config` 기준 파일이 아직 완성되지 않았다 - 24 서버에서 다음 경로 확인 결과: - - `MISSING:/home/admin/infra-config` - - `MISSING:/home/admin/infra-config/runtime.env` - - `MISSING:/home/admin/infra-config/secrets.env` -- 그런데 24 서버 `robeing-monitor/docker-compose.yml`은 `env_file`로 `/home/admin/infra-config/runtime.env`, `/home/admin/infra-config/secrets.env`, `.env`를 함께 요구한다. -- 따라서 현재 상태 그대로라면 24에서 `robeing-monitor`는 컨테이너 시작 이전 단계에서 환경 파일 경로 문제에 걸릴 가능성이 높다. + - `MISSING:/home/admin/workspace-config/runtime.env` + - `EXISTS:/home/admin/workspace-config/secrets.env` +- 그런데 `robeing-monitor/docker-compose.yml`은 `env_file`로 `/home/admin/workspace-config/runtime.env`, `/home/admin/workspace-config/secrets.env`, `.env`를 함께 요구한다. +- 따라서 24 전환 전에는 `workspace-config/runtime.env`를 먼저 채워야 한다. ### 8. 24에서 23으로 향하는 의존 포트는 일부만 열려 있다 @@ -110,13 +109,13 @@ tags: [infra, 24-server, robeing, production-transition, ssot, research] ### 10. 현재 리서치 문서 `24서버 로빙 운영 자료 수집`은 실행 전환 문제를 직접 닫는 문서가 아니다 - 해당 문서는 문서/자산/참고 순서를 모은 자료 수집 문서다. -- 실제 차단 요인인 `23 대상 자동배포`, `24 런타임의 과거 IP`, `24 missing infra-config`, `23 UFW/Neo4j 미개방`, `24 경로 불일치`를 실행 순서로 고정하지는 않는다. +- 실제 차단 요인인 `23 대상 자동배포`, `24 런타임의 과거 IP`, `24 missing workspace-config/runtime.env`, `23 UFW/Neo4j 미개방`, `24 경로 불일치`를 실행 순서로 고정하지는 않는다. - 따라서 이번 문제를 닫는 기준 리서치는 별도로 필요하다. ## Interpretation - 지금 풀고 있는 정확한 문제는 `24 서버를 켤 수 있느냐`가 아니라, `23 임시운영 중에 굳어진 배포/런타임/방화벽 기준을 24 프로덕션 구조로 다시 맞추는 것`이다. -- 현재 전환이 안 되는 이유는 단일 원인이 아니다. `배포 대상이 아직 23`, `24 런타임은 구 23 IP를 참조`, `24 필수 env 파일 부재`, `23 인프라 의존 포트가 새 24 IP에 열려 있지 않음`, `일부 워크플로우는 삭제된 ivada_project 경로를 사용`이 동시에 겹쳐 있다. +- 현재 전환이 안 되는 이유는 단일 원인이 아니다. `배포 대상이 아직 23`, `24 런타임은 구 23 IP를 참조`, `24 workspace-config/runtime.env 부재`, `23 인프라 의존 포트가 새 24 IP에 열려 있지 않음`, `일부 워크플로우는 삭제된 ivada_project 경로를 사용`이 동시에 겹쳐 있다. - 따라서 이번 계획 문서는 `24에 docker compose를 한 번 올리는 절차`가 아니라, `배포 SSOT -> 24 런타임 SSOT -> 23 인프라 허용 규칙 -> 서비스별 기동 순서 -> 23 임시 컨테이너 해제`를 한 묶음으로 다뤄야 한다. ## Unresolved @@ -126,4 +125,4 @@ tags: [infra, 24-server, robeing, production-transition, ssot, research] ## 한 줄 결론 -- 이번 문제는 `24 서버 복구`가 아니라 `23 임시 프로덕션을 끝내고 24 실서비스 운영 기준을 다시 세우는 전환`이며, 이를 막는 차단 요인은 이미 `배포 대상`, `런타임 구 IP`, `missing infra-config`, `23 인프라 포트`, `ivada_project 잔존 경로`로 좁혀졌다. +- 이번 문제는 `24 서버 복구`가 아니라 `23 임시 프로덕션을 끝내고 24 실서비스 운영 기준을 다시 세우는 전환`이며, 이를 막는 차단 요인은 이미 `배포 대상`, `런타임 구 IP`, `missing workspace-config/runtime.env`, `23 인프라 포트`, `ivada_project 잔존 경로`로 좁혀졌다.