ICA 자격증 공부 (1)

이지민·2025년 6월 21일
0

ICA 자격증

목록 보기
1/1

공부 자료

출제 범위

기출 문제 정리

Perplexity

Istio ICA( Istio Certified Associate) 기출 문제 및 답 정리

Istio ICA( Istio Certified Associate) 시험은 실습 중심의 문제와 일부 객관식 문제로 구성되어 있으며, 주로 Istio의 주요 리소스와 실무 활용 능력을 평가합니다. 아래는 실제 기출 유형과 예시 문제, 그리고 답변을 정리한 내용입니다.


시험 구성 및 주요 출제 영역

  • 총 20~30문항(실습+객관식), 2시간, 75% 이상 합격[1][2].
  • 실습: kubectl, istioctl 명령어를 사용해 리소스 생성/수정.
  • 객관식: 약 5문제 내외.
  • 출제 비중:
    • Istio 설치/업그레이드/구성 (1~2문항)
    • 트래픽 관리 (10문항 내외, 가장 비중 높음)
    • 장애주입/복원력 (3~4문항)
    • 워크로드 보안 (3~4문항)
    • 고급 시나리오 (3~4문항)
  • 공식 문서 참고 가능, 영어로 출제[2][1].

주요 기출 유형 및 예시 문제/답

1. Istio 설치/업그레이드/구성

  • Q: Istio 1.18.2 버전 CLI를 설치하라.
    A:
    curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.18.2 sh -
    export PATH=$PWD/istio-1.18.2/bin:$PATH
    istioctl version --remote=false
  • Q: 특정 컴포넌트에 리소스 할당 후 IstioOperator로 설치하라.
    A:
    IstioOperator YAML 작성 후 적용
    apiVersion: install.istio.io/v1alpha1
    kind: IstioOperator
    metadata:
      name: example-istiocontrolplane
      namespace: istio-system
    spec:
      components:
        pilot:
          k8s:
            resources:
              requests:
                cpu: 500m
                memory: 512Mi
    istioctl install -f istio-operator.yaml

2. 트래픽 관리

  • Q: VirtualService를 생성해 특정 경로(/api)에만 트래픽을 전달하라.
    A:
    apiVersion: networking.istio.io/v1beta1
    kind: VirtualService
    metadata:
      name: my-service
      namespace: default
    spec:
      hosts:
        - my-svc
      http:
        - match:
            - uri:
                prefix: /api
          route:
            - destination:
                host: my-svc
                port:
                  number: 80
    kubectl apply -f vs.yaml
    Document: https://istio.io/latest/docs/concepts/traffic-management/#virtual-service-example
  • Q: DestinationRule을 생성해 v1, v2로 트래픽을 80:20으로 분배하라.
    A:
    apiVersion: networking.istio.io/v1beta1
    kind: DestinationRule
    metadata:
      name: my-service
    spec:
      host: my-svc
      subsets:
        - name: v1
          labels:
            version: v1
        - name: v2
          labels:
            version: v2
    ---
    apiVersion: networking.istio.io/v1beta1
    kind: VirtualService
    metadata:
      name: my-service
    spec:
      hosts:
        - my-svc
      http:
        - route:
            - destination:
                host: my-svc
                subset: v1
              weight: 80
            - destination:
                host: my-svc
                subset: v2
              weight: 20
    Document: https://istio.io/latest/docs/concepts/traffic-management/#more-about-routing-rules

3. 장애주입/복원력


4. 워크로드 보안


5. 고급 시나리오

  • Q: VM을 Istio mesh에 등록하라(WorkloadEntry/WorkloadGroup).
    A:
    apiVersion: networking.istio.io/v1beta1
    kind: WorkloadEntry
    metadata:
      name: vm1
      namespace: default
    spec:
      address: 10.0.0.5
      labels:
        app: vm-app
      serviceAccount: vm-sa

6. 객관식 예시

  • Q: Istio에서 사이드카 프록시는 모든 워크로드에 자동으로 주입된다?
    A: B(아니다. 자동 주입은 네임스페이스/라벨 설정에 따라 다름)[3]
  • Q: Istio는 앱 코드 변경 없이 mTLS를 제공한다?
    A: B(맞음)[3]
  • Q: Citadel은 각 마이크로서비스에 인증서(Identity)를 제공한다?
    A: A(맞음)[3]

시험 준비 팁

  • 실습 위주로 연습 필요: VirtualService, DestinationRule, Gateway, PeerAuthentication, RequestAuthentication, AuthorizationPolicy, Sidecar 등 주요 리소스 yaml 작성 능력 필수[4][1].
  • 공식문서 빠른 검색/복붙 스킬 중요[1].
  • 트래픽 관리 영역 문제 비중이 높고 난이도가 상대적으로 높으므로 우선순위 조정 추천[1].
  • Killercoda 등에서 실습 환경 모의 테스트 추천[5][4].

정리

  • 시험은 실습+객관식 혼합, 공식문서 참고 가능.
  • 핵심 리소스 yaml 작성 및 주요 옵션 숙지.
  • 트래픽 관리, 보안, 장애주입 등 실무 중심 문제 출제.
  • 실습 환경에서 충분히 연습할 것.

실제 기출 예시와 실습 환경, 공식문서 활용법까지 익히면 합격에 큰 어려움이 없습니다.

[1] https://www.anyflow.net/sw-engineer/istio-certified-associate
[2] https://jimmysong.io/en/blog/ica-certificate/
[3] https://www.scribd.com/document/842748583/Istio-Certified-Associate-1
[4] https://bluehorn07.github.io/2024/04/10/istio-certificate-associate-exam-review/
[5] https://www.logonme.click/tech/k8s/ica-cert-review/
[6] https://github.com/isaac88/istio-certified-associate-ica-exam
[7] https://www.vmexam.com/category/istio-certified-associate-ica-questions-and-answers
[8] https://training.linuxfoundation.org/certification/istio-certified-associate-ica/
[9] https://bluehorn07.github.io/2024/03/07/istio-control-plane-detail-examine/
[10] https://www.udemy.com/course/istio-certified-associate-practice-tests/

Calude

Istio ICA(Istio Certified Associate) 시험 기출문제 및 답 정리

📋 시험 개요

Istio ICA 시험은 Istio 원리, 용어, Istio 설정 모범 사례에 대한 확실한 이해를 입증하는 온라인 감독 시험입니다.

  • 시험 시간: 120분
  • 합격 점수: 75% 이상
  • 시험 비용: $250 (1회 재응시 포함)
  • 시험 형태: 온라인 감독하 실습 기반 + 객관식 문제
  • 언어: 영어만 지원
  • 자격증 유효기간: 2년 (2024년 4월 1일 이후 취득 기준)

📚 시험 영역 및 비중

5개 주요 영역으로 구성되며, 각 영역의 비중은 다음과 같습니다:

1. Traffic Management (40%)

  • VirtualService, DestinationRule, Gateway를 사용한 트래픽 라우팅
  • 카나리 배포 및 트래픽 미러링 구현
  • 사이드카 인젝션 설정

2. Workload Security (20%)

  • mTLS, JWT 인증, 인가 정책 적용
  • 서비스 간 암호화 검증

3. Advanced Operations (13%)

  • 멀티 클러스터 토폴로지 관리
  • VM 통합
  • 실제 운영 환경 문제 해결

4. Installation and Configuration (7%)

  • istioctl과 Helm을 사용한 설치, 업그레이드, 검증

5. Resilience & Fault Injection (비중 미명시)

  • Circuit breaker, 재시도, 장애 주입 설정

💡 주요 기출문제 유형 및 답

Traffic Management 영역

문제 1: Istio에서 카나리 배포를 위해 90% 트래픽을 v1으로, 10%를 v2로 라우팅하려고 하는데 모든 트래픽이 v1으로 가고 있습니다. 가능한 원인은?

A) VirtualService에 weight 필드가 누락됨
B) DestinationRule 서브셋이 올바르게 정의되지 않음
C) 서비스에 mTLS가 활성화되지 않음
D) Gateway 리소스가 올바른 호스트에 바인딩되지 않음

정답: B) DestinationRule 서브셋이 올바르게 정의되지 않음

해설: 카나리 배포를 위해서는 DestinationRule에서 named subsets을 생성해야 하고, VirtualService에서 이를 참조해야 합니다. Envoy는 각 서브셋에 대해 다른 클러스터를 구성합니다.

문제 2: Istio에서 외부 서비스를 내부 서비스 레지스트리에 추가하려면 어떤 리소스를 사용해야 합니까?

A) VirtualService
B) DestinationRule
C) ServiceEntry
D) Gateway

정답: C) ServiceEntry

해설: ServiceEntry 리소스는 Kubernetes 클러스터 외부의 서비스를 Istio의 내부 서비스 레지스트리에 추가하는 데 사용됩니다.

Security 영역

문제 3: Istio에서 mutual TLS(mTLS)를 설정할 수 있는 범위는?

A) 메시 전체만
B) 네임스페이스만
C) 워크로드만
D) 메시 전체, 네임스페이스, 워크로드 수준 모두

정답: D) 메시 전체, 네임스페이스, 워크로드 수준 모두

해설: Istio는 메시, 네임스페이스, 워크로드 수준에서 mutual TLS를 구성할 수 있습니다.

Architecture 영역

문제 4: Istio 아키텍처에서 Envoy 프록시의 역할은?

A) 서비스 레지스트리 역할
B) 텔레메트리 데이터 처리
C) 사이드카 프록시로서 서비스 간 트래픽 처리
D) 사용자 인증 관리

정답: C) 사이드카 프록시로서 서비스 간 트래픽 처리

해설: Envoy 프록시는 Istio의 데이터 플레인 역할을 하며, 서비스 간 네트워크 트래픽을 가로채고 관리하는 사이드카 역할을 합니다.

문제 5: Istio의 주요 컨트롤 플레인 컴포넌트는?

A) Prometheus
B) Kiali
C) Istiod
D) Consul

정답: C) Istiod

해설: Istiod는 구성 관리, 서비스 디스커버리, 보안을 담당하는 Istio의 주요 컨트롤 플레인 컴포넌트입니다.

Observability 영역

문제 6: Istio에서 서비스 메시 트래픽과 서비스 종속성을 시각화하는 도구는?

A) Grafana
B) Jaeger
C) Kiali
D) Zipkin

정답: C) Kiali

해설: Kiali는 Istio 서비스 메시 트래픽과 종속성을 시각화하고, 서비스 상태 및 통신 패턴에 대한 인사이트를 제공하도록 특별히 설계되었습니다.

Configuration 영역

문제 7: DestinationRule의 주요 용도는?

A) 트래픽 라우팅 규칙 정의
B) 게이트웨이 설정
C) 로드 밸런싱 정책 설정
D) API 보안 설정

정답: C) 로드 밸런싱 정책 설정

해설: DestinationRule은 서비스로 향하는 트래픽에 적용되는 정책을 구성하는 데 사용되며, 여기에는 로드 밸런싱, 연결 풀 크기, 아웃라이어 탐지가 포함됩니다.

🔧 실습 문제 예시

VirtualService 설정

apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
  name: reviews
spec:
  hosts:
  - reviews
  http:
  - match:
    - headers:
        end-user:
          exact: jason
    route:
    - destination:
        host: reviews
        subset: v2
  - route:
    - destination:
        host: reviews
        subset: v1

DestinationRule 설정

apiVersion: networking.istio.io/v1beta1
kind: DestinationRule
metadata:
  name: reviews
spec:
  host: reviews
  subsets:
  - name: v1
    labels:
      version: v1
  - name: v2
    labels:
      version: v2

📝 시험 준비 팁

  1. 공식 문서 숙지: 시험 중 Istio 문서에 액세스할 수 있으므로 문서 구조에 익숙해지세요.

  2. 실습 환경 준비: 시험 환경에는 Kubernetes 클러스터, Istio 설치, VS Code, kubectl, istioctl 등이 제공됩니다.

  3. 핵심 리소스 이해:

    • VirtualService: 라우팅 규칙 정의
    • DestinationRule: 트래픽 정책 설정
    • Gateway: 인그레스/이그레스 설정
    • ServiceEntry: 외부 서비스 등록
  4. 중요 변경사항: 2025년 7월 28일부터 8월 12일까지 시험이 오프라인되며, 8월 12일부터 새로운 커리큘럼이 적용됩니다.

📚 추천 학습 자료

  • Tetrate의 무료 Istio 기초 튜토리얼
  • 공식 Istio 문서
  • Udemy의 ICA 연습 시험 (200+ 문제)
  • GitHub 저장소: isaac88/istio-certified-associate-ica-exam

⚠️ 주의사항

  • 시험은 영어로만 진행되며, 문제와 답변도 영어입니다.
  • 시험 결과는 완료 후 24시간 이내에 이메일로 발송
  • 개인용 기기 사용 권장 (회사 기기는 보안 기능으로 인한 기술적 문제 발생 가능)
  • 듀얼 모니터 지원하지 않음
profile
개발하는 사람입니다.

1개의 댓글

comment-user-thumbnail
2025년 7월 12일

실습 환경 구축하기

  • minikube start --memory 4096
답글 달기