Airflow On K8s (Kubernetes) - Git Sync DAGs 배포하기

bradley·2023년 2월 4일
3

Airflow

목록 보기
14/16
post-thumbnail

GitHub에서 DAGs를 관리하고, Airflow On K8s에서 GitHub의 DAGs를 자동으로 Sync하도록 Git Sync를 설정해본다.

GitHub deploy keys 생성


GitHub에서 연동할 Repo의 Deploy key에 SSH Public key를 등록한다.

  • Deploy key 대신 계정에 SSH Key를 등록해도 된다.



Cluster에 Git secret 적용


Airflow instance에 Git secret을 생성한다.

kubectl create secret generic airflow-ssh-git-secret --from-file=gitSshKey=/home/<사용자>/.ssh/id_rsa -n airflow

kubectl get secrets -n airflow


배포에 적용


매 배포에 적용하기 위하여 values.yaml 파일의 아래 부분을 변경해준다.

gitSync:
	enabled: true
	repo: <ssh url>
	branch: main
	subPath: ""
	sshKeySecret: airflow-ssh-git-secret

Helm 배포

helm upgrade --install airflow apache-airflow/airflow -n airflow -f values.yaml --debug

DAGs 연동 확인


Airflow에 DAGs가 Sync 되는 것을 확인한다.

profile
데이터 엔지니어링에 관심이 많은 홀로 삽질하는 느림보

0개의 댓글