Security patching and updating
출처: 문서
본문
보안 패치 및 업데이트
이 페이지에서는 bootstrap box(Migration Assistant 컴포넌트를 빌드하고 실행하는 데 사용하는 Amazon Elastic Compute Cloud [Amazon EC2] 인스턴스)를 안전하게 업데이트하고, Docker 캐시를 정리하고, Migration Assistant 컨테이너 이미지를 다시 빌드하는 방법을 설명해요.
권장 주기: Migration Assistant가 실행 중이 아닐 때만 이 단계를 수행하세요.
1단계: bootstrap box의 운영 체제 패치
sudo dnf upgrade --refresh -y
{% include copy.html %}
참고: 커널이나 핵심 라이브러리가 업데이트되면 재부팅이 필요한 경우가 많아요.
필요한 경우 재부팅하세요:
sudo reboot
{% include copy.html %}
인스턴스가 다시 올라오면 다시 연결한 후 계속 진행하세요.
2단계: Docker 빌드 및 다운로드 캐시 정리
Docker 빌드 캐시와 다운로드된 캐시를 정리하면 사용하지 않는 이미지, 컨테이너, 네트워크, 볼륨이 모두 제거되어 디스크 공간을 확보하고 깨끗한 상태로 다시 빌드할 수 있어요:
docker system prune -a --volumes
{% include copy.html %}
3단계: 이전 Gradle 출력 정리
저장소 루트에서 다음 명령어를 실행해 이전 Gradle 출력을 정리하세요:
./gradlew clean
{% include copy.html %}
4단계: Migration Assistant 이미지 다시 빌드
Migration Assistant에서 사용하는 Docker 이미지를 다시 빌드하세요:
./gradlew :buildDockerImages -x test
{% include copy.html %}
5단계: Migration Assistant 재배포
Migration Assistant를 재배포해 기존 컨테이너 이미지를 새로 빌드한 버전으로 교체하세요:
cd deployment/cdk/opensearch-service-migration
./deploy.sh <contextId>
{% include copy.html %}
경고: 재배포하면 실행 중인 마이그레이션 작업(예: Capture Proxy, Traffic Replayer, Reindex-from-Snapshot)이 중단돼요. 마이그레이션이 진행되는 동안에는 재배포를 하지 마세요. 데이터 손실이나 일관성 없는 상태가 발생할 수 있어요. {: .warning}
문제 해결
-
toomanyrequests: Rate exceeded: 마지막 빌드 명령을 다시 시도해 보세요. 일부 다운스트림 컨테이너 이미지는 속도 제한이 적용되어 있고 시간이 지나면서 변경될 수 있어요. -
베이스 이미지를 가져올 수 없음: 인스턴스에 인터넷 이그레스(NAT/IGW)가 있고 필요에 따라 Docker Hub/Amazon Elastic Container Registry (Amazon ECR)에 접근할 수 있는지 확인하세요.
-
Gradle 캐시 손상:
./gradlew clean을 실행한 후에도 문제가 계속되면~/.gradle/caches도 삭제하고 다시 시도해 보세요.