본문 바로가기

분류 전체보기83

에어플로우 기초 1.워크플로우 : 여러 개의 DAG들을 묶어서 큰 규모의 비즈니스 프로세스를 관리하는 개념 일련의 작업들을 통해 비즈니스 프로세스를 수행하는 전체적인 흐름을 의미한다. workflow는 여러 개의 DAG들로 구성될 수 있고, DAG 간의 종속성을 관리하여 전체적인 작업 흐름을 제어하고 모니터링할 수 있다. workflow는 에어플로우에서 여러 개의 DAG들을 논리적으로 묶어서 관리하고, 큰 규모의 비즈니스 프로세스를 효율적으로 실행하고 관리하는 데 사용된다. 2. DAG (Directed Acyclic Graph - 방향이 있는 순환되지 않는 그래프) : 작업 흐름을 정의하고 관리하는 개별적인 그래프 모델 에어플로우에서 작업 흐름을 정의하는 그래프 형태의 모델로, 작업(task)들이 노드(node)로 표.. 2023. 4. 12.
Airflow 윈도우 설치 (+ 가상환경) 설치 과정) Airflow 는 파이썬 기반의 데이터 워크플로우 관리도구 ※아쉽게도 Airflow는 Windows 버전의 공식 설치를 지원하지 않기 때문에 다른 방법을 통해 설치해야 한다. Windows에서는 크게 아래 2가지 방법으로 에어플로우를 설치할 수 있다. (1) WSL 로 설치 (2) Docker 를 이용해 설치 ※ WSL이란 윈도우에서 Ubuntu, CentOS 등의 리눅스 커널(의 일부)을 사용할 수 있게 해주는 시스템) 대부분의 윈도우에서의 airflow설치 과정을 가상환경을 통해 리눅스 기반의 환경을 구축하고 그 위에 airflow를 설치하는 방식이었다. 블로그와 영상들로 안내된 방법들 중 가장 간편하고 깔끔했던 방법으로 진행했다. 1. microsoft Store에서 WSL 설치 2. .. 2023. 4. 12.
Failover controller란? 💡 Failover controller란 주키퍼가 active NN에 문제가 발생하는 경우 active를 내리고 standby상태에 있는 NN을 active로 전환 시키는 기능을 말한다. 주키퍼 장애 복구 컨트롤러 ZKFC ( ZookeeperFailoverController ) 는 Zookeepr Client 로써 동작한다. 자신이 실행되고 있는 서버 위에서 실행되는 Name Node 의 상태를 heartbeat 를 통해 모니터링 한다. (네임 노드가 동작하는 서버에 zkfc 도 같이 동작하면서 네임 노드 상태를 모니터링함) 또한 평소(Name Node 가 정상 동작할 때)에 Zookeeper 와 zkfc 간 세션을 유지. 주키퍼 Failover controller → ZKFC 라고 한다. 특징) 1... 2023. 4. 9.
Shell Script? Shell(쉘)이란? Shell(쉘)은 운영체제상에서 사용자가 입력하는 명령을 읽고 해석하여 대신 실행해주는 프로그램이다. 즉 다시말해서, 운영체제의 커널과 사용자 사이를 이어주는 역할을 하며 사용자의 명령어를 해석하고 운영체제가 알아들을 수 있도록 도와주는 명령어 해석기이다. Linux에서 사용하는 Shell의 종류로는 다음과 같은 것들이 있다. Shell Script(쉘 스크립트)란 Shell(쉘)에서 사용할 수 있는 명령어들의 조합을 모아서 만든 배치(batch)파일이다. 즉, 운영체제의 Shell을 이용하여 한줄씩 순차적으로 읽으면서 명령어들을 실행시켜주는 인터프리터 방식의 프로그램 이다. Shell Script를 활용하여 묶어진 명령어 조합을 수행하거나 반복적인 명령어를 단일 명령으로 쉽게 사용.. 2023. 4. 9.