컨테이너 레지스트리 모범 사례 퀴즈

마지막 업데이트: 2026년 2월 25일

  1. 컨테이너 이미지 태그 불변성(Immutability)을 적용해야 하는 주된 이유는?

    • A) 스토리지 비용 절감

    • B) 이미지 다운로드 속도 향상

    • C) 배포 재현성 보장 및 예기치 않은 변경 방지

    • D) 레지스트리 성능 최적화

chevron-right정답 보기hashtag

정답: C) 배포 재현성 보장 및 예기치 않은 변경 방지

설명: 태그 불변성은 한번 푸시된 태그가 다른 이미지로 덮어씌워지는 것을 방지합니다. 이를 통해 특정 태그가 항상 동일한 이미지를 가리키게 되어, 롤백이나 감사 시 정확히 어떤 버전이 배포되었는지 추적할 수 있습니다.

  1. 프로덕션 환경에서 :latest 태그 사용이 권장되지 않는 이유로 가장 적절한 것은?

    • A) latest 태그는 이미지 크기가 더 크다

    • B) latest는 어떤 버전인지 알 수 없고 언제든 변경될 수 있다

    • C) latest 태그는 보안 스캔이 적용되지 않는다

    • D) latest는 캐싱이 되지 않아 느리다

chevron-right정답 보기hashtag

정답: B) latest는 어떤 버전인지 알 수 없고 언제든 변경될 수 있다

설명: :latest 태그는 가장 최근에 푸시된 이미지를 가리키는 관례적 태그로, 실제 버전 정보를 담고 있지 않습니다. 누군가 새 이미지를 푸시하면 :latest가 가리키는 대상이 변경되어, 의도치 않은 배포 변경이나 롤백 실패를 야기할 수 있습니다.

  1. 레지스트리 미러링(Mirroring)의 주요 이점이 아닌 것은?

    • A) 이미지 풀 지연 시간 감소

    • B) 외부 레지스트리 장애 시 가용성 유지

    • C) 이미지 자동 보안 패치 적용

    • D) 네트워크 대역폭 절약

chevron-right정답 보기hashtag

정답: C) 이미지 자동 보안 패치 적용

설명: 레지스트리 미러링은 이미지를 로컬에 복제하여 가용성, 속도, 대역폭을 개선합니다. 하지만 미러링 자체는 이미지 내용을 변경하지 않으므로, 보안 패치는 원본 이미지가 업데이트된 후 다시 미러링해야 적용됩니다.

  1. 컨테이너 레지스트리 재해 복구(DR) 전략으로 적절하지 않은 것은?

    • A) 다른 리전에 레지스트리 복제본 유지

    • B) 정기적인 레지스트리 백업 수행

    • C) 소스 코드 저장소에서 이미지를 재빌드할 수 있도록 Dockerfile 관리

    • D) 모든 이미지를 단일 레지스트리에 집중하여 관리 단순화

chevron-right정답 보기hashtag

정답: D) 모든 이미지를 단일 레지스트리에 집중하여 관리 단순화

설명: 단일 레지스트리에 모든 이미지를 집중하면 해당 레지스트리 장애 시 전체 배포가 중단될 수 있습니다. DR을 위해서는 다중 리전 복제, 백업, 그리고 소스에서 재빌드할 수 있는 체계가 필요합니다.

  1. 컨테이너 레지스트리 비용 최적화 방법으로 효과적인 것은?

    • A) 모든 이미지를 프라이빗 레지스트리에 보관

    • B) 라이프사이클 정책으로 오래된/미사용 이미지 자동 정리

    • C) 이미지 태그를 자주 변경하여 새로운 레이어 생성

    • D) 모든 이미지에 멀티 아키텍처 빌드 적용

chevron-right정답 보기hashtag

정답: B) 라이프사이클 정책으로 오래된/미사용 이미지 자동 정리

설명: 라이프사이클 정책을 통해 더 이상 필요하지 않은 이미지(오래된 빌드, 개발용 이미지 등)를 자동으로 삭제하면 스토리지 비용을 크게 절감할 수 있습니다.

  1. CI/CD 파이프라인에서 이미지 보안 스캔을 수행해야 하는 시점으로 가장 권장되는 것은?

    • A) 이미지 빌드 전

    • B) 이미지 빌드 직후, 레지스트리 푸시 전

    • C) 프로덕션 배포 후

    • D) 주 1회 정기 스캔만 수행

chevron-right정답 보기hashtag

정답: B) 이미지 빌드 직후, 레지스트리 푸시 전

설명: 빌드 직후 스캔하면 취약점이 있는 이미지가 레지스트리에 푸시되는 것을 방지할 수 있습니다. 이를 "Shift Left" 접근법이라 하며, 보안 문제를 개발 주기 초기에 발견하여 수정 비용을 줄입니다.

  1. Kubernetes에서 특정 레지스트리의 이미지만 사용하도록 강제하는 방법은?

    • A) NetworkPolicy 적용

    • B) PodSecurityPolicy 사용

    • C) Admission Controller (OPA/Kyverno 등) 정책 적용

    • D) ResourceQuota 설정

chevron-right정답 보기hashtag

정답: C) Admission Controller (OPA/Kyverno 등) 정책 적용

설명: OPA Gatekeeper나 Kyverno 같은 Admission Controller를 사용하면 특정 레지스트리(예: 사내 Harbor, ECR)에서만 이미지를 풀하도록 정책을 강제할 수 있습니다. 승인되지 않은 레지스트리의 이미지를 사용하는 Pod 생성을 거부합니다.

  1. 컨테이너 이미지 태그 네이밍 컨벤션으로 권장되는 것은?

    • A) 항상 :latest 사용

    • B) 시맨틱 버전(v1.2.3) 또는 Git SHA 기반 태그

    • C) 날짜만 사용 (20250225)

    • D) 빌드 번호만 사용 (build-123)

chevron-right정답 보기hashtag

정답: B) 시맨틱 버전(v1.2.3) 또는 Git SHA 기반 태그

설명: 시맨틱 버전은 이미지의 변경 정도를 명확히 전달하고, Git SHA 태그는 정확한 소스 커밋을 추적할 수 있게 합니다. 이 두 가지를 조합(예: v1.2.3-abc1234)하면 버전 의미와 소스 추적성을 모두 얻을 수 있습니다.

  1. Pull-through 캐시의 올바른 설명은?

    • A) 이미지를 푸시할 때 자동으로 외부 레지스트리에도 복제

    • B) 외부 레지스트리 이미지 요청 시 캐시하여 이후 로컬에서 제공

    • C) 여러 레지스트리의 이미지를 하나로 병합

    • D) 이미지 레이어를 압축하여 전송 크기 감소

chevron-right정답 보기hashtag

정답: B) 외부 레지스트리 이미지 요청 시 캐시하여 이후 로컬에서 제공

설명: Pull-through 캐시는 클라이언트가 외부 레지스트리(Docker Hub, GCR 등)의 이미지를 요청할 때 프록시 역할을 합니다. 첫 요청 시 이미지를 가져와 로컬에 캐싱하고, 이후 동일 요청은 캐시에서 제공하여 외부 요청을 줄입니다.

  1. 멀티 레지스트리 전략의 장점이 아닌 것은?

    • A) 단일 장애점(SPOF) 제거

    • B) 지역별 지연 시간 최적화

    • C) 이미지 버전 관리 단순화

    • D) 레지스트리별 정책(보안, 접근 제어) 분리

chevron-right정답 보기hashtag

정답: C) 이미지 버전 관리 단순화

설명: 멀티 레지스트리 전략은 가용성과 성능을 개선하지만, 여러 레지스트리 간 이미지 동기화와 버전 일관성 유지라는 추가적인 관리 복잡성을 야기합니다. 자동화된 복제 및 동기화 도구가 필요합니다.

마지막 업데이트