Skip to main content
NetApp artificial intelligence solutions
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

10. 보안 고려 사항, 검증 및 테스트

기여자 nkarthik

Karthikeyan Nagalingam, NetApp

이 통합 섹션에서는 AI 파이프라인을 안전하게 운영하는 데 필요한 제어 기능과 대표적인 환경에서 설계가 예상대로 작동하는지 입증하는 데 사용되는 검증 활동을 다룹니다. 파이프라인에 사용된 것과 동일한 스토리지 계층 분리, 최소 권한 접근 모델, 체크포인트 로직 및 실행 범위 기반 계보 관리가 검증 계획 및 운영 가이드라인에도 적용됩니다.

[[10-1-security-considerations]]
== 10.1 보안 고려 사항

보안 제어는 감사에 필요한 데이터 계보를 유지하면서 각 스토리지 계층과 파이프라인 기능을 격리해야 합니다. StorageGRID 원시 데이터, ONTAP NAS 준비 데이터, 선택한 XCP 대상 및 StorageGRID 아카이빙에 대해 각각 별도의 최소 권한 자격 증명을 사용하십시오. 네트워크 트래픽을 암호화하고 모든 비밀 정보는 DAG 정의, 예제 및 셸 기록 외부에 저장하십시오.

영역 권장 사항

자격 증명 관리

Airflow 연결/변수 또는 시크릿 관리자를 사용하고, 본문 내 인라인 일반 텍스트를 사용하지 마십시오. dag_run.conf

데이터 전송 중

TLS가 활성화된 S3 엔드포인트를 사용하고, 지원되는 경우 암호화된 NFS/Lustre 전송을 사용합니다.

액세스 제어

역할별 S3 자격 증명 범위(StorageGRID 원시 데이터, ONTAP NAS 준비 데이터, XCP 대상, StorageGRID 아카이빙)를 최소 필수 권한으로 제한합니다.

설정 파일의 비밀 정보

테스트 중에 노출된 자격 증명을 교체하고, 트리거 스크립트/셸 기록은 민감한 정보로 취급하십시오.

감사 추적

규정 준수 증거를 위해 데이터 준비 매니페스트, 체크포인트 레코드 및 아카이브 매니페스트를 활용하십시오.

[[10-2-validation-and-testing]]
== 10.2 검증 및 테스트

검증을 통해 파이프라인의 구성 가능한 동작이 라우팅, 오류 처리, 데이터 이동성 및 다중 파일 검색 경로 전반에 걸쳐 안정적으로 작동함을 확인했습니다. 각 검증 테스트 영역은 실제 Airflow DAG 트리거를 사용하는 대표적인 환경에서 실행되었으며, 로그 출력과 스토리지 매니페스트의 정확성을 검증했습니다.

[[10-2-1-functional-routing-validation]]
=== 10.2.1 기능적 라우팅 유효성 검사

이 테스트 영역은 `enable_xcp=true`일 때 엔드투엔드 데이터 및 아티팩트 라우팅을 검증합니다.

  • 목표: 데이터 준비, XCP 이동성, 모델 학습, 미세 조정 및 추론 과정에서 선택된 XCP 대상 (s3 또는 lustrefs)가 일관되게 사용되는지 확인합니다.

  • 테스트 절차: xcp_copy_destination="s3" 및 `xcp_copy_destination="lustrefs"`로 DAG 실행을 트리거했습니다. XCom 출력, 유효 구성 로그 및 저장 위치를 검사했습니다.

  • 검증 결과:

    • data_prep`에서 형식화된 표 형식 분할 및 텍스트 파일이 `<xcp_prefix>/formatted/<run_stamp>/data/ 아래의 ONTAP NAS 준비 데이터 계층에 준비되었습니다.

    • `xcp_copy`에서, 준비된 데이터 세트는 후속 모델 단계를 위해 선택된 XCP 대상으로 전송되었습니다.

    • model_training`에서 모델 입력은 XCP 대상에서 로드되었고 기준 아티팩트 (`regression_model.bin, text_vectorizer.bin, text_classifier.bin, train_metrics.json)는 `<xcp_prefix>/formatted/<run_stamp>/artifacts/`에 다시 게시되었습니다.

    • fine_tuning`에서 기본 벡터화기/분류기 아티팩트는 XCP 대상에서 구체화되고, 점진적으로 조정되고, `text_classifier_tuned.bin 및 fine_tune_metrics.json(으)로 다시 게시되었습니다.

    • 본 연구에서는 inferencing, 조정된 텍스트 분류기와 기준 회귀 모델 및 벡터화기를 XCP 대상에서 구체화하여 예측값을 생성했습니다.

[[10-2-2-local-fallback-and-non-xcp-execution-validation]]
=== 10.2.2 로컬 폴백 및 비XCP 실행 유효성 검사

이 테스트 영역은 XCP 데이터 이동성이 비활성화된 경우 파이프라인 동작을 검증합니다(enable_xcp=false).

  • 목표: SSH 연결, 원격 XCP 호스트 또는 XCP 자격 증명 프로필 없이 직접 로컬 준비 데이터 경로를 사용하여 파이프라인이 원활하게 작동하는지 확인합니다.

  • 테스트 절차: enable_xcp=false 및 기본 S3/로컬 경로를 사용하여 파이프라인 실행을 트리거했습니다.

  • 검증 결과:

    • XCP 사전 검사 및 복사 작업이 안전하게 건너뛰었습니다.

    • model_training, fine_tuning, 및 `inferencing`은(는) 로컬에 준비된 데이터 디렉터리와 게시된 아티팩트에서 직접 읽습니다.

    • XCP를 비활성화했을 때 XCP S3 자격 증명 확인 오류나 SSH 사전 요청 오류가 발생하지 않음을 확인했습니다.

[[10-2-3-performance-and-tier-comparison-ontap-s3-vs-lustrefs]]
=== 10.2.3 성능 및 계층 비교 (ONTAP S3 vs. LustreFS)

이 테스트 영역은 ONTAP S3 오브젝트 스토리지와 LustreFS 병렬 파일 시스템 계층 간의 I/O 지연 시간, 검색 오버헤드 및 학습 처리량을 평가합니다.

  • 목표: LustreFS를 사용하는 E-Series와 ONTAP S3 활성 학습 계층을 사용하는 ONTAP AFF/AFX의 성능 특성을 정량화합니다.

  • 테스트 절차: 동일한 데이터셋 크기(14,400+ 행, 다중 파일 텍스트/테이블 형식 입력)에서 파일 검색 시간, 학습 데이터셋 로드 지연 시간 및 아티팩트 게시/구체화 기간을 측정했습니다.

  • 검증 결과:

    • LustreFS 티어: 모델 학습 중 파일 검색 오버헤드가 낮고 임의 액세스 읽기 지연 시간이 더 빠른 것으로 입증되어 파일 수가 많고 GPU 집약적인 병렬 학습 워크로드에 이상적입니다.

    • ONTAP S3 Tier: 간편한 멀티 프로토콜 관리로 높은 처리량을 제공하여 클라이언트 측 파일 시스템 마운트 없이도 비용 효율적이고 탄력적인 액세스가 가능한 액티브 스토리지에 최적입니다.

[[10-2-4-failure-recovery-and-training-checkpoint-validation]]
=== 10.2.4 장애 복구 및 훈련 체크포인트 검증

이 테스트 영역은 `model_training`로 범위가 지정된 체크포인트 재개 시스템의 유효성을 검증합니다.

  • 목표: 파이프라인 복구가 이전에 성공적으로 완료된 학습 실행을 정확하게 감지하고 아티팩트 무결성을 유지하면서 중복 계산을 건너뛰는지 확인합니다.

  • 테스트 절차:

    1. `checkpoint_enabled=true`와 `checkpoint_store="formatted_s3"`를 사용하여 파이프라인을 실행했습니다.

    2. 시뮬레이션된 작업 실패 또는 재실행( `training_checkpoint_reuse_mode="resume_if_exists"`포함).

    3. 테스트 verify_only 및 off 재사용 모드.

  • 검증 결과:

    • `resume_if_exists`가 설정되고 유효한 체크포인트 JSON + 모든 핵심 아티팩트가 S3/LustreFS에 존재하면, `model_training`는 결정 `RESUMED_FROM_CHECKPOINT`과 함께 즉시 종료되고 `[checkpoint] resume_summary: decision=RESUMED_FROM_CHECKPOINT`를 기록합니다.

    • 다운스트림 fine_tuning 및 inferencing 검증된 체크포인트 아티팩트를 성공적으로 구체화했습니다.

    • `verify_only`이(가) 설정되면, 가드는 학습을 건너뛰지 않고 아티팩트의 존재 여부를 검증했습니다.

[[10-2-5-scalability-and-multi-file-dataset-validation]]
=== 10.2.5 확장성 및 다중 파일 데이터셋 유효성 검사

이 테스트 영역은 대규모의 다중 파일로 구성된 표 형식 및 텍스트 데이터 세트 전반에 걸쳐 파이프라인의 확장성을 검증합니다.

  • 목표: 자동 데이터셋 검색, Spark 변환 엔진 실행 및 Lakehouse 테이블 형식 지원 (delta 및 iceberg)을 확인합니다.

  • 테스트 절차:

    1. StorageGRID 원시 데이터 접두사 아래에 있는 수십 개의 CSV/Parquet 파일에 대한 데이터 수집 및 준비 작업을 수행했습니다(s3_raw_prefix).

    2. 명시적 파일 선택 방식( s3_tabular_object_keys) 대 자동 전체 파일 검색 방식((sample_count=0)을 테스트했습니다.

    3. PySpark을 사용하여 table_format="delta" 및 `table_format="iceberg"`로 준비를 실행했습니다.

  • 검증 결과:

    • Spark 분산 준비 기능을 사용하여 대규모 다중 파트 테이블형 데이터 세트를 성공적으로 수집, 필터링, 분할 및 포맷했습니다.

    • 자동 검색 기능은 비테이블 형식의 아티팩트를 무시하면서 모든 유효한 테이블 형식 CSV/Parquet 오브젝트를 정확하게 식별했습니다.

    • Delta Lake와 Iceberg 테이블 형식 모두 올바르게 생성되어 `tables/`에 등록되었으며, 다운스트림 모델 훈련에서 형식화된 분할을 검색하고 읽었습니다.

[[10-2-6-example-customer-evaluation-workflow-sizing-assumptions-and-validation-metrics]]
=== 10.2.6 고객 평가 워크플로 예시, 규모 산정 가정 및 검증 지표

이 워크플로는 고객이 설계가 AI 파이프라인 성숙도, 데이터 주권 요구 사항 및 성능 목표에 적합한지 평가하는 데 도움이 됩니다. 대표 데이터 세트와 파이프라인 실행 1회로 시작하여 각 승인 기준이 충족된 후에만 데이터 볼륨, 파일 수, 모델 복잡성 및 동시 실행 횟수를 늘립니다. ONTAP S3와 LustreFS 간의 비교에서 동일한 입력 데이터와 구성을 사용할 수 있도록 `run_stamp`별로 결과를 기록합니다.

평가 단계 워크플로우 예시 규모 산정 가정/결정 검증 지표 및 수용 증거

1. 기준선 설정

제한된 샘플에서 Python 준비 경로를 enable_xcp=false 실행합니다.

섹션 7.1.1의 참조 검증 환경을 초기 기능 기준선으로 사용하십시오.

DAG 완료 성공 여부; 입력 행 및 출력 분할 횟수; 모델 지표; 작업 시간; CPU, 메모리 및 로컬 디스크 사용률.

2. 데이터 주권 검증

원시 데이터, 준비된 데이터, 활성 학습 데이터 및 아카이브는 승인된 스토리지 엔드포인트 및 지역에 보관하십시오. 계층별 자격 증명 및 보존 정책을 검토하십시오.

데이터를 이동하기 전에 허용된 위치, 액세스 역할, 암호화 요구 사항 및 보존 정책을 정의하십시오.

엔드포인트, 버킷, 접두사 및 리전이 유효한 구성 및 매니페스트에 기록됩니다. 최소 권한 액세스 검증이 이루어지며, 아카이브 및 삭제 정책에 대한 증거가 제공됩니다.

3. 데이터 이동성 검증

XCP를 활성화하고 준비된 실행 결과를 ONTAP S3에 복사한 다음, LustreFS에도 동일한 작업을 반복합니다.

준비된 실행, 아티팩트, 작업 공간 및 동시 실행을 위해 10 GbE 연결과 충분한 대상 용량을 확보하십시오.

XCP 완료 상태; 복사된 바이트 및 파일 수; 복사 시간 및 처리량; 소스/대상 파일 수 및 체크섬 또는 매니페스트 비교; 사전 검사 성공 여부.

4. 훈련 단계 적합성 검증

선택한 각 목적지에 대해 동일한 데이터 세트와 모델 설정을 사용하여 학습, 미세 조정 및 추론을 수행합니다.

객체 기반 워크플로우에는 ONTAP S3를 사용하고, 병렬 학습 I/O 또는 높은 파일 수가 정당화되는 경우에는 LustreFS와 함께 E-Series를 사용하십시오.

데이터셋 검색 및 로드 시간; 학습, 미세 조정 및 추론 시간; 아티팩트 게시/실현 시간; 해당되는 경우 CPU/GPU 사용률; 모델 품질 일관성.

5. 규모 및 복구 검증

모든 행으로 `sample_count`확장하고, 파일 수와 동시 실행 횟수를 늘린 다음, 체크포인트 재사용 및 아카이빙을 테스트하십시오.

유지되는 실행 범위 데이터 세트 및 아티팩트의 크기 용량과 향후 성장을 위한 여유 공간, Spark 및 동시 Airflow 작업에 필요한 CPU 및 메모리 크기를 산정합니다.

전체 소요 시간; 성공률; 대기 시간; 체크포인트 재개 결정 및 소요 시간; 아카이브 완전성; 실행당 저장 공간 증가량; 복구 시간 목표(RTO) 달성률.

평가를 시작하기 전에 고객은 엔드투엔드 실행 시간, XCP 처리량, 학습 데이터 로드 시간, 최대 동시 실행 수, 복구 시간 및 스토리지 보존 기간에 대한 정량적 목표를 설정해야 합니다. 측정된 기준선과 각 확장 테스트를 이러한 목표와 비교하여 아키텍처가 의도된 워크로드 및 운영 요구 사항을 충족하는지 확인해야 합니다.