Overview

서비스 개요

Data Flow는 다양한 데이터 소스로부터 대용량의 데이터를 추출하고, 스트림/배치 데이터의 변환/전송에 대한 처리 흐름을 시각적으로 작성하는 데이터 처리 흐름 도구로, 오픈소스 Apache NiFi를 제공합니다. Data Flow는 Samsung Cloud Platform의 Kubernetes Engine 클러스터 환경에서 단독으로 사용하거나, 다른 애플리케이션 SW와 함께 사용할 수 있습니다.

구성도
그림. Data Flow 구성도

제공 기능

Data Flow는 다음과 같은 기능을 제공하고 있습니다.

  • 편리한 설치 및 관리: Data Flow는 표준 Kubernetes 클러스터 환경에서 웹 기반 Samsung Cloud Platform Console을 통해 손쉽게 설치가 가능합니다. 오픈소스 Apache NiFi 기반의 확장형 클러스터링에 필요한 아키텍처를 자동으로 구성하여, ZooKeeper, Registry 및 관리 모듈이 자동 설치됩니다. Data Flow를 통해 서비스 연결에 필요한 설정 파일, NiFi 템플릿 등을 설정/배포할 수 있습니다.
  • 손쉬운 데이터 흐름 관리: 스트림/배치 데이터의 처리 흐름을 사용자 환경에 맞게 GUI 기반으로 쉽게 작성할 수 있으며, GUI 기반의 데이터 처리 흐름 작성으로 시스템 간 데이터를 효율적으로 추출/전송/처리할 수 있습니다.
  • NiFi 템플릿 갤러리: 레퍼런스 NiFi 템플릿을 공유/배포할 수 있습니다. Data Flow는 현업에서 자주 사용하는 데이터 처리 흐름에 대한 작업 파일을 갤러리로 제공하며, 사용자는 자신이 작성한 데이터 처리 흐름 작업을 공유할 수 있습니다.

구성 요소

Data Flow는 Manager와 Service 모듈로 구성되며, Apache NiFi를 패키징하여 제공합니다.

Data Flow Manager

Data Flow Manager는 NiFi를 더 효율적으로 활용할 수 있도록 다양한 Managing 기능을 제공합니다.

  • Data Flow Manager를 통해 고객이 생성한 Nar File을 업로드하여 Processor에서 사용하고, 설정 파일들을 업로드하여 공유할 수 있습니다.
  • NiFi Template 중에 사용 빈도가 높은 Template을 자산화하여 Gallery로 제공하며, 클릭 한 번으로 바로 사용 가능합니다.
  • Native NiFi Service를 위해 구성된 여러 Service에 대한 실시간 모니터링 및 자원 현황 모니터링을 제공합니다.
  • 클러스터 내의 NiFi 구성 컴포넌트에 대한 설정 정보를 손쉽게 프로비저닝할 수 있습니다.

Data Flow Service

  • Apache NiFi 기반의 데이터 플로우 관리 서비스를 제공합니다.
  • Apache NiFi 기반의 확장형 클러스터링에 필요한 아키텍처를 자동으로 구성하며, Nifi, ZooKeeper, Nifi Registry 모듈이 자동 설치됩니다.
  • Nifi 제공시 Description, 필요한 자원 규모, 접속 ID/PW, Host Alias를 설정할 수 있습니다.
  • 서비스 생성 이후 Description, 필요한 자원규모, 접속 password, Host Alias 등을 수정하여 서비스에 반영할 수 있습니다.

서버 스펙 유형

Data Flow 서비스 생성시 다음 내용을 확인하세요.

  • 서비스 설치 권장 사양: CPU 21 core, Memory 57 GB, 스토리지 100 GB 이상
참고
  • Data Flow 서비스를 생성하기 전에 Ingress Controller 설치가 필요합니다.
  • Kubernetes 클러스터에는 1개의 Ingress Controller만 설치할 수 있습니다.
  • 자세한 내용은 Ingress Controller 설치하기를 참고하세요.

리전별 제공 현황

Data Flow는 아래의 환경에서 제공 가능합니다.

리전제공 여부
한국 서부(kr-west1)제공
한국 동부(kr-east1)제공
한국 남부1(kr-south1)미제공
한국 남부2(kr-south2)미제공
한국 남부3(kr-south3)미제공
표. Data Flow 리전별 제공 현황

선행 서비스

해당 서비스를 생성하기 전에 미리 구성되어 있어야 하는 서비스 목록입니다. 자세한 내용은 각 서비스 별로 제공되는 가이드를 참고하여 사전에 준비해 주세요.

서비스 카테고리서비스상세 설명
StorageFile Storage네트워크 연결을 통하여 다수의 클라이언트 서버가 파일을 공유하는 스토리지
ContainerKubernetes EngineKubernetes 컨테이너 오케스트레이션 서비스
표. Data Flow 선행 서비스

1 - ServiceWatch 지표

Data Flow에서 생성된 Kubernetes Engine에 대해 ServiceWatch에서 Kubernetes Engine 지표를 확인할 수 있습니다. Kubernetes Engine와 마찬가지로 기본 모니터링으로 제공되는 지표는 1분 주기로 수집된 데이터입니다.

참고
ServiceWatch에서 지표를 확인하는 방법은 ServiceWatch 가이드를 참고하세요.

기본 지표

다음은 네임스페이스 Kubernetes Engine에 대한 기본 지표입니다.

아래에서 지표명이 굵은 글씨로 표기된 지표는 Kubernetes Engine에서 제공하는 기본 지표 중 주요 지표로 선정한 지표입니다. 주요 지표는 ServiceWatch에서 서비스별로 자동으로 구축되는 서비스 대시보드를 구성하는데 활용됩니다.

각 지표는 해당 지표를 조회할 때 어떤 통계값으로 조회하는 것이 의미있는지 의미 있는 통계값을 사용자 가이드를 통해 안내하고 있으며, 의미있는 통계 중에서 굵은 글씨로 표기된 통계값이 주요 통계값입니다. 서비스 대시보드에서는 주요 지표를 주요 통계값을 통해 조회할 수 있습니다.

지표명상세 설명단위의미있는 통계
cluster_up클러스터 업Count
  • 합계
  • 평균
  • 최대
  • 최저
cluster_node_count클러스터 노드 수Count
  • 합계
  • 평균
  • 최대
  • 최저
cluster_failed_node_count클러스터 실패 노드 수Count
  • 합계
  • 평균
  • 최대
  • 최저
cluster_namespace_phase_count클러스터 네임스페이스 페이즈 수Count
  • 합계
  • 평균
  • 최대
  • 최저
cluster_pod_phase_count클러스터 파드 페이즈 수Count
  • 합계
  • 평균
  • 최대
  • 최저
node_cpu_allocatable노드 CPU 할당가능량-
  • 합계
  • 평균
  • 최대
  • 최저
node_cpu_capacity노드 CPU 용량-
  • 합계
  • 평균
  • 최대
  • 최저
node_cpu_usage노드 CPU 사용량-
  • 합계
  • 평균
  • 최대
  • 최저
node_cpu_utilization노드 CPU 사용률-
  • 합계
  • 평균
  • 최대
  • 최저
node_memory_allocatable노드 메모리 할당가능량Bytes
  • 합계
  • 평균
  • 최대
  • 최저
node_memory_capacity노드 메모리 용량Bytes
  • 합계
  • 평균
  • 최대
  • 최저
node_memory_usage노드 메모리 사용량Bytes
  • 합계
  • 평균
  • 최대
  • 최저
node_memory_utilization노드 메모리 사용률-
  • 합계
  • 평균
  • 최대
  • 최저
node_network_rx_bytes노드 네트워크 수신 바이트Bytes/Second
  • 합계
  • 평균
  • 최대
  • 최저
node_network_tx_bytes노드 네트워크 송신 바이트Bytes/Second
  • 합계
  • 평균
  • 최대
  • 최저
node_network_total_bytes노드 네트워크 전체 바이트Bytes/Second
  • 합계
  • 평균
  • 최대
  • 최저
node_number_of_running_pods노드 구동 파드 개수Count
  • 합계
  • 평균
  • 최대
  • 최저
namespace_number_of_running_pods네임스페이스 구동 파드 개수Count
  • 합계
  • 평균
  • 최대
  • 최저
namespace_deployment_pod_count네임스페이스 디플로이먼트 파드 수Count
  • 합계
  • 평균
  • 최대
  • 최저
namespace_statefulset_pod_count네임스페이스 스테이트풀셋 파드 수Count
  • 합계
  • 평균
  • 최대
  • 최저
namespace_daemonset_pod_count네임스페이스 데몬셋 파드 수Count
  • 합계
  • 평균
  • 최대
  • 최저
namespace_job_active_count네임스페이스 잡 활성 수Count
  • 합계
  • 평균
  • 최대
  • 최저
namespace_cronjob_active_count네임스페이스 크론잡 활성 수Count
  • 합계
  • 평균
  • 최대
  • 최저
pod_cpu_usage파드 CPU 사용량-
  • 합계
  • 평균
  • 최대
  • 최저
pod_memory_usage파드 메모리 사용량Bytes
  • 합계
  • 평균
  • 최대
  • 최저
pod_network_rx_bytes파드 네트워크 수신 바이트Bytes/Second
  • 합계
  • 평균
  • 최대
  • 최저
pod_network_tx_bytes파드 네트워크 송신 바이트Bytes/Second
  • 합계
  • 평균
  • 최대
  • 최저
pod_network_total_bytes파드 네트워크 전체 바이트Count
  • 합계
  • 평균
  • 최대
  • 최저
container_cpu_usage컨테이너 CPU 사용량-
  • 합계
  • 평균
  • 최대
  • 최저
container_cpu_limit컨테이너 CPU 리미트-
  • 합계
  • 평균
  • 최대
  • 최저
container_cpu_utilization컨테이너 CPU 사용률-
  • 합계
  • 평균
  • 최대
  • 최저
container_memory_usage컨테이너 메모리 사용량Bytes
  • 합계
  • 평균
  • 최대
  • 최저
container_memory_limit컨테이너 메모리 리미트Bytes
  • 합계
  • 평균
  • 최대
  • 최저
container_memory_utilization컨테이너 메모리 사용률-
  • 합계
  • 평균
  • 최대
  • 최저
node_gpu_count노드 GPU 수Count
  • 합계
  • 평균
  • 최대
  • 최저
gpu_tempGPU 온도-
  • 합계
  • 평균
  • 최대
  • 최저
gpu_power_usageGPU 전력 사용량-
  • 합계
  • 평균
  • 최대
  • 최저
gpu_utilGPU 사용률Percent
  • 합계
  • 평균
  • 최대
  • 최저
gpu_sm_clockGPU SM 클럭-
  • 합계
  • 평균
  • 최대
  • 최저
gpu_fb_usedGPU FB 사용량Megabytes
  • 합계
  • 평균
  • 최대
  • 최저
gpu_tensor_activeGPU 텐서 활성률-
  • 합계
  • 평균
  • 최대
  • 최저
pod_gpu_util파드 GPU 사용률Percent
  • 합계
  • 평균
  • 최대
  • 최저
pod_gpu_tensor_active파드 GPU 텐서 활성률-
  • 합계
  • 평균
  • 최대
  • 최저
표. Kubernetes Engine 기본 지표