Giới thiệu về Bộ công cụ vận hành của Cloud

1. Giới thiệu

Lần cập nhật gần đây nhất: ngày 28 tháng 7 năm 2023

Google Cloud Operations Suite là gì?

Google Cloud Operations Suite là một nền tảng giúp bạn giám sát, khắc phục sự cố và cải thiện hiệu suất ứng dụng trong môi trường Google Cloud. Các trụ cột chính của bộ công cụ vận hành trên đám mây bao gồm Giám sát đám mây, Cloud Logging và Theo dõi đám mây.

Hãy xem video này để biết thông tin tổng quan về Google Cloud Operations.

Sản phẩm bạn sẽ tạo ra

Trong lớp học lập trình này, bạn sẽ triển khai một API mẫu trên Google Cloud. Sau đó, bạn sẽ khám phá và định cấu hình nhiều tính năng trong Cloud Monitoring so với API.

Kiến thức bạn sẽ học được

  • Sử dụng Cloud Shell của Google Cloud để triển khai một ứng dụng mẫu lên Cloud Run.
  • Sử dụng các tính năng của Google Cloud Monitoring như Trang tổng quan, Cảnh báo, Kiểm tra thời gian hoạt động, Giám sát SLI/SLO và nhiều tính năng khác.

Bạn cần có

  • Một phiên bản Chrome gần đây (74 trở lên)
  • Tài khoản Google Cloud và dự án trên Google Cloud

2. Thiết lập và yêu cầu

Thiết lập môi trường theo tốc độ của riêng bạn

Nếu chưa có Tài khoản Google (Gmail hoặc Google Apps), bạn phải tạo một tài khoản. Đăng nhập vào bảng điều khiển Google Cloud Platform ( console.cloud.google.com) rồi tạo một dự án mới.

b35bf95b8bf3d5d8.png

a99b7ace416376c4.png

c20a9642aaa18d11.png

  • Tên dự án là tên hiển thị của những người tham gia dự án này. Đây là một chuỗi ký tự mà các API của Google không sử dụng. Bạn có thể cập nhật thông tin này bất cứ lúc nào.
  • Mã dự án phải là duy nhất trên tất cả các dự án trên Google Cloud và không thể thay đổi (bạn không thể thay đổi sau khi đã đặt). Cloud Console sẽ tự động tạo một chuỗi duy nhất; thường thì bạn không cần quan tâm đến chuỗi này. Trong hầu hết các lớp học lập trình, bạn sẽ cần tham chiếu đến Mã dự án (thường được xác định là PROJECT_ID). Nếu không thích mã nhận dạng được tạo, bạn có thể tạo một mã nhận dạng ngẫu nhiên khác. Hoặc bạn có thể thử tên người dùng của riêng mình để xem tên đó có dùng được hay không. Bạn không thể thay đổi thông tin này sau bước này và thông tin này sẽ giữ nguyên trong suốt thời gian diễn ra dự án.
  • Để bạn biết, có một giá trị thứ ba là Số dự án mà một số API sử dụng. Tìm hiểu thêm về cả 3 giá trị này trong tài liệu.

Thận trọng: Mã dự án phải là mã duy nhất trên toàn cầu và không ai khác có thể sử dụng mã này sau khi bạn chọn. Bạn là người dùng duy nhất của mã nhận dạng đó. Ngay cả khi dự án bị xoá, bạn cũng không bao giờ có thể sử dụng lại mã nhận dạng đó

  1. Tiếp theo, bạn cần bật tính năng thanh toán trong Cloud Console để sử dụng các tài nguyên/API trên đám mây. Việc thực hiện lớp học lập trình này sẽ không tốn nhiều chi phí, nếu có. Để tắt các tài nguyên nhằm tránh phát sinh phí thanh toán ngoài hướng dẫn này, bạn có thể xoá các tài nguyên đã tạo hoặc xoá toàn bộ dự án. Người dùng mới của Google Cloud đủ điều kiện tham gia chương trình Dùng thử miễn phí trị giá 300 USD.

Thiết lập Google Cloud Shell

Mặc dù bạn có thể vận hành Google Cloud và Google Cloud Trace từ xa trên máy tính xách tay, nhưng trong lớp học lập trình này, chúng ta sẽ sử dụng Google Cloud Shell, một môi trường dòng lệnh chạy trên đám mây.

Để kích hoạt Cloud Shell từ Bảng điều khiển Cloud, bạn chỉ cần nhấp vào Kích hoạt Cloud Shell (mất vài giây để cung cấp và kết nối với môi trường).

30c26f30d17b3d46.png

Nếu chưa từng khởi động Cloud Shell, bạn sẽ thấy một màn hình trung gian (bên dưới phần hiển thị đầu tiên) mô tả về Cloud Shell. Nếu vậy, hãy nhấp vào Tiếp tục (và bạn sẽ không bao giờ thấy màn hình này nữa). Sau đây là giao diện của màn hình xuất hiện một lần:

9c92662c6a846a5c.png

Quá trình cung cấp và kết nối với Cloud Shell chỉ mất vài giây.

9f0e51b578fecce5.png

Máy ảo này được trang bị tất cả các công cụ phát triển mà bạn cần. Nền tảng này cung cấp một thư mục chính có dung lượng 5 GB và chạy trong Google Cloud, giúp tăng cường đáng kể hiệu suất mạng và hoạt động xác thực. Bạn có thể thực hiện hầu hết, nếu không muốn nói là tất cả, công việc trong lớp học lập trình này chỉ bằng một trình duyệt hoặc Chromebook.

Sau khi kết nối với Cloud Shell, bạn sẽ thấy rằng mình đã được xác thực và dự án đã được đặt thành mã dự án của bạn.

Chạy lệnh sau trong Cloud Shell để xác nhận rằng bạn đã được xác thực:

Sau khi kết nối với Cloud Shell, bạn sẽ thấy rằng mình đã được xác thực và dự án đã được đặt thành PROJECT_ID.

gcloud auth list

Đầu ra của lệnh

Credentialed accounts:
 - <myaccount>@<mydomain>.com (active)
gcloud config list project

Đầu ra của lệnh

[core]
project = <PROJECT_ID>

Nếu vì lý do nào đó mà dự án chưa được thiết lập, bạn chỉ cần đưa ra lệnh sau:

gcloud config set project <PROJECT_ID>

Cloud Shell cũng đặt một số biến môi trường theo mặc định, có thể hữu ích khi bạn chạy các lệnh trong tương lai.

echo $GOOGLE_CLOUD_PROJECT

Đầu ra của lệnh

<PROJECT_ID>

Ứng dụng mẫu

Chúng tôi đã đặt mọi thứ bạn cần cho dự án này vào Git repo. Kho lưu trữ này chứa một số ứng dụng mẫu và bạn có thể chọn sử dụng bất kỳ ứng dụng nào trong số đó cho bài tập này.

Đường liên kết đến kho lưu trữ Git: https://github.com/rominirani/cloud-code-sample-repository

3. Triển khai ứng dụng API

Ứng dụng hoặc API mẫu này là gì?

Ứng dụng của chúng tôi là một ứng dụng API Kho hàng đơn giản, hiển thị một điểm cuối API REST với một số thao tác để liệt kê các mặt hàng trong kho và nhận số lượng hàng tồn kho của một mặt hàng cụ thể.

Sau khi triển khai API và giả sử API được lưu trữ tại https://<somehost>, chúng ta có thể truy cập vào các điểm cuối API như sau:

  • https://<somehost>/inventory

Thao tác này sẽ liệt kê tất cả các mặt hàng có số lượng hàng tồn kho hiện có.

  • https://<somehost>/inventory/{productid}

Thao tác này sẽ cung cấp một bản ghi duy nhất có productid và mức tồn kho hiện có của sản phẩm đó.

Dữ liệu phản hồi được trả về ở định dạng JSON.

Dữ liệu mẫu và yêu cầu/phản hồi API

Ứng dụng này không được hỗ trợ bởi cơ sở dữ liệu ở phần phụ trợ để quy trình được đơn giản. Tệp này chứa 3 mã sản phẩm mẫu và số lượng hàng tồn kho của các sản phẩm đó.

Mã sản phẩm

Số lượng hàng trong kho

I-1

10

I-2

20

I-3

30

Yêu cầu và phản hồi API mẫu được trình bày bên dưới:

Yêu cầu API

Phản hồi của API

https://<somehost>/inventory

[ { "I-1": 10, "I-2": 20, "I-3": 30 }]

https://<somehost>/inventory/I-1

{ "productid": "I-1", "qty": 10}

https://<somehost>/inventory/I-2

{ "productid": "I-2", "qty": 20}

https://<somehost>/inventory/I-200

{ "productid": I-200, "qty": -1}

Sao chép Kho lưu trữ

Mặc dù có thể vận hành Google Cloud từ xa trên máy tính xách tay, nhưng trong lớp học lập trình này, bạn sẽ sử dụng Google Cloud Shell, một môi trường dòng lệnh chạy trên Cloud.

Trên Bảng điều khiển GCP, hãy nhấp vào biểu tượng Cloud Shell trên thanh công cụ ở trên cùng bên phải:

bce75f34b2c53987.png

Quá trình này chỉ mất vài phút để cung cấp và kết nối với môi trường. Khi quá trình này kết thúc, bạn sẽ thấy như sau:

f6ef2b5f13479f3a.png

Máy ảo này được trang bị tất cả các công cụ phát triển mà bạn cần. Nó cung cấp một thư mục chính có dung lượng 5 GB và chạy trên Google Cloud, giúp tăng cường đáng kể hiệu suất mạng và hoạt động xác thực. Bạn chỉ cần một trình duyệt là có thể thực hiện mọi thao tác trong phòng thí nghiệm này.

Thiết lập gcloud

Trong Cloud Shell, hãy đặt mã dự án rồi lưu mã dự án đó dưới dạng biến PROJECT_ID.

PROJECT_ID=[YOUR-PROJECT-ID]
gcloud config set project $PROJECT_ID

Bây giờ, hãy thực thi lệnh sau:

$ git clone https://github.com/rominirani/cloud-code-sample-repository.git 

Thao tác này sẽ tạo một thư mục có tên là cloud-code-sample-repository trong thư mục này.

(Không bắt buộc) Chạy ứng dụng trên Cloud Shell

Bạn có thể chạy ứng dụng cục bộ bằng cách làm theo các bước sau:

  1. Trong dòng lệnh, hãy chuyển đến phiên bản Python của API bằng lệnh sau:
$ cd cloud-code-sample-repository
$ cd python-flask-api
  1. Trong cửa sổ dòng lệnh, hãy cung cấp lệnh sau (Tại thời điểm viết, Cloud Shell đã cài đặt Python 3.9.x và chúng ta sẽ sử dụng phiên bản mặc định. Nếu dự định chạy ứng dụng này trên máy tính xách tay, bạn có thể sử dụng Python 3.8 trở lên:
$ python app.py
  1. Bạn có thể chạy lệnh sau để khởi động Máy chủ Python cục bộ.

26570f586acaeacf.png

  1. Thao tác này sẽ khởi động một máy chủ trên cổng 8080 và bạn có thể kiểm thử cục bộ thông qua tính năng Xem trước trên web của Cloud Shell. Nhấp vào nút Xem trước trên web như minh hoạ bên dưới:

675d9b3097a6209c.png

Nhấp vào Xem trước trên cổng 8080.

  1. Thao tác này sẽ mở một cửa sổ trình duyệt. Bạn sẽ thấy Lỗi 404 và điều đó không sao cả. Sửa đổi URL và thay đổi để chỉ có /inventory sau tên máy chủ.

Ví dụ: trên máy của tôi, đường dẫn này có dạng như sau:

https://8080-cs-557561579860-default.cs-asia-southeast1-yelo.cloudshell.dev/inventory

Thao tác này sẽ hiển thị danh sách các mặt hàng trong kho như đã giải thích trước đó:

ef6afb0184c58870.png

  1. Bây giờ, bạn có thể dừng máy chủ bằng cách chuyển đến Terminal rồi nhấn tổ hợp phím Ctrl-C

Triển khai ứng dụng

Giờ đây, chúng ta sẽ triển khai ứng dụng API này lên Cloud Run. Quy trình này liên quan đến việc sử dụng ứng dụng dòng lệnh glcoud để chạy lệnh triển khai mã đến Cloud Run.

Trên cửa sổ dòng lệnh, hãy đưa ra lệnh gcloud sau đây:

$ gcloud run deploy --source .

Thao tác này sẽ đặt ra cho bạn nhiều câu hỏi (nếu được yêu cầu uỷ quyền, vui lòng tiếp tục) và một số điểm được đề cập dưới đây. Bạn có thể nhận được hoặc không nhận được tất cả các câu hỏi, tuỳ thuộc vào cấu hình và việc bạn đã bật các API cụ thể trong dự án Google Cloud hay chưa.

  1. Tên dịch vụ (python-flask-api): Bạn có thể dùng tên mặc định này hoặc chọn tên khác, chẳng hạn như my-inventory-api
  2. API [run.googleapis.com] chưa được bật trên dự án [project-number]. Bạn có muốn bật và thử lại không (quá trình này sẽ mất vài phút)? (y/N)? Có
  3. Vui lòng chỉ định một khu vực: Chọn một khu vực bạn muốn bằng cách nhập một số.
  4. API [artifactregistry.googleapis.com] chưa được bật trên dự án [project-number]. Bạn có muốn bật và thử lại không (quá trình này sẽ mất vài phút)? (y/N)? Có
  5. Việc triển khai từ nguồn yêu cầu phải có một kho lưu trữ Docker của Artifact Registry để lưu trữ các vùng chứa đã tạo. Một kho lưu trữ có tên [cloud-run-source-deploy] trong khu vực [us-west1] sẽ được tạo.

Bạn có muốn tiếp tục không (Y/n)? Có

  1. Cho phép các lệnh gọi chưa xác thực đến [my-inventory-api] (y/N)? Có

Cuối cùng, thao tác này sẽ bắt đầu quy trình lấy mã nguồn của bạn, đưa mã nguồn vào vùng chứa, đẩy mã nguồn đó vào Artifact Registry rồi triển khai dịch vụ Cloud Run + bản sửa đổi. Bạn nên kiên nhẫn trong quá trình này (có thể mất 3-4 phút) và bạn sẽ thấy quá trình hoàn tất với URL dịch vụ xuất hiện.

Sau đây là ví dụ về một lần chạy:

7516696ea5b3004b.png

Kiểm thử ứng dụng

Giờ đây, sau khi triển khai ứng dụng lên Cloud Run, bạn có thể truy cập vào ứng dụng API như sau:

  1. Ghi lại URL dịch vụ ở bước trước. Ví dụ: trên chế độ thiết lập của tôi, tên này xuất hiện là https://my-inventory-api-bt2r5243dq-uw.a.run.app. Hãy gọi đây là <SERVICE_URL>.
  2. Mở một trình duyệt rồi truy cập vào 3 URL sau cho các điểm cuối API:
  3. <SERVICE_URL>/inventory
  4. <SERVICE_URL>/inventory/I-1
  5. <SERVICE_URL>/inventory/I-100

Yêu cầu này phải tuân theo quy cách mà chúng tôi đã cung cấp trong một phần trước đó, kèm theo Yêu cầu và Phản hồi API mẫu.

Lấy thông tin chi tiết về dịch vụ từ Cloud Run

Chúng tôi đã triển khai Dịch vụ API của mình cho Cloud Run, một môi trường điện toán không máy chủ. Chúng ta có thể truy cập vào dịch vụ Cloud Run thông qua bảng điều khiển Cloud bất cứ lúc nào.

Trong trình đơn chính, hãy chuyển đến Cloud Run. Thao tác này sẽ hiển thị danh sách các dịch vụ mà bạn đang chạy trong Cloud Run. Bạn sẽ thấy dịch vụ mà mình vừa triển khai. Tuỳ thuộc vào tên mà bạn đã chọn, bạn sẽ thấy nội dung tương tự như sau:

10d2c363241d789c.png

Nhấp vào Tên dịch vụ để xem thông tin chi tiết. Sau đây là thông tin chi tiết về mẫu:

1ec2c9e45ff1a2db.png

Hãy chú ý đến URL. Đây chỉ là URL dịch vụ mà bạn có thể nhập vào trình duyệt và truy cập vào API Kho hàng mà chúng ta vừa triển khai. Bạn có thể xem Chỉ số và các thông tin chi tiết khác.

Hãy bắt đầu sử dụng Google Cloud Operations Suite ngay bây giờ.

4. Thiết lập trang tổng quan

Một trong những tính năng thuận tiện mà Cloud Monitoring cung cấp là trang tổng quan có sẵn (OOTB) trên nhiều tài nguyên trong Google Cloud. Điều này giúp quá trình thiết lập ban đầu của Trang tổng quan bằng các chỉ số tiêu chuẩn diễn ra nhanh chóng và thuận tiện.

Hãy xem cách thực hiện việc đó cho Dịch vụ API mà chúng ta vừa triển khai cho Cloud Run.

Trang tổng quan tuỳ chỉnh cho Dịch vụ của chúng tôi

Vì chúng ta đã triển khai dịch vụ API của mình cho Cloud Run, hãy xem cách thiết lập Trang tổng quan có thể giúp trực quan hoá nhiều chỉ số, trong đó có độ trễ của dịch vụ.

Trước tiên, trong bảng điều khiển, hãy truy cập vào Giám sát → Tổng quan như minh hoạ dưới đây:

c51a5dda4ab72bbf.png

Trang Tổng quan cho thấy nhiều nội dung mà bạn đã định cấu hình trong tính năng Giám sát, chẳng hạn như Trang tổng quan, Cảnh báo, Kiểm tra thời gian hoạt động, v.v.

2758f61f1e7f1dca.png

Hiện tại, hãy nhấp vào Trang tổng quan trong trình đơn chính bên. Thao tác này sẽ đưa chúng ta đến màn hình sau:

c9110b6f065100da.png

Nhấp vào THƯ VIỆN MẪU . Thao tác này sẽ hiển thị danh sách các trang tổng quan có sẵn (OOTB) trong Google Cloud trên nhiều tài nguyên. Cụ thể, hãy di chuyển xuống danh sách rồi chọn Google Cloud Run như minh hoạ bên dưới.

ddac4038d4fa91ae.png

Thao tác này sẽ hiển thị danh sách các trang tổng quan tiêu chuẩn có sẵn cho Google Cloud Run. Chúng tôi quan tâm đến điều đó vì đã triển khai dịch vụ của mình trên Cloud Run.

Bạn sẽ thấy một trang tổng quan cho tính năng Giám sát Cloud Run. Nhấp vào đường liên kết XEM TRƯỚC để xem danh sách các biểu đồ tiêu chuẩn (chỉ số) có sẵn cho tính năng Giám sát Cloud Run. Bạn chỉ cần nhấp vào NHẬP TRANG TỔNG QUAN MẪU để nhập tất cả biểu đồ này vào một trang tổng quan tuỳ chỉnh. Thao tác này sẽ hiển thị màn hình Trang tổng quan với tên được điền sẵn giống như bên dưới:

531cb8434b18193a.png

Bạn có thể quay lại bằng cách nhấp vào Mũi tên trái ở bên trái tên Trang tổng quan, ngay ở trên cùng bên trái. Thao tác này sẽ dẫn đến danh sách Trang tổng quan. Trong danh sách này, bạn sẽ thấy Trang tổng quan mới mà bạn vừa tạo.

Nhấp vào đường liên kết Trang tổng quan đó để theo dõi nhiều chỉ số có sẵn. Các chỉ số này bao gồm Độ trễ, Số yêu cầu, Chỉ số vùng chứa và nhiều chỉ số khác.

Bạn cũng có thể chọn đánh dấu bất kỳ trang Tổng quan nào là trang ưa thích bằng cách chọn biểu tượng dấu sao như minh hoạ bên dưới:

fc993d1a17415550.png

Thao tác này sẽ thêm Trang tổng quan vào màn hình Tổng quan của phần Giám sát và trở thành một cách dễ dàng để chuyển đến các trang tổng quan thường dùng.

2e8f66e2652c55c5.png

1e1dffb5239ab110.png

Tuyệt vời! Bạn vừa thêm một Trang tổng quan tuỳ chỉnh để giám sát các dịch vụ Cloud Run. Bạn làm rất tốt!

5. Kiểm tra thời gian hoạt động

Trong phần này, chúng ta sẽ thiết lập một quy trình kiểm tra thời gian hoạt động cho Dịch vụ API mà chúng ta đã triển khai. Tính năng kiểm tra thời gian hoạt động công khai có thể gửi yêu cầu từ nhiều vị trí trên khắp thế giới đến các URL có sẵn công khai hoặc tài nguyên Google Cloud để xem tài nguyên có phản hồi hay không.

Trong trường hợp này, tài nguyên sẽ là Dịch vụ API mà chúng ta đã triển khai cho Cloud Run. URL này sẽ là một điểm cuối cụ thể mà Dịch vụ API hiển thị để cho biết trạng thái của dịch vụ.

Trong mã dịch vụ API mẫu, chúng tôi đã hiển thị một điểm cuối /healthy trả về giá trị chuỗi "All Izz Well". Vì vậy, tất cả những gì chúng ta cần làm là xác định một quy trình kiểm tra thời gian hoạt động truy cập vào một URL như https://<SERVICE_URL>/healthy và kiểm tra xem chuỗi "All Izz Well" có được trả về hay không.

Tạo kênh thông báo

Trước khi tạo chế độ kiểm tra thời gian hoạt động, bạn cần định cấu hình các kênh thông báo trước. Kênh thông báo là phương tiện mà bạn sẽ nhận được cảnh báo nếu có sự cố/vấn đề xảy ra với bất kỳ tài nguyên nào mà chúng tôi giám sát. Ví dụ về kênh thông báo là Email. Bạn sẽ nhận được email trong trường hợp có Cảnh báo, v.v.

Hiện tại, chúng ta sẽ định cấu hình một Kênh thông báo qua email và định cấu hình kênh đó bằng địa chỉ email của mình để có thể nhận được thông báo trong trường hợp có bất kỳ cảnh báo nào mà hệ thống của chúng ta sẽ đưa ra và chúng ta sẽ định cấu hình.

Để tạo một Kênh thông báo, hãy làm theo các bước sau:

Chuyển đến Giám sát → Cảnh báo trong trình đơn chính của Bảng điều khiển Google Cloud, như minh hoạ dưới đây:

9f87859064c63b63.png

Thao tác này sẽ hiển thị một trang có phần Cảnh báo, Chính sách và các phần khác. Hiện tại, bạn sẽ thấy một đường liên kết ở trên cùng có tiêu đề CHỈNH SỬA KÊNH THÔNG BÁO. Nhấp vào đó.

5ab54f42e6f7b99.png

Thao tác này sẽ hiển thị danh sách các Kênh thông báo như minh hoạ dưới đây:

cd89b1ca9e1de87c.png

Tìm mục Email rồi nhấp vào THÊM MỚI cho hàng đó. Thao tác này sẽ hiển thị thông tin chi tiết về Cấu hình email như minh hoạ bên dưới:

d6ed98ffd0427fa3.png

Nhập địa chỉ email và Tên hiển thị như minh hoạ bên dưới. Nhấp vào LƯU.

Thao tác này sẽ hoàn tất quá trình tạo Kênh thông báo qua email. Hãy tiếp tục và định cấu hình chế độ kiểm tra thời gian hoạt động ngay bây giờ.

Tạo một chế độ kiểm tra thời gian hoạt động

Chuyển đến Giám sát → Kiểm tra thời gian hoạt động trong trình đơn chính của Google Cloud Console. Ở trên cùng, bạn sẽ thấy đường liên kết TẠO KIỂM TRA THỜI GIAN HOẠT ĐỘNG. Nhấp vào đó.

484541aec65e605e.png

Thao tác này sẽ mở ra một loạt các bước mà bạn cần hoàn tất để định cấu hình chế độ kiểm tra thời gian hoạt động.

Bước đầu tiên là thiết lập thông tin chi tiết về Mục tiêu, tức là thông tin về dịch vụ Cloud Run mà chúng ta đã triển khai. Sau đây là biểu mẫu đã điền thông tin:

4e2bb9fe022320f7.png

Bạn có thể chọn các giá trị khác nhau như sau:

  • Giao thức : HTTPS
  • Loại tài nguyên : Chọn Dịch vụ Cloud Run. Lưu ý những tài nguyên khác mà công cụ này hỗ trợ và bạn cũng có thể thiết lập các chế độ kiểm tra Thời gian hoạt động trên những tài nguyên đó.
  • Dịch vụ Cloud Run : Chọn my-inventory-api hoặc tên cụ thể mà bạn có cho dịch vụ Cloud Run.
  • Đường dẫn là /healthy, vì chúng ta đang trả về chuỗi "All Izz Well" và chúng ta muốn kiểm tra chuỗi đó.

Nhấp vào TIẾP TỤC để chuyển sang bước tiếp theo. Bước tiếp theo là bước Xác thực phản hồi như minh hoạ dưới đây:

a6011ac2ab3e0f10.png

Bạn có thể thấy rằng chúng ta đang bật chế độ kiểm tra "So khớp nội dung" rồi thiết lập để phản hồi do điểm cuối /healthy trả về sẽ là "All Izz Well". Nhấp vào TIẾP TỤC để chuyển sang bước tiếp theo. Tại đây, chúng ta sẽ thiết lập Cảnh báo và kênh thông báo mà chúng ta nên nhận cảnh báo nếu quá trình kiểm tra Thời gian hoạt động không thành công.

d9738670efcb999f.png

Ở bước này, hãy đặt tên cho Cảnh báo. Tôi đã chọn tên là Inventory API Uptime Check failure (Kiểm tra thời gian hoạt động của Inventory API không thành công), nhưng bạn có thể chọn tên của riêng mình. Điều quan trọng ở đây là bạn phải chọn đúng kênh thông báo trong danh sách mà bạn đã định cấu hình trước đó.

Nhấp vào KIỂM TRA để chuyển đến bước cuối cùng là kiểm tra Uptime check mà chúng ta đã thiết lập.

Trong bước cuối cùng này, hãy đặt tên cho chế độ kiểm tra Thời gian hoạt động (ví dụ: Kiểm tra thời gian hoạt động của API Kho hàng). Sau đó, bạn cũng có thể kiểm thử để xem chế độ kiểm tra đã được định cấu hình chính xác hay chưa. Nhấp vào nút KIỂM TRA để thực hiện việc này.

80375bfab97fc313.png

Hãy hoàn tất quy trình này (nhấp vào nút TẠO ở bên trái). Google Cloud sẽ hướng dẫn các lệnh kiểm tra thời gian hoạt động được định cấu hình trên nhiều khu vực để ping URL và các phản hồi này sẽ được thu thập. Truy cập vào mục Giám sát → Kiểm tra thời gian hoạt động sau vài phút. Lý tưởng nhất là bạn sẽ thấy tất cả các tín hiệu màu xanh lục cho biết rằng URL có thể truy cập được từ các lệnh kiểm tra khác nhau.

df17555ddbee1127.png

Nếu bất kỳ lệnh kiểm tra nào không thành công trong một khoảng thời gian (có thể định cấu hình), bạn sẽ nhận được Thông báo cảnh báo trên kênh email mà chúng tôi đã định cấu hình.

Đến đây là kết thúc phần thiết lập một chế độ kiểm tra Thời gian hoạt động. Bạn làm rất tốt!

6. Trình khám phá chỉ số

Cloud Monitoring cung cấp hàng nghìn chỉ số tiêu chuẩn từ nhiều sản phẩm của Google Cloud. Bạn có thể khám phá, truy vấn, chuyển đổi thành biểu đồ, thêm vào Trang tổng quan, tạo cảnh báo và làm nhiều việc khác với các chỉ số này.

Mục tiêu của chúng ta trong phần này là:

  1. Tìm hiểu cách bạn có thể xem xét nhiều chỉ số, sau đó chúng ta sẽ xem xét một chỉ số cụ thể (độ trễ) cho dịch vụ API của mình.
  2. Chuyển chỉ số đó thành Biểu đồ và Trang tổng quan tuỳ chỉnh để chúng ta có thể sử dụng nhằm trực quan hoá chỉ số đó bất cứ lúc nào.

Khám phá chỉ số độ trễ cho dịch vụ API Kho hàng

Chuyển đến Giám sát → Trình khám phá chỉ số trong trình đơn chính của Bảng điều khiển Google Cloud. Thao tác này sẽ đưa bạn đến màn hình Trình khám phá chỉ số. Nhấp vào CHỌN MỘT CHỈ SỐ. Giờ đây, bạn có thể chuyển đến một số tài nguyên đang hoạt động có chỉ số được tạo.

Vì chúng ta đang xử lý các dịch vụ Cloud Run, hãy nhấp vào Cloud Run Revision (Bản sửa đổi Cloud Run), sau đó nhấp vào danh mục và chỉ số cụ thể có tiêu đề Độ trễ yêu cầu như minh hoạ bên dưới:

7609d8156c8f1384.png

Nhấp vào Áp dụng. Thao tác này sẽ hiển thị Độ trễ của yêu cầu trong biểu đồ. Bạn có thể thay đổi Loại tiện ích thành Biểu đồ dạng đường trong phần Cài đặt hiển thị ở bên phải như minh hoạ bên dưới:

46086ac0a8eaf3d7.png

Thao tác này sẽ hiển thị Biểu đồ độ trễ như minh hoạ dưới đây:

ad97f749eeacaa95.png

Tạo biểu đồ và trang tổng quan tuỳ chỉnh

Hãy lưu Biểu đồ này. Nhấp vào Lưu biểu đồ và sử dụng thông tin chi tiết như minh hoạ bên dưới:

35d1788d5f0cb3c4.png

Xin lưu ý rằng chúng ta đang tạo một trang tổng quan mới , thay vì lưu trang tổng quan đó trong một trang tổng quan hiện có. Nhấp vào nút LƯU. Thao tác này sẽ thêm trang tổng quan mới tạo vào danh sách trang tổng quan của chúng ta như minh hoạ bên dưới:

c9cdcd63d5823abd.png

Nhấp vào trang tổng quan cụ thể mà chúng tôi đã tạo để xem thông tin chi tiết.

27354d8310d8a2d7.png

Như vậy là bạn đã hoàn tất phần tìm hiểu về nhiều chỉ số thông qua Metrics Explorer và cách tạo trang tổng quan tuỳ chỉnh.

7. Cloud Logging

Trong phần này, chúng ta sẽ khám phá Cloud Logging. Cloud Logging có giao diện Trình khám phá nhật ký giúp bạn điều hướng và tìm hiểu sâu về nhật ký do nhiều dịch vụ của Google và các ứng dụng của riêng bạn tạo ra.

Trong phần này, chúng ta sẽ tìm hiểu về Trình khám phá nhật ký và mô phỏng một vài thông báo nhật ký mà sau đó chúng ta có thể tìm kiếm và chuyển đổi thành chỉ số thông qua một tính năng có tên là Chỉ số dựa trên nhật ký.

Trình khám phá nhật ký

Bạn có thể truy cập vào Logs Explorer thông qua Logging → Logs Explorer (Ghi nhật ký → Logs Explorer) trên bảng điều khiển chính của Google Cloud như minh hoạ bên dưới:

df05f5b33fd5695a.png

Thao tác này sẽ hiển thị một giao diện nhật ký, trong đó bạn có thể chọn/huỷ chọn cụ thể nhiều Tài nguyên (Dự án, Tài nguyên Google Cloud, tên dịch vụ, v.v.) cùng với Cấp nhật ký để lọc thông điệp nhật ký khi cần.

e7fa15bcf73f3805.png

Ở trên là danh sách nhật ký cho Bản sửa đổi Cloud Run, tức là các dịch vụ Cloud Run mà chúng tôi đã triển khai. Bạn sẽ thấy một số yêu cầu là các lượt kiểm tra Thời gian hoạt động đang truy cập vào điểm cuối /lanhmanh mà chúng ta đã định cấu hình.

Tìm cảnh báo

Mô phỏng một vài yêu cầu không hợp lệ đối với Dịch vụ kho hàng bằng cách cung cấp mã sản phẩm không phải là I-1, I-2 và I-3. Ví dụ: yêu cầu không chính xác là:

https://<SERVICE_URL>/inventory/I-999

Giờ đây, chúng ta sẽ tìm kiếm tất cả các CẢNH BÁO do API của chúng ta tạo ra, khi một Mã sản phẩm không chính xác được cung cấp trong Truy vấn.

Trong Hộp truy vấn, hãy chèn các tham số truy vấn sau:

resource.type="cloud_run_revision"

textPayload =~ "Received inventory request for incorrect productid"

Đoạn mã sẽ trông giống như sau:

b3ee512a0c9c5c7b.png

Nhấp vào Chạy truy vấn. Sau đó, bạn sẽ thấy tất cả các yêu cầu đã nhận được và yêu cầu nào gặp phải vấn đề này.

5fdbd7c23bf4694f.png

Chỉ số dựa trên nhật ký

Hãy tạo một Chỉ số nhật ký tuỳ chỉnh để theo dõi những lỗi này. Chúng tôi muốn biết liệu có một số lượng đáng kể các lệnh gọi xảy ra với mã sản phẩm không chính xác hay không.

Để chuyển đổi nội dung trên thành một chỉ số lỗi, hãy nhấp vào nút Tạo chỉ số mà bạn thấy trong Trình khám phá nhật ký.

fa9a5e04922aa412.png

Thao tác này sẽ mở biểu mẫu để tạo định nghĩa chỉ số. Chọn Chỉ số bộ đếm và nhập thông tin chi tiết cho Tên chỉ số (inventory_lookup_errors) và Nội dung mô tả như minh hoạ bên dưới, rồi nhấp vào Tạo chỉ số.

70b5719b472d4d02.png

Thao tác này sẽ tạo chỉ số bộ đếm và bạn sẽ thấy một thông báo như minh hoạ bên dưới:

ab9058028185e4d5.png

Truy cập vào Logging → Logs-based Metrics (Ghi nhật ký → Chỉ số dựa trên nhật ký) trong trình đơn chính. Bạn sẽ thấy chỉ số tuỳ chỉnh mà chúng ta đã xác định trong danh sách Chỉ số do người dùng xác định như bên dưới:

7d186e90559cf8e1.png

Ở cuối mục này, bạn sẽ thấy ba dấu chấm dọc, hãy nhấp vào đó để xem các thao tác mà bạn có thể thực hiện trên chỉ số tuỳ chỉnh này. Danh sách này sẽ tương tự như danh sách mà bạn đang thấy bên dưới. Nhấp vào lựa chọn Xem trong Trình khám phá chỉ số.

7586f0789a0bdb41.png

Thao tác này sẽ đưa chúng ta đến Metrics Explorer mà chúng ta đã tìm hiểu ở phần trước, chỉ khác là giờ đây, Metrics Explorer đã được điền sẵn cho chúng ta.

7ee7403d0639ce25.png

Nhấp vào Lưu biểu đồ. Sử dụng các giá trị sau cho các lựa chọn Lưu biểu đồ:

9009da45f76eb4c5.png

Thao tác này sẽ tạo một Trang tổng quan mới để bạn có thể xem các lỗi Tìm kiếm kho hàng và trang tổng quan này sẽ xuất hiện trong danh sách Trang tổng quan.

201ed66957cb64f9.png

Tuyệt vời! Giờ đây, bạn đã tạo một chỉ số tuỳ chỉnh từ nhật ký, chuyển đổi chỉ số đó thành một biểu đồ có trong trang tổng quan tuỳ chỉnh. Điều này sẽ giúp chúng tôi theo dõi số lượng lệnh gọi đang sử dụng mã sản phẩm không chính xác.

8. Chính sách cảnh báo

Trong phần này, chúng ta sẽ sử dụng chỉ số tuỳ chỉnh mà chúng ta đã tạo và theo dõi dữ liệu của chỉ số đó cho một ngưỡng, tức là nếu số lượng lỗi vượt quá một ngưỡng nhất định, chúng ta sẽ đưa ra cảnh báo. Nói cách khác, chúng ta sẽ thiết lập một chính sách cảnh báo.

Tạo chính sách cảnh báo

Hãy chuyển đến Trang tổng quan về tìm kiếm khoảng không quảng cáo. Thao tác này sẽ hiển thị biểu đồ mà chúng ta đã tạo để ghi chú Lỗi tra cứu khoảng không quảng cáo như minh hoạ bên dưới:

3591a1dd91a8b9fd.png

Thao tác này sẽ hiển thị dữ liệu chỉ số hiện tại. Trước tiên, hãy chỉnh sửa chỉ số như minh hoạ bên dưới (Nhấp vào nút Chỉnh sửa):

5e76fc20d8387984.png

Thao tác này sẽ hiển thị thông tin chi tiết về chỉ số. Chúng ta sẽ chuyển đổi biểu đồ từ việc cho chúng ta biết tỷ lệ lỗi thành tổng số lỗi. Trường cần thay đổi được trình bày dưới đây:

65ccd1eaca607831.png

Nhấp vào ÁP DỤNG ở góc trên cùng bên phải. Lúc này, chúng ta sẽ quay lại màn hình Chỉ số nhưng có thể xem tổng số lỗi trong khoảng thời gian căn chỉnh so với tỷ lệ lỗi.

Chúng ta sẽ tạo một Chính sách cảnh báo có thể thông báo cho chúng ta trong trường hợp số lượng lỗi vượt quá một ngưỡng nhất định. Nhấp vào biểu tượng 3 dấu chấm ở góc trên cùng bên phải của biểu đồ, rồi nhấp vào Chuyển đổi thành biểu đồ cảnh báo trong danh sách các lựa chọn như minh hoạ ở trên.

cc9eec48b9bfbc92.png

Bạn sẽ thấy một màn hình như minh hoạ dưới đây:

6202ad1e88679a78.png

Nhấp vào Tiếp theo , thao tác này sẽ hiển thị một giá trị Ngưỡng mà chúng ta có thể đặt. Ngưỡng mẫu mà chúng ta đã lấy ở đây là 5 , nhưng bạn có thể chọn theo ý muốn.

734f809cc802ab78.png

Nhấp vào TIẾP THEO để mở biểu mẫu Dịch vụ thông báo

f2d84fb85c2520cb.png

Chúng ta đã chọn Kênh thông báo làm kênh Email mà chúng ta đã tạo trước đó. Bạn có thể điền các thông tin khác như Tài liệu (sẽ được cung cấp trong Cảnh báo được đưa ra). Nhấp vào TIẾP THEO để xem thông tin tóm tắt và hoàn tất quy trình.

c670b29da70c4655.png

Sau khi bạn tạo Chính sách cảnh báo này, chính sách đó sẽ xuất hiện trong danh sách Chính sách cảnh báo như minh hoạ bên dưới. Bạn có thể truy cập vào danh sách Chính sách cảnh báo bằng cách chuyển đến Giám sát → Cảnh báo. Tìm phần Chính sách trên trang để xem danh sách các chính sách mà chúng tôi đã định cấu hình cho đến nay.

154da627959c54f3.png

Tuyệt vời! Giờ đây, bạn đã định cấu hình một Chính sách cảnh báo tuỳ chỉnh để thông báo cho bạn trong trường hợp tỷ lệ lỗi tăng lên khi tra cứu API Kho hàng.

9. Giám sát dịch vụ (Không bắt buộc)

Trong phần này, chúng ta sẽ thiết lập SLI/SLO cho các dịch vụ của mình theo nguyên tắc Kỹ thuật đảm bảo độ tin cậy của trang web (SRE). Bạn sẽ nhận thấy rằng Cloud Monitoring giúp bạn dễ dàng hơn bằng cách tự động phát hiện các dịch vụ mà bạn đã triển khai trong Cloud Run và có thể tự động tính toán các chỉ số SLI chính như Tính khả dụng, Độ trễ cho bạn cùng với các phép tính Ngân sách lỗi.

Hãy tiến hành thiết lập SLO về độ trễ cho Dịch vụ API của chúng ta.

Thiết lập SLO về độ trễ cho Dịch vụ khoảng không quảng cáo

Nhấp vào Giám sát → Dịch vụ trong trình đơn chính của Bảng điều khiển đám mây. Thao tác này sẽ hiển thị danh sách các dịch vụ đã được định cấu hình cho tính năng Giám sát dịch vụ.

Hiện tại, chúng tôi chưa thiết lập bất kỳ dịch vụ nào để Giám sát SLI/SLO, nên danh sách này sẽ trống. Nhấp vào đường liên kết DEFINE SERVICE (XÁC ĐỊNH DỊCH VỤ) ở trên cùng để xác định / nhận dạng dịch vụ trước.

42d14515a481213.png

Thao tác này sẽ tự động phát hiện các dịch vụ là đối tượng được Giám sát SLO. Nó có thể phát hiện các dịch vụ Cloud Run, do đó, dịch vụ API Kho hàng được triển khai cho Cloud Run sẽ xuất hiện trong danh sách.

522aaba719f85c54.png

Tên hiển thị mà bạn thấy có thể khác và sẽ tuỳ thuộc vào tên bạn chọn tại thời điểm triển khai dịch vụ cho Cloud Run. Nhấp vào nút GỬI. Thao tác này sẽ mở màn hình như minh hoạ dưới đây:

eca08010ab6858a9.png

Bạn có thể nhấp vào TẠO SLO. Giờ đây, bạn có thể chọn trong số các chỉ số hiệu suất được tính toán tự động cho bạn.

556e49b10d22e5ac.png

Chúng ta sẽ chọn SLI về độ trễ làm điểm bắt đầu. Nhấp vào TIẾP TỤC. Tiếp theo, bạn sẽ thấy một màn hình cho biết hiệu suất hiện tại của dịch vụ này và độ trễ thông thường.

a9cc6f6778c13b52.png

Chúng ta nhập giá trị cho Ngưỡng, tức là 300 mili giây, đây là giá trị mà chúng ta muốn đạt được. Bạn có thể chọn một giá trị khác nếu muốn, nhưng hãy lưu ý rằng giá trị này sẽ ảnh hưởng đến ngân sách lỗi mà bạn xác định cho phù hợp. Nhấp vào TIẾP TỤC.

Giờ đây, chúng ta sẽ đặt SLO (Cửa sổ đo lường và mục tiêu) như minh hoạ bên dưới:

e1fc336d4191c08e.png

Điều này có nghĩa là chúng ta đang chọn Cửa sổ đo lường là cửa sổ thuộc loại Lũy tiến và đo lường trong 7 ngày. Tương tự, đối với mục tiêu, chúng ta đã chọn mục tiêu là 90%. Chúng tôi muốn nói rằng 90% yêu cầu đối với dịch vụ API phải hoàn tất trong vòng 300 mili giây và điều này phải được đo lường trong 7 ngày.

Nhấp vào Tiếp tục. Thao tác này sẽ mở màn hình tóm tắt. Bạn có thể xác nhận bằng cách nhấp vào nút CẬP NHẬT SLO.

f2540173d9f4a4b7.png

Thao tác này sẽ lưu định nghĩa SLO và Hạn mức lỗi sẽ được tính toán tự động cho bạn.

76393df0e189104.png

Bạn có thể thử một số cách sau:

  1. Thực hiện API thông qua nhiều lệnh gọi và xem hiệu suất của dịch vụ cũng như cách dịch vụ ảnh hưởng đến Ngân sách lỗi còn lại.
  2. Sửa đổi mã nguồn để thêm một số độ trễ (sleep) bổ sung một cách ngẫu nhiên trong một số lệnh gọi. Điều này sẽ làm tăng độ trễ cho một số lệnh gọi và ảnh hưởng tiêu cực đến Ngân sách lỗi.

10. Xin chúc mừng

Chúc mừng bạn đã triển khai thành công một ứng dụng mẫu lên Google Cloud và tìm hiểu về cách sử dụng Google Cloud Operations Suite để theo dõi tình trạng của ứng dụng!

Nội dung đã đề cập

  • Triển khai một dịch vụ lên Google Cloud Run.
  • Thiết lập trang tổng quan cho dịch vụ Google Cloud Run.
  • Kiểm tra thời gian hoạt động.
  • Thiết lập chỉ số nhật ký tuỳ chỉnh và Trang tổng quan/Biểu đồ dựa trên chỉ số đó.
  • Khám phá Trình khám phá chỉ số và thiết lập Trang tổng quan/Biểu đồ.
  • Thiết lập chính sách cảnh báo.
  • Thiết lập SLI/SLO để Giám sát dịch vụ trong Google Cloud.

Lưu ý: Nếu bạn đã thực hiện lớp học lập trình bằng tài khoản và dự án trên đám mây của riêng mình, thì các tài nguyên được phân bổ có thể tiếp tục phát sinh phí thanh toán. Vì vậy, hãy xoá Dự án và tài nguyên sau khi bạn hoàn tất bài thực hành.

Tiếp theo là gì?

Hãy xem nhiệm vụ này trên Cloud Skills Boost để tìm hiểu thêm về Google Cloud Operations Suite.

Tài liệu đọc thêm