Cloud Functions로 작은 자동화 만들기
이 글은 「GCP 기초」 연재의 일곱 번째 글이다. 앞의 두 편에서 파일과 데이터를 둘 곳을 만들었으니 이제 일을 시키는 코드 를 올린다. 서버를 준비하고 웹 서버를 띄우는 과정 없이, 함수 하나만 올려 두면 필요할 때 알아서 실행되는 방식이다. 이 글에서는 파이썬 함수 하나를 실제로 배포해 보고, 진입점과 환경 변수, 로그 확인, 콜드 스타트와 요금 감각까지 한 바퀴 돈다. 이름부터 정리하고 가자 검색하면 Cloud Functions, Cloud Functions 2세대, Cloud Run functions가 뒤섞여 나온다. 정리하면 이렇다. 구글은 Cloud Functions를 Cloud Run functions로 이름을 바꿨고 , 기존 2세대가 지금의 Cloud Run functions, 기존 1세대가 Cloud Run functions(1세대) 다. 핵심은 2세대 함수의 실체가 Cloud Run 서비스 라는 점이다. 그래서 콘솔에서도 2세대 함수는 Cloud Run 화면에서 관리하고, 1세대만 예전 함수 화면에 남아 있다. 명령어는 아직 둘 다 살아 있다. gcloud functions deploy 도 그대로 쓸 수 있고, 소스에서 바로 올리는 gcloud run deploy 방식도 공식 문서에 있다. 새로 시작한다면 2세대 를 쓰면 된다. 트리거 — 함수를 누가 부르나 함수를 만들 때 반드시 정해야 하는 것이 트리거다. HTTP 트리거 는 주소 하나가 생기고, 그 주소를 부르면 실행돼 응답을 돌려준다. 웹훅이나 간단한 API에 쓴다. 이벤트 트리거 는 주소가 없고, 정해 둔 사건이 일어나면 자동으로 실행된다. Pub/Sub 주제에 메시지가 들어오거나 버킷에 파일이 올라오는 것 같은 일이다. 이쪽은 부르는 쪽이 응답을 기다리지 않으므로 결과를 로그로 확인해야 한다. 최소 예제 — 파일 두 개면 된다 함수 배포에 필요한 것은 폴더 하나와 그 안의 파일 두 개다. 코드가 든 main.py , 그리고 쓸 라이브러리를 적은 requiremen...