Airflow 6

[k8s]구축하기

1. dockerfile 만들기 2. build 하기 3. harbor에 upload하기 Docker Push Command (참고 : https://docs.vmware.com/kr/VMware-vSphere/7.0/vmware-vsphere-with-tanzu/GUID-EC76B511-8DEB-4595-9DFA-3E9567C98ECA.html ) 1. Tag an image for this project: docker images 로 확인하기 docker image Sphere Docker Credential Helper를 통해 Harbor 레지스트리에 로그인. docker-credential-vsphere login --user username@domain.com​ 2. Harbor 레지스트리의 프..

Infra 2022.02.21

[Mlflow] MLflow 란?

mlflow란 머신러닝 모델의 실험을 tracking하고 model을 공유 및 deploy할 수 있도록 지원하는 라이브러리. 머신러닝 학습과 관련된 전반적인 lifecycle을 지원해주는 라이브러리 mlflow의 논리적 컴포넌트 구성은 4개로 구성되어 있다. mlflow는 단독 파이썬 패키지로 구성되어 있어 가볍고 빠르게 Workflow지원 가능하다. MLflow Tracking : Record and query experiments: code, data, config, and results 머신러닝 모델을 학습시킬 때 생기는 각종 파라미터, 그리고 머신러닝 모델 training이 끝난 후 metric의 결과 등을 logging 하고 실행할 수 있도록 코드 패키지 형식으로 지원해준다. 이러한 형식으로 만..

Infra/MLops 2022.01.19

[airflow][crontab] 시간 설정

airflow DAG안에 schedule_interval 에서 시간 설정을 할 수 있다. schedule_interval의 스크립트는 crontab 서식과 같다. ex ) # 매일 9시 30분에 동작 schedule_interval="30 09 * * *", Airflow = schedule_interval =" * * * * * " crontab = * * * * * " * * * * * " 순서대로 * 분 : 1분단위로 가능 (0 ~59) // * 일때 : 1분 단위로 실행 * 시 : 매 시간 가능 (0~23) // * 일때 : 매시간 실행 * 일 : 일 (1~31) // * 일때 : 매일 실행 * 월 : 월 (1~12) // * 일때 : 매달 실행 * 요일 : 요일 (0~7)가능 // * 일때 : ..

Infra/MLops 2022.01.18

[airflow] Dag간 연결 하기 (Connecting between Dags) ⏰

dag를 설계할 때, dag 끼리 종속성을 갖지 않는 것이 가장 좋지만 어쩔 수 없이 종속성을 만들어야 하는 경우가 있다. 아래와 같은 상황일 때, dag의 종속성을 갖는 것이 유용하게 사용 된다. 두 dag는 종속되지만 일정이다름 두 dag는 종속 되지만 서로 다른 팀에서 소유 task는 다른 task에 종속되지만 execution_date가 다름 여기서는 dag에서 다른 dag를 호출하는 방법을 설명한다. -> subDAG를 사용하여 dag 종속성을 처리할 수도 있지만, subDAG가 성능 문제를 일으킬 수도 있으므로 dag 종속성으로 처리하는 것을 권장 -> airflow2.0에서는 subdag 사용을 권장 하지 않음. TriggerDagRunOperator -> 해당 operator를 사용하면 동..

Infra/MLops 2022.01.10

[airflow] mysql연결하기

airflow2.0 관련하여 자료가 부족하여, 기록 겸 정리 중입니당 > mysql_conn_id : 이부분이 airflow Connections Id 와 일치 해야함 with DAG(dag_id="daily_dagtest", default_args=default_args, schedule_interval="0 10 * * *" ) as dag_instance: t1_mysql_get = ReturningMySqlOperator( task_id='t1_mysql_get', sql=r''' SELECT * FROM Table_name ''', dag=dag_instance ) dag 안에서 ReturningMySqlOperator 호출 후 사용 sql=r''' 이곳에 쿼리 작성 '''

Infra/MLops 2022.01.10

[airflow] slack 연결하기-많은 dag에 적용

SlackAPIPostOperator 를 사용하여 slack을 연결하여 실패 메세지 보내기 많은 DAG에 적용하는 방법 -> 모듈 설치하기 pip install apache-airflow-providers-slack pip install apache-airflow-providers-slack -> 모듈 import 하기 from airflow.operators.slack_operator import SlackAPIPostOperator 1. slack에서 작업 slack 가입 후 Token 추가 (OAuth & Permissions 에 있는 토큰을 추가) -> https://jisun-rea.tistory.com/entry/Slack-API-Slack-Bot-%EB%A7%8C%EB%93%A4%EA%B3%..

Infra/MLops 2022.01.10
반응형