-
[GCP] Cloud Composer클라우드/GCP 2021. 9. 27. 17:04
*<구글 클라우드 플랫폼 뽀개기> 책 참고
Cloud Composer란?
- 파이프라인을 작성하여 예약 및 모니터링 할 수 있는 총합 워크플로 관리 서비스이다.
- 내부적으로는 아파치 에어플로(Apache Airflow)를 기반으로한 서비스이다.
- 구글 쿠버네티스 엔진을 기반으로 한 배포환경을 가지고 / Cloud SQL을 통해 메타데이터를 저장하고 / 앱 엔진을 활용하여 Airflow 웹 서버를 호스팅하고 / Stackdriver를 통해 로그를 관리한다.
- Python을 기반으로 DAG과 Task에 대한 코드를 작성한다.
- 멀티 클라우드를 지원하기 때문에 온프레미스와 다른 클라우드 서비스들과 교차하는 워크플로우 작성가능
_______________________ 개념 정리 __________________________
쿠버네티스 : 컨테이너의 배포/확장/관리를 자동화해주는 오픈소스 플랫폼이다. 속도도 빠르고 사용법도 비교적 쉽다. 현재 국내 네이버, 카카오에서도 이용중인 구글 서비스.
Stackdriver : 추후 정리 (구글 클라우드 플랫폼 뽀개기 16장 내용, p484)
메타데이터 :
_____________________실습________________________
- Cloud Composer API 사용설정
- 수행할 업무에 따라 노드 수 설정 / 파이선 버전 설정 / 만들기 >> Composer를 만들면 Kuberentes Engine쪽에 클러스터가 생성된다. 클러스터 생성여부로 에어플로우가 설치된 컨테이너가 생성된 것을 확인할 수 있다. && Compute Engine 쪽에도 Container가 생성된다.
- Cloud Composer에서 DAG폴더를 선택하여 Python파일을 넣어준다.
- GCS 버킷 (Google Cloud Storage)버킷이 생성되고, 여기서 파이선 파일을 관리한다.
- 이 때 올리는 파이선 소스에서 dag생성하고, task순서를 지정해준다.
- 예 )
#DAG 생성 my_dag = DAG( 'my_dag', description='My First Dag', start_date=datetime(2019, 1, 1), schedule_interval='0 12 * * *', catchup=False ) task_echo_hello_world = BashOperator( task_id = 'echo_hello_world', bash_command='echo "Hello World (shell)"', dag=my_dag) def print_hello_world(): return 'Hello World!!!(python)' task_print_hello_world = PythonOperator( task_id='print_hello_task', python_callable=print_hello_world, #위의 print_hello_world() dag=my_dag) #>>를 통해 순서 정하기 task_echo_hello_world >> task_print_hello_world
위파일을 업로드한다.
Python 패키지 설치(PYPI Packages)는 다음에 해보도록 하자.. (지금 GCP체험판이 끝나서 잠시 못하는중)
반응형'클라우드 > GCP' 카테고리의 다른 글
[GCP]StackDriver (0) 2021.09.28 [GCP]Cloud DataProc (0) 2021.09.27 [GCP]Cloud Pub/Sub (0) 2021.09.27 [GCP]Source Repositories (0) 2021.09.27 [GCP] 구글클라우드 공부하기 - Spanner1 (0) 2021.07.07