먼저 결론부터 말씀드리겠습니다. WCS는 창고를 멈추지 않고도 업그레이드할 수 있습니다. 단, 두 가지 조건이 모두 충족될 때만 가능합니다. 구역을 하나씩 롤링 순서대로 업그레이드하고, 가동 전날 밤에 롤백을 실제로 리허설해야 합니다. 첫 번째는 지키고 두 번째는 건너뛴 프로젝트를 세 번이나 봤습니다. 세 프로젝트 모두 멈췄습니다. 아무도 롤백 버튼을 눌러본 적이 없는데, 멋진 업그레이드 계획은 아무 의미가 없습니다.
(아래 이야기에 나오는 시간, 장소, 숫자는 제가 참여했던 프로젝트의 값입니다.)
WCS 업그레이드가 유독 터지는 이유
WMS는 문서를 관리합니다. WCS는 기계를 관리합니다. WMS 업그레이드가 실패하면 주문 흐름이 멈추고 현장은 몇 시간 동안 수작업으로 버틸 수 있습니다. WCS가 다운되면 컨베이어, 소터, 크레인이 동시에 멈추고, 여러분의 건물은 아주 비싼 주차장이 됩니다. WCS 업그레이드는 고속도로를 달리는 차의 엔진을 바꾸는 것과 같습니다.
2023년 말, 미국 중서부의 한 3PL 물류센터가 성수기 전에 WCS 업그레이드를 원했습니다. 인테그레이터는 주말 시간대를 잡고 사이트 전체를 한 번에 전환했습니다. 전환은 오전 2시에 끝났고, 오전 6시에 첫 웨이브가 시작되자 소터 슈트의 절반이 새 프로토콜과 맞지 않는 주소 매핑을 갖고 있었습니다. 수백 개의 박스가 잘못된 슈트로 갔습니다. 이전 버전을 복구하기까지 오후 1시가 됐습니다. 11시간의 현장 마비였고, 밀린 물량을 치우는 데 3일간의 연장 근무가 필요했습니다. 저는 뒷수습하러 투입됐습니다. 사후 분석은 한 문장이었습니다. 구역별 검증 없음, 롤백 패키지 없음, 건물 전체를 한 번에. 그건 업그레이드가 아닙니다. 도박입니다.
8단계로 보는 롤링 업그레이드
제로 다운타임의 논리는 한 문장입니다. 구버전과 신버전이 같은 장비를 동시에 제어하게 하지 마십시오. 건물을 독립된 물리적 구역으로 나누고, 한 번에 한 구역씩 업그레이드하고, 관찰하고, 건강한지 확인한 뒤 다음으로 넘어갑니다.
- 기준선을 동결합니다. 업그레이드 72시간 전에 모든 구성 변경을 동결합니다. 전체 구성, 주소 매핑 테이블, PLC 포인트 리스트를 내보냅니다. 복사본은 두 개 보관합니다. 하나는 업그레이드 콘솔에, 하나는 오프라인에.
- 섀도우 환경을 구축합니다. 테스트 환경에서 프로덕션 구성에 대해 업그레이드 패키지를 처음부터 끝까지 실행합니다. 디바이스 프로토콜 핸드셰이크와 주소 매핑에 집중합니다. 최소 한 개 웨이브 풀런을 수행합니다.
- 파일럿 구역을 고릅니다. 실패해도 피해가 적은 곳부터 시작합니다. 보통 반품 구역이나 저유량 구역입니다. 메인 소트 라인을 먼저 시작하지 마십시오.
- 구역을 비웁니다. 웨이브 사이 간격에 파일럿 구역에서 이동 중인 박스를 모두 빼내고, 건드리기 전에 미완료 작업이 제로인지 확인합니다. 시간을 아끼려고 이걸 건너뛴 팀을 본 적이 있습니다. 구버전과 신버전이 같은 박스에 엇갈린 명령을 내렸고, 라인 전체가 완전히 멈췄습니다.
- 구역을 업그레이드합니다. 구역의 장비 서비스를 멈추고, WCS 노드를 업그레이드하고, 재시작한 뒤 빈 상태로 자가 테스트를 하고, 20~50개의 테스트 박스를 전 프로세스로 통과시킵니다.
- 지켜봅니다. 파일럿 구역을 2개 웨이브 풀런 동안 가동하고 세 가지 지표를 응시합니다. 소트 정확도, 장비 알람 수, 웨이브 정시율. 어느 하나라도 기준선에서 5% 이상 벗어나면 멈추고 조사합니다. "좀 지켜보자"는 금지입니다.
- 앞으로 나아갑니다. 구역마다 4~6단계를 반복하고, 메인 소트 라인은 마지막에 합니다. 구역마다 업그레이드 로그에 서명합니다.
- 전체를 확인합니다. 모든 구역이 끝나면 성공을 선언하기 전에 24시간 가동하고, 롤백 패키지는 아직 뜨거운 상태로 둡니다.
어떤 전략을 고를까:
| 전략 | 다운타임 | 위험 | 적합 |
|---|---|---|---|
| 빅뱅 전환 | 다운타임 시간대 필요 | 높음 — 한 번 실패로 전체가 멈춤 | 소규모 사이트, 단순 장비, 다운타임 수용 가능 |
| 롤링 구역 업그레이드 | 거의 제로 (구역별 짧은 정지) | 중간 — 문제는 한 구역 안에 갇힘 | 대부분의 자동화 창고 |
| 액티브-스탠바이 (블루-그린) | 제로 | 낮음, 하지만 비용 최고 | 멈출 수 없는 24/7 허브 |
제 결론입니다. 하나의 WCS가 모든 디바이스를 제어할 만큼 사이트가 작지 않다면 롤링 업그레이드를 선택하십시오. 빅뱅 전환이 아끼는 시간은 계획되지 않은 정지 한 번의 대가를 치르기에 절대 부족합니다.
롤백 계획: 업그레이드보다 리허설할 가치가 있다
반대 의견을 말씀드리겠습니다. 업그레이드 실패 자체는 무서운 부분이 아닙니다. 무서운 건 롤백이 업그레이드보다 훨씬 덜 리허설된다는 점입니다. 제 프로젝트들에서는 모두가 업그레이드 패키지를 세 번씩 테스트하면서, 롤백 단계는 문서 속에만 존재하는 경우가 많았습니다. 실제로 불이 난 오전 3시에 그 문서를 찾을 수 있는 사람은 아무도 없습니다.
2024년 중반, 제가 지원하던 중국의 한 이커머스 창고에서 업그레이드 도중 컨베이어 주소 매핑 장애가 발생했습니다. 팀은 15분 만에 롤백을 발동했습니다. 구 WCS 버전으로 돌아가고, 업그레이드 전에 동결한 구성 기준선을 복원하고, 체크리스트대로 구역별로 장비를 재시작했습니다. 그날 밤 늦어진 웨이브는 하나뿐이었습니다. 오전 6시에는 모든 것이 정상이었습니다. 왜 그렇게 단호할 수 있었을까요? 가동 전날 밤에 롤백을 리허설했고, 버튼을 눌러 완전 복구까지의 측정 시간이 22분이었기 때문입니다. 그 숫자가 모두에게 자신감을 줬습니다.
가동 당일 밤 롤백 체크리스트 — 항목마다 확인:
- 롤백 패키지와 구버전 미디어 준비, 해시 검증 완료, "아마 있을 것"은 금지
- 업그레이드 전 구성 기준선, 주소 맵, 데이터베이스 스냅샷을 각각 두 곳에 보관, 하나는 오프라인
- 롤백 발동 조건 문서화: 어떤 지표로, 어떤 임계값에서, 누가 발동 권한을 갖는지 — 그날 밤 토론은 없음
- 롤백 단계를 종이에 인쇄해 콘솔에 붙임, 전원도 네트워크도 없이 읽을 수 있어야 함
- 장비 재시작 순서를 구역별로 각각 한 페이지에 — 순서가 틀리면 라인이 두 번째로 멈춤
- 섀도우 환경에서 롤백을 처음부터 끝까지 리허설, 실제 측정 시간 기록
- 벤더 지원 라인이 사람이 받음을 확인, 음성사서함은 불가
계산해 보십시오. 롤백 리허설 비용은 반나절 야간 근무 인건비와 섀도우 환경 2시간분입니다. 롤백 계획 없는 계획되지 않은 정지는, 제 프로젝트 경험상 중규모 자동화 창고에 직접 손실로 시간당 수만 달러가 듭니다. 고객 클레임과 평판 손상은 그 전의 일입니다. 나머지 계산은 직접 해보십시오.

가동 당일 밤 체크리스트: 인쇄해서 체크하십시오
이건 모든 가동 전날 밤에 제가 나눠주는 리스트로, 워룸 벽에 붙여둡니다.
- 구성 기준선 72시간 동결, 변경 로그 제로
- 섀도우 환경에서 업그레이드 패키지와 롤백 패키지 실행 완료, 각각 1회 풀패스
- 파일럿 구역 선정 완료, 비우기 계획 확인 완료
- 구역별 업그레이드 순서와 책임자 승인 완료
- 기준값 기록 완료: 소트 정확도, 알람 수, 웨이브 정시율
- 롤백 발동 조건과 의사결정권자 문서로 확인 완료
- 종이 롤백 단계를 콘솔에 붙임
- 벤더 지원 라인 테스트 완료, 담당자 근무 중 확인 완료
- 업그레이드 콘솔과 현장 간 통신 테스트 완료
- 구역별 짧은 정지를 오퍼레이션에 안내 — 놀라게 하지 않기
내일 당장 할 수 있는 일 하나. WCS 벤더에게 롤백 패키지가 마지막으로 업데이트된 게 언제인지 물어보십시오. 답이 "오랫동안 아무도 건드리지 않았다"라면, 다음 업그레이드의 가장 큰 위험은 업그레이드 패키지 안에 있지 않습니다. 아무도 눌러본 적 없는 롤백 버튼 안에 있습니다. 다음 변경 시간대에 롤백 리허설을 일정에 넣으십시오. 신기능을 공부하는 것보다 열 배는 중요합니다.
Lin Xiao, WMS 구현 컨설턴트 지음
영어판 번역본입니다. 내용이 다를 경우 영어판을 우선합니다.






