JStory Box
별의 제국
001 / 130LONG-FORM EDITION

ORIGINAL FICTION

제159화 — 독립된 세 개

14,610일 · 159 / 287약 8분0자
지난 화 끝부분 다시 보기

Helioxen의 분산철학이 진짜인지 시험한 첫 사건은 Daniel이 만든 시험이었다.

2012년.

계산·제조·관측이 모두 조금씩 커졌다.

Daniel은 경영팀에 말했다.

“Helioxen을 하루 끊어봅시다.”

Ethan이 웃었다.

“회사 문 닫게?”

“중앙 서비스.”

OICI 인증.

공정 데이터 허브.

일부 계산 스케줄링.

Nightglass와는 직접 분리돼 있지만 Helioxen 자원도 일부 사용.

Rachel이 물었다.

“왜 지금.”

“작을 때.”

Whitaker를 아직 만나기 전.

하지만 그에게 배운 원칙을 기억한다.

복제는 독립이 아니다.

시험 설계.

세 개의 독립 그룹.

A.

Helioxen.

B.

파트너 기업 두 곳이 운영하는 독립 스택.

C.

대학·연구기관이 만든 최소 기능 오픈스택.

같은 작업.

같은 공개 규격.

다른 코드.

다른 관리자.

Daniel이 말했다.

“셋 중 하나 없어도 돌아가야 합니다.”

Ethan이 비용표를 봤다.

“C는 성능 절반인데.”

“괜찮습니다.”

“돈은 똑같이 먹고.”

“보험.”

첫날.

Helioxen 중앙 서비스 격리.

고객에게 사전 통지.

실제 생산업무 일부는 B로.

연구워크로드 일부 C.

문제는 바로 나왔다.

인증토큰.

표준은 공개인데 실제 발급절차가 Helioxen 계정체계에 의존.

Daniel이 얼굴을 찌푸렸다.

“독립 아니네요.”

Rachel이 말했다.

“로컬 인증모드 만들죠.”

첫 수정.

두 번째 문제.

공정데이터 형식은 같지만 품질판정 룰셋 업데이트가 중앙배포.

B는 지난 버전.

안전 문제는 없음.

최신 개선이 안 들어감.

“업데이트 체인 분리.”

비용 증가.

세 번째.

고객지원.

다른 회사가 시스템은 돌릴 수 있는데 사용자가 누구에게 전화할지 모름.

운영도 인터페이스.

연락체계.

Daniel은 2045 Common Root Failure 훈련을 떠올렸다.

지금 발견.

34년 빠르다.

그 사실만으로도 비용이 싸게 느껴졌다.

한 달 수정.

재시험.

이번엔 Helioxen 중앙 격리 24시간.

B 정상.

C 성능 낮지만 핵심작업 처리.

고객 일부 불편.

생산 중단 없음.

Daniel이 말했다.

“48시간.”

팀이 한숨.

Ethan이 말했다.

“보험료 계속 오른다.”

48시간.

새 문제.

파트너 B가 필요한 보안패치 서명검증에 Helioxen 루트키 공개정보를 참조.

실제 키는 분리.

그러나 정책문서 원본 서버가 Helioxen.

작은 의존성.

로컬 사본.

독립 저장.

72시간 독립운영 시험이 끝난 뒤 Daniel은 더 어려운 질문을 던졌다.

“셋이 서로 다른 답을 내면 누가 결정합니까?”

회의실이 조용해졌다.

독립 구현.

좋다.

그러나 결과가 다르면.

Helioxen이 최종?

그러면 다시 중앙.

Rachel이 말했다.

“문제 유형에 따라.”

운영.

안전.

과학.

각각.

안전 관련 상태라면 보수적 합의.

일반 스케줄링은 지역 결정.

과학 계산은 신뢰구간과 provenance를 같이.

Daniel이 고개를 끄덕였다.

독립성은 합의규칙까지 포함한다.

세 코드를 만드는 것만으로 끝이 아니다.

첫 실전 사례.

공정 품질모델.

Helioxen 스택은 부품 로트를 `hold`.

파트너 B는 `pass with inspection`.

공공 C는 데이터 부족으로 `unknown`.

과거 같으면 Helioxen 판단.

이번에는 규칙.

안전중요 부품.

불일치 → hold.

독립 검사.

결과.

작은 표면결함.

기능 영향 없음.

추가검사 후 사용 가능.

Helioxen 모델은 과민.

B가 더 정확.

Daniel이 말했다.

“좋습니다.”

Helioxen 알고리즘 수정.

경쟁 구현이 자기 회사를 교정.

두 번째 사례.

서버 작업 우선순위.

Helioxen과 B 다름.

안전 문제 없음.

각 지역이 자기 정책.

결과도 다름.

고객이 선택.

Daniel은 그걸 보며 느꼈다.

모든 차이를 합의로 없앨 필요도 없다.

같아야 하는 것.

달라도 되는 것.

그 경계를 정하는 게 표준.

Whitaker가 나중에 했던 일.

지금은 Rachel과 Ethan, 파트너들이 같이 한다.

세 번째.

Nightglass 궤도해석.

네 독립 코드.

한 후보 위험도 평가가 갈렸다.

Nightglass 과학위원회가 재관측 결정.

누구 하나의 모델을 정답으로 선언하지 않는다.

Daniel은 이 구조가 아름답다고 느꼈다.

느리지만.

불확실성이 행동으로 변환된다.

재관측.

자료.

합의범위 좁힘.

후보 위험 낮음.

끝.

Ethan이 말했다.

“이렇게 하면 결정 느려서 급할 때 망하는 거 아니냐?”

좋은 질문.

Daniel도 두렵다.

2046 마지막 9시간.

독립검증이 느릴 수도.

그래서 비상모드.

평시에는 다중 검증.

시간임계에서는 사전 정의된 로컬 권한.

한 노드가 다른 노드 승인을 기다리지 않아도 되는 범위.

어떤 행동은 되돌릴 수 있다.

어떤 행동은 아니다.

되돌릴 수 있는 건 빠르게.

비가역·고위험은 합의.

Daniel은 의사결정도 risk tier로 나눴다.

이건 첫 삶에서 늦게 배운 모든 것의 합성.

Reyes stop-work.

Elena uncertainty.

Whitaker independence.

Mina human override.

Vogel process range.

Ethan halt-right.

사람들이 서로 만난 적도 없는 시점에 그들의 교훈이 하나의 구조로 들어간다.

Daniel은 이게 회귀의 가장 정당한 사용법일지 모른다고 생각했다.

사람의 미래를 조종하는 게 아니라 사람에게서 배운 좋은 원칙을 먼저 적용하는 것.

세 구현체 지도.

Daniel은 가운데 Helioxen 로고를 지웠다.

대신 세 노드가 같은 크기.

Rachel이 말했다.

“브랜딩팀 울겠네요.”

Daniel이 웃었다.

“울라고 하세요.”

그림이 더 중요했다.

중앙이 없는 구조.

적어도 그림부터는.

72시간.

성공.

Ethan이 물었다.

“이제 만족?”

Daniel이 고개를 저었다.

“다음엔 일주일.”

회의실 야유.

Daniel이 웃었다.

“나중에.”

첫 삶의 Whitaker가 떠올랐다.

72시간 버틴다는 건 73시간부터 문제일 수 있다.

이번에는 2012년.

시간이 있다.

Daniel은 독립 스택 3개를 유지하기로 했다.

Helioxen.

파트너 연합.

공공·연구 최소스택.

성능은 다르다.

완벽한 기능동등도 아니다.

그러나 공통 규격으로 최소 핵심기능을 서로 수행.

이 구조를 우주수송에도 장기 적용.

제조에도.

Nightglass는 이미 독립.

Ethan이 말했다.

“같은 걸 세 번 만드는 게 이렇게 돈 낭비인 줄 몰랐어.”

Daniel이 말했다.

“첫 번째가 사라졌을 때 값이 생깁니다.”

“안 사라지면?”

“좋은 보험.”

Ethan은 고개를 저었다.

“이 말도 싫어.”

Daniel이 웃었다.

그날 공개 규격위원회에서 한 경쟁사가 Helioxen보다 더 빠른 구현을 발표했다.

Daniel은 박수쳤다.

진심.

Ethan이 옆에서 말했다.

“이제 진짜 이상해졌네.”

“왜.”

“경쟁사가 너 이기는데 좋아해.”

Daniel은 화면을 봤다.

독립.

다른 코드.

같은 기능.

2046년의 공통 뿌리가 하나 줄어드는 장면처럼 보였다.

“좋은 겁니다.”

이번에는 Daniel이 없어도.

Helioxen이 없어도.

세계가 계속 계산할 수 있다.

그게 회사 성장을 조금 포기해서라도 사고 싶었던 능력이었다.

독립운영 시험에서 가장 비싼 것은 서버도 코드도 아니었다.

사람이었다.

B 스택을 유지하는 별도 팀. C 최소스택을 이해하는 연구기관 인력. 훈련. 문서. 정기 테스트.

Ethan이 말했다.

“평소엔 놀고 있는 것처럼 보일 거다.”

Daniel이 고개를 끄덕였다.

백업은 정상시에는 비효율처럼 보인다.

그래서 시간이 지나면 줄이고 싶어진다.

예산삭감. 인력통합. 공용도구.

Daniel은 그 흐름을 이미 봤다.

2045년 공통 뿌리.

그래서 유지조건을 정했다.

연 2회 실제 격리훈련. 독립 예산. 독립 책임자. 최소 인력선. 성과지표는 평시 생산성이 아니라 복구능력.

Rachel이 말했다.

“백업팀 평가가 어렵겠네요.”

“그래서 훈련합니다.”

실제로 두 번째 훈련에서 C 스택은 첫 번보다 빨랐다.

성능은 여전히 낮다.

그게 목적.

최고가 아니라 살아남는 최소기능.

Daniel은 그 차이를 문서에 굵게 표시했다.

Backup is not a slower copy of primary. It is the smallest independent system that preserves the mission.

Ethan이 읽고 말했다.

“또 문장 만들었네.”

Daniel이 웃었다.

“필요해서.”

“돈은 더 필요하고.”

“그것도.”

이번에는 둘 다 웃었다.

END OF CHAPTER

읽은 화로 기록했습니다. 다음 화는 바로 이어집니다.

다음 화

읽는 흐름을 끊지 않고 바로 다음 화로 이어집니다.

읽던 위치를 저장했습니다.