1.2. 파이프라인 정의


Kubeflow Pipelines SDK를 사용하면 엔드 투 엔드 머신 학습 및 데이터 파이프라인을 정의할 수 있습니다. 최신 Kubeflow Pipelines 2.0 SDK를 사용하여 Python 코드에서 데이터 사이언스 파이프라인을 빌드합니다. 파이프라인을 빌드한 후 SDK를 사용하여 IIR( Intermediate Representation) YAML 파일로 컴파일합니다. 파이프라인을 정의한 후 YAML 파일을 OpenShift AI 대시보드로 가져와 실행 설정을 구성할 수 있습니다.

중요

FIPS 모드에서 실행되는 클러스터에서 OpenShift AI를 사용하는 경우 데이터 사이언스 파이프라인의 사용자 정의 컨테이너 이미지는 UBI 9 또는 RHEL 9를 기반으로 해야 합니다. 이렇게 하면 FIPS 승인 파이프라인 구성 요소와의 호환성을 유지하고 일치하지 않는 OpenSSL 또는 GNU C 라이브러리(glibc) 버전과 관련된 오류를 방지합니다.

Elyra tellpyterLab 확장을 사용하여 sendpyterLab 내에서 데이터 사이언스 파이프라인을 생성하고 실행할 수도 있습니다. hapyterLab에서 파이프라인 생성에 대한 자세한 내용은 pin pyterLab의 파이프라인 작업을 참조하십시오. Elyra tellpyterLab 확장에 대한 자세한 내용은 Elyra 문서를 참조하십시오.

1.2.1. Kubernetes API를 사용하여 파이프라인 정의

Kubernetes API를 사용하여 데이터 사이언스 파이프라인 및 파이프라인 버전을 정의하여 내부 데이터베이스 대신 클러스터에 사용자 정의 리소스로 저장할 수 있습니다. 이 접근 방식을 사용하면 OpenShift GitOps(Argo CD) 또는 유사한 툴을 사용하여 파이프라인 및 파이프라인 버전을 관리할 수 있지만 OpenShift AI UI(사용자 인터페이스), API 및 Kubeflow Pipelines(kfp) 소프트웨어 개발 키트(SDK)를 통해 이를 관리할 수 있습니다.

사전 요구 사항

  • 이전에 사용 가능하고 파이프라인 서버 ( DataSciencePipelinesApplication 사용자 정의 리소스)가 있는 데이터 과학 프로젝트를 생성했습니다.
  • OpenShift CLI(명령줄 인터페이스)를 설치했습니다.

프로세스

  1. 터미널 창에서 다음 명령을 실행하여 OpenShift CLI에 로그인합니다.

    $ oc login -u <user_name>

    메시지가 표시되면 OpenShift 서버 URL, 연결 유형 및 암호를 입력합니다.

  2. 기본 데이터베이스 옵션 대신 Kubernetes API 스토리지를 사용하도록 파이프라인 서버를 구성하려면 프로젝트의 DataSciencePipelinesApplication (DSPA) 사용자 정의 리소스에서 spec.apiServer.pipelineStore 필드를 kubernetes 로 설정합니다.

    다음 명령에서 < dspa_name >을 DSPA 사용자 정의 리소스의 이름으로 바꾸고 < namespace >를 프로젝트 이름으로 교체합니다.

    $ oc patch dspa <dspa_name> -n <namespace> \
      --type=merge \
      -p {"spec": {"apiServer": {"pipelineStore": "kubernetes"}}}
    주의

    Kubernetes API 스토리지로 변경하면 내부 데이터베이스에 저장된 기존 파이프라인에 더 이상 OpenShift AI UI 또는 REST API를 통해 액세스할 수 없습니다. 해당 파이프라인에 대한 액세스를 복원하려면 spec.apiServer.pipelineStore 필드를 다시 database 로 변경합니다.

  3. 다음 콘텐츠를 사용하여 YAML 파일에 Pipeline 사용자 정의 리소스를 정의합니다.

    파이프라인 정의 예

    apiVersion: pipelines.kubeflow.org/v2beta1
    kind: Pipeline
    metadata:
      name: <pipeline_name> 
    1
    
      namespace: <namespace> 
    2
    
    spec:
      displayName: <pipeline_display_name> 
    3

    1
    이 값을 파이프라인의 이름으로 바꿉니다.
    2
    이 값을 프로젝트 이름으로 바꿉니다.
    3
    이 값을 파이프라인의 표시 이름으로 바꿉니다.
  4. 파이프라인 정의를 적용하여 클러스터에서 Pipeline 사용자 정의 리소스를 생성합니다.

    다음 명령에서 < pipeline_yaml_file&gt;을 YAML 파일의 이름으로 바꿉니다.

    명령 예

    $ oc apply -f <pipeline_yaml_file>.yaml

  5. 다음 콘텐츠를 사용하여 YAML 파일에 PipelineVersion 사용자 정의 리소스를 정의합니다.

    파이프라인 버전 정의 예

    apiVersion: pipelines.kubeflow.org/v2beta1
    kind: PipelineVersion
    metadata:
      name: <pipeline_version_name> 
    1
    
      namespace: <namespace> 
    2
    
    spec:
      pipelineName: <pipeline_name> 
    3
    
      displayName: <pipeline_version_display_name> 
    4
    
      description: This is the first version of the pipeline.
      pipelineSpec: 
    5
    
        # ... generated by kfp compile ...

    1
    이 값을 파이프라인 버전의 이름으로 바꿉니다.
    2
    이 값을 프로젝트 이름으로 바꿉니다.
    3
    이 값을 파이프라인의 이름으로 바꿉니다. 이 값은 Pipeline 사용자 정의 리소스의 metadata.name 값과 일치해야 합니다.
    4
    이 값을 파이프라인 버전의 표시 이름으로 바꿉니다.
    5
    spec.pipelineSpec 필드를 컴파일 후 kfp SDK로 파이프라인의 YAML 표현으로 바꿉니다.
  6. 파이프라인 버전 정의를 적용하여 클러스터에서 PipelineVersion 사용자 정의 리소스를 생성합니다.

    다음 명령에서 < pipeline_version_yaml_file&gt;을 YAML 파일의 이름으로 바꿉니다.

    명령 예

    $ oc apply -f <pipeline_version_yaml_file>.yaml

    파이프라인 버전을 생성한 후 시스템은 더 쉽게 필터링하기 위해 다음 라벨을 파이프라인 버전에 자동으로 적용합니다.

    자동 레이블의 예

    pipelines.kubeflow.org/pipeline-id: <metadata.uid of the pipeline>
    pipelines.kubeflow.org/pipeline: <pipeline name>

검증

  1. Pipeline 사용자 정의 리소스가 성공적으로 생성되었는지 확인합니다.

    $ oc get pipeline <pipeline_name> -n <namespace>
  2. PipelineVersion 사용자 정의 리소스가 성공적으로 생성되었는지 확인합니다.

    $ oc get pipelineversion <pipeline_version_name> -n <namespace>
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동