개발지식/Cloud
cloud function / scheduler 설정
lucio
2024. 1. 3. 21:44
1. Cloud function
- 기본사항
- 환경 : 1세대
- 함수 이름 설정 (~-batch-function)
- 리젼 : asia-northeast3
- 트리거
- HTTPS 필요 체크 해제
- 런타임, 빌드, 연결, 보안 설정
- cloud function 권한이 있는 서비스 계정 설정
- 소스
- 런타임 : Python 3.9, 진입점 : process_request
- main.py
import json
from google.cloud import aiplatform
PROJECT_ID = 프로젝트명
REGION = 리전명
PIPELINE_ROOT = 파이프라인 GCS 경로
def process_request(request):
aiplatform.init(
project=PROJECT_ID,
location=REGION,
)
job = aiplatform.PipelineJob(
display_name=파이프라인 이름,
template_path=파이프라인 json 파일 GCS 경로,
pipeline_root=PIPELINE_ROOT,
location=REGION,
enable_caching=False
)
job.submit(service_account=서비스 계정명)
return "Job submitted"
- requirements.txt
google-api-python-client>=1.7.8,<2
google-cloud-aiplatform
pyyaml
2. Cloud Scheduler
- 일정정의
- 스케줄러 이름 설정
- 리젼 : asia-northeast3 (서울)
- 빈도
- 매일 10시 45분 : 45 10 * * *
- 매월 10시45분 : 45 10 1 * *
- 시간대 : 한국 표준시(KST)
- 실행 구성
- 대상 유형 : HTTP
- URL
- 위의 Cloud Function 생성 → 트리거 → 트리거 URL 복사
- 인증헤더 : OIDC 토큰 추가
- 스케줄러 권한이 있는 서비스 계정 설정