Giới thiệu
Trong bài viết này, chúng ta sẽ tìm hiểu cách cấu hình Cloud Run Jobs và Cloud Scheduler để kích hoạt một công việc chụp ảnh màn hình trên Google Cloud Platform (GCP). Cloud Run cho phép bạn chạy các container trên nền tảng serverless, trong khi Cloud Scheduler giúp bạn lên lịch cho các công việc tự động. Chúng ta sẽ đi qua từng bước để tạo và quản lý các công việc này một cách hiệu quả.
Mục tiêu bài viết
- Hiểu cách cấu hình Cloud Run Jobs.
- Sử dụng Cloud Scheduler để tự động hóa các công việc.
- Thực hành qua ví dụ thực tế.
Bảng nội dung
- Giới thiệu về Cloud Run Jobs
- Cách tạo Cloud Run Jobs
- Thực thi và xem xét công việc
- Cập nhật Cloud Run Job
- Chụp ảnh màn hình với Cloud Run Jobs
- Thiết lập và cấu hình gcloud
- Tạo IAM Service Account
- Tạo Cloud Run Jobs
- Thực thi Cloud Run Job và xác minh
- Cập nhật Cloud Run Job
- Lên lịch công việc với Cloud Scheduler
- Thực hành tốt và những cạm bẫy phổ biến
- Kết luận và hướng dẫn thêm
Giới thiệu về Cloud Run Jobs
Cloud Run Jobs là một tính năng mạnh mẽ cho phép bạn chạy các tác vụ không cần liên tục trong môi trường serverless. Điều này rất hữu ích cho các công việc như xử lý dữ liệu, chạy các tác vụ định kỳ hoặc bất kỳ công việc nào mà bạn muốn tự động hóa.
Cách tạo Cloud Run Jobs
Bước 1: Tạo một Cloud Run Job cơ bản
- Truy cập vào Cloud Run trên GCP Console.
- Chọn "Create Job".
- Nhập các thông tin sau:
- Container Image URL:
stacksimplify/google-cloud-run-job-demo1:1.0.0
- Job Name:
google-cloud-run-job-demo1
- Region:
us-central1
- Number of Tasks:
10
- **REST ALL LEAVE TO DEFAULTS`
- Container Image URL:
- Nhấn nút "Create".
Bước 2: Xem xét và thực thi công việc
- Truy cập vào Cloud Run -> Jobs ->
google-cloud-run-job-demo1
. - Nhấn vào "Execute" để thực thi.
- Kiểm tra các tác vụ và log để xem kết quả.
Cập nhật Cloud Run Job
Để cập nhật một Cloud Run Job, bạn chỉ cần nhấn vào nút "EDIT" và thay đổi các tham số cần thiết. Đây là một quy trình rất đơn giản và nhanh chóng.
Chụp ảnh màn hình với Cloud Run Jobs
Cloud Run Jobs có thể được sử dụng để chụp ảnh màn hình từ các trang web. Điều này rất hữu ích cho việc kiểm tra giao diện người dùng hoặc để tạo tài liệu tự động.
Bước 3: Thiết lập gcloud
bash
# Cấu hình dự án
PROJECT_ID=gcp-zero-to-hero-468909
REGION=us-central1
gcloud config set core/project $PROJECT_ID
gcloud config set run/region $REGION
Bước 4: Tạo IAM Service Account
bash
# Tạo IAM Service Account để tải ảnh chụp màn hình lên Cloud Storage
gcloud iam service-accounts create screenshot-sa --display-name="Screenshot app service account"
# Cấp quyền cho service account truy cập Cloud Storage
gcloud projects add-iam-policy-binding $PROJECT_ID \
--role roles/storage.admin \
--member serviceAccount:screenshot-sa@$PROJECT_ID.iam.gserviceaccount.com
Tạo Cloud Run Jobs
bash
# Tạo Cloud Run Job mới
gcloud run jobs create screenshot-demo2 \
--image=stacksimplify/google-cloud-run-job-demo2-screenshot:1.0.0 \
--args="https://dev.to/latchudevops" \
--args="https://github.com/kohlidevops" \
--tasks=2 \
--task-timeout=5m \
--set-env-vars=BUCKET_NAME=screenshot-$PROJECT_ID \
--service-account=screenshot-sa@$PROJECT_ID.iam.gserviceaccount.com
Thực thi Cloud Run Job và xác minh
bash
# Thực thi Job
gcloud run jobs execute screenshot-demo2
# Xác minh thực thi
gcloud run jobs executions describe <EXECUTION_NAME>
Nếu bạn kiểm tra các bucket trong Cloud Storage, bạn sẽ thấy các ảnh chụp màn hình đã được lưu.
Cập nhật Cloud Run Job
bash
# Cập nhật Job
gcloud run jobs update screenshot-demo2 \
--args="https://github.com/kohlidevops/DevOpswithHelm/tree/main" \
--tasks=1
# Thực thi Job
gcloud run jobs execute screenshot-demo2
Lên lịch công việc với Cloud Scheduler
bash
# Kích hoạt dịch vụ Cloud Scheduler
gcloud services enable cloudscheduler.googleapis.com
# Thêm trigger lên lịch
- Truy cập Cloud Run -> Jobs -> screenshot-demo2 -> TRIGGERS
- Nhập tên: screenshot-demo2-scheduler-trigger
- Chọn vùng: us-central1
- Tần suất: */5 * * * * (Chạy mỗi 5 phút)
- Khung giờ: Chọn theo nhu cầu
- Nhấn CONTINUE
- Service Account: Tài khoản dịch vụ mặc định của Compute Engine
- Tạo mới
Thực hành tốt và những cạm bẫy phổ biến
- Thực hành tốt: Luôn kiểm tra logs để theo dõi trạng thái công việc của bạn.
- Cạm bẫy phổ biến: Đừng quên cấp quyền cho service account để nó có thể truy cập vào Cloud Storage.
Kết luận và hướng dẫn thêm
Trong bài viết này, bạn đã học cách cấu hình Cloud Run Jobs và Cloud Scheduler để tự động hóa các công việc chụp ảnh màn hình trên GCP. Hãy áp dụng những kiến thức này vào dự án của bạn và khám phá thêm các tính năng mạnh mẽ khác của GCP.
FAQ
Q: Cloud Run Jobs có thể chạy trên nhiều vùng không?
A: Có, bạn có thể chọn vùng khi tạo Cloud Run Job.
Q: Tôi có thể sử dụng Cloud Scheduler cho các công việc khác không?
A: Có, Cloud Scheduler rất linh hoạt và có thể được sử dụng cho nhiều loại công việc khác nhau.
Q: Làm thế nào để kiểm tra trạng thái của Job?
A: Bạn có thể kiểm tra logs và trạng thái của Job thông qua Cloud Console hoặc sử dụng lệnh gcloud.