Phát triển bằng Cloud Code

1. Mục tiêu

Trong phòng thí nghiệm này, bạn sẽ:

  • Khám phá các trình bổ trợ Cloud Code
  • Triển khai vào cụm Kubernetes
  • Truyền phát nhật ký Kubernetes
  • Tận dụng tính năng tải lại nóng các thay đổi
  • Gỡ lỗi các ứng dụng Kubernetes trực tiếp

2. Chuẩn bị không gian làm việc

Sao chép ứng dụng

Cách sao chép kho lưu trữ và mở kho lưu trữ đó trong môi trường phát triển:

  1. Mở trình chỉnh sửa Cloud Shell bằng cách truy cập vào URL sau

https://ide.cloud.google.com

  1. Trong cửa sổ dòng lệnh, hãy sao chép nguồn ứng dụng bằng lệnh sau:

git clone https://github.com/viglesiasce/sample-app.git -b golden-path

  1. Chuyển vào thư mục và đặt không gian làm việc IDE thành thư mục gốc của kho lưu trữ

cd sample-app && cloudshell workspace .

Bắt đầu Minikube

Trong phần này, bạn sẽ xây dựng, kiểm thử, triển khai và truy cập vào ứng dụng bằng một phiên bản Kubernetes cục bộ có tên là Minikube.

  1. Trong dòng lệnh, hãy bắt đầu minikube bằng cách chạy:

minikube start

Minikube thiết lập một cụm Kubernetes cục bộ trong Cloud Shell. Quá trình thiết lập này sẽ mất vài phút. Trong khi quá trình này đang bắt đầu, hãy dành chút thời gian để xem xét các giao diện do Cloud Code cung cấp trong bước tiếp theo.

3. Khám phá trình bổ trợ Cloud Code

Cloud Code hỗ trợ IDE cho toàn bộ chu kỳ phát triển của các ứng dụng Kubernetes và Cloud Run, từ việc tạo ứng dụng từ một mẫu hiện có đến việc giám sát tài nguyên của ứng dụng đã triển khai. Bạn sẽ sử dụng nhiều lệnh và khung hiển thị do Cloud Code cung cấp. Trong bước này, bạn sẽ làm quen với các giao diện cơ bản.

Xem xét các khung hiển thị của trình khám phá từ thanh hoạt động

Bạn có thể truy cập vào nhiều bảng điều khiển giao diện người dùng từ Thanh hoạt động. Để làm quen nhanh với các khung hiển thị, hãy nhấp vào biểu tượng cho từng khung hiển thị

API Explorer:

  • Nhấp vào biểu tượng Cloud Code – Cloud APIs (Cloud Code – API đám mây) Cloud Code  trên Thanh hoạt động. Bạn có thể xem thêm thông tin chi tiết về cách làm việc trong khung hiển thị này trong tài liệu.

ded1723c524edd72.png

Secret Manager Explorer:

  • Nhấp vào khung hiển thị Secret Manager (Trình khám phá Secret Manager)  trong Thanh hoạt động. Bạn có thể xem thêm thông tin chi tiết về cách làm việc trong khung hiển thị này trong tài liệu

89f88159bcf79fa9.png

Cloud Run Explorer:

  • Chuyển đến Cloud Run Explorer (Trình khám phá Cloud Run) bằng biểu tượng Cloud Run trong Thanh hoạt động ở bên trái . Bạn có thể xem thêm thông tin chi tiết về cách làm việc trong khung hiển thị này trong tài liệu

a1d583fd06413011.png

Kubernetes explorer:

  • Chuyển đến Kubernetes Explorer (Trình khám phá Kubernetes) bằng biểu tượng trong Thanh hoạt động ở bên trái . Bạn có thể xem thêm thông tin chi tiết về cách làm việc trong khung hiển thị này trong tài liệu

b2b8ab3975c5b0c9.png

Xem xét các lệnh trên thanh trạng thái

Bạn có thể nhanh chóng truy cập vào các lệnh thường dùng thông qua chỉ báo trong thanh trạng thái.

  • Tìm chỉ báo tiện ích Cloud Code trong thanh trạng thái d61e85cf23a32a40.png  rồi nhấp vào chỉ báo đó.
  • Xem xét các lệnh khác nhau có sẵn để chạy và gỡ lỗi trên CloudRun và Kubernetes
  • Nhấp vào Open Welcome Page (Mở trang chào mừng) để xem thêm thông tin chi tiết và các hoạt động mẫu

Xem xét các lệnh trong bảng lệnh

Bạn có thể xem thêm các lệnh trong bảng lệnh. Xem xét danh sách các lệnh mà bạn có thể truy cập.

  • Mở Bảng lệnh (nhấn Ctrl/Cmd+Shift+P), sau đó nhập Cloud Code để lọc các lệnh có sẵn.
  • Sử dụng các phím mũi tên để di chuyển qua danh sách lệnh.

4. Triển khai vào cụm Kubernetes

Trong phần này, bạn sẽ xây dựng, kiểm thử, triển khai và truy cập vào ứng dụng.

Các bước bên dưới sẽ bắt đầu quá trình xây dựng mã nguồn, sau đó chạy các hoạt động kiểm thử. Quá trình xây dựng và kiểm thử sẽ mất vài phút để chạy. Các hoạt động kiểm thử này bao gồm kiểm thử đơn vị và một bước xác thực để kiểm tra các quy tắc được đặt cho môi trường triển khai. Bước xác thực này đã được định cấu hình và đảm bảo rằng bạn sẽ nhận được cảnh báo về các vấn đề triển khai ngay cả khi bạn vẫn đang làm việc trong môi trường phát triển.

  1. Trong ngăn ở cuối Trình chỉnh sửa Cloud Shell, hãy chọn Cloud Code  d61e85cf23a32a40.png.
  2. Trong bảng điều khiển xuất hiện ở trên cùng, hãy chọn Run on Kubernetes (Chạy trên Kubernetes). Nếu được nhắc, hãy chọn Yes (Có) để sử dụng ngữ cảnh minikube Kubernetes.
  3. Chọn thẻ Output (Đầu ra) trong ngăn dưới cùng 4866761cb9c691e2.png để xem tiến trình và thông báo
  4. Chọn "Kubernetes: Run/Debug – Detailed" (Kubernetes: Chạy/Gỡ lỗi – Chi tiết) trong trình đơn thả xuống kênh ở bên phải c5e31091d464dbcf.png để xem thêm thông tin chi tiết và nhật ký truyền phát trực tiếp từ các vùng chứa

Khi quá trình xây dựng và kiểm thử hoàn tất, thẻ Output (Đầu ra) sẽ hiển thị: Resource deployment/sample-app-dev status completed successfully (Đã hoàn tất thành công trạng thái triển khai tài nguyên/sample-app-dev) và liệt kê 2 URL.

  1. Trong dòng lệnh Cloud Code, hãy di chuột qua URL đầu tiên trong đầu ra (http://localhost:8080), sau đó trong chú giải công cụ xuất hiện, hãy chọn Open Web Preview (Mở bản xem trước trên web).

Phiên bản cục bộ của ứng dụng sẽ mở ra trong trình duyệt. Phiên bản ứng dụng này đang chạy trong cụm Kubernetes của minikube.

  1. Trong trình duyệt, hãy làm mới trang. Số bên cạnh Counter (Bộ đếm) sẽ tăng lên, cho thấy rằng ứng dụng đang phản hồi yêu cầu làm mới của bạn.

Trong trình duyệt, hãy giữ trang này mở để bạn có thể xem ứng dụng khi thực hiện bất kỳ thay đổi nào trong môi trường cục bộ.

5. Tận dụng tính năng tải lại nóng các thay đổi

Trong phần này, bạn sẽ thực hiện một thay đổi đối với ứng dụng và xem thay đổi đó khi ứng dụng chạy trong cụm Kubernetes cục bộ. Trong thẻ đầu ra cho kênh Kubernetes: Run/Debug (Kubernetes: Chạy/Gỡ lỗi), ngoài các URL ứng dụng, đầu ra cũng hiển thị Watching for changes. (Đang theo dõi các thay đổi). Điều này có nghĩa là chế độ theo dõi đã được bật. Khi Cloud Code ở chế độ theo dõi, Cloud Code sẽ phát hiện mọi thay đổi đã lưu trong kho lưu trữ của bạn và tự động xây dựng lại cũng như triển khai lại ứng dụng với những thay đổi mới nhất.

  1. Trong Trình chỉnh sửa Cloud Shell, hãy chuyển đến tệp main.go.
  2. Trong tệp main.go này, ở dòng 23, hãy thay đổi màu từ xanh lục thành xanh dương.
  3. Lưu tệp.

Cloud Code phát hiện thấy thay đổi đối với ứng dụng đã được lưu và tự động triển khai lại thay đổi đó. Thẻ Output (Đầu ra) hiển thị Update initiated (Đã bắt đầu cập nhật). Quá trình triển khai lại này sẽ mất vài phút để chạy.

Quá trình xây dựng lại tự động này tương tự như tính năng tải lại mã nóng, một tính năng có sẵn cho một số loại ứng dụng và khung.

  1. Khi quá trình xây dựng hoàn tất, hãy chuyển đến trình duyệt nơi bạn đã mở ứng dụng và làm mới trang.

Khi bạn làm mới, màu ở đầu bảng sẽ thay đổi từ xanh dương thành xanh lục.

Quá trình thiết lập này cung cấp cho bạn tính năng tải lại tự động này cho mọi kiến trúc, với mọi thành phần. Khi sử dụng Cloud Code và minikube, mọi thứ đang chạy trong Kubernetes đều có chức năng tải lại mã nóng này.

6. Gỡ lỗi các ứng dụng Kubernetes trực tiếp

Bạn đã chạy ứng dụng, thực hiện thay đổi và xem ứng dụng đang chạy. Trong phần này, bạn sẽ gỡ lỗi ứng dụng để đảm bảo rằng ứng dụng đã sẵn sàng để cam kết trở lại kho lưu trữ chính.

Đối với ví dụ gỡ lỗi này, chúng ta sẽ tập trung vào phần mã cho bộ đếm trang.

  1. Trong Trình chỉnh sửa Cloud Shell, hãy mở tệp main.go
  2. Đặt điểm ngắt trong ứng dụng bằng cách nhấp vào số bên trái của dòng 82 (if err != nil {)
  3. Trong ngăn màu xanh dương ở cuối Trình chỉnh sửa Cloud Shell, hãy chọn Cloud Code d61e85cf23a32a40.png .
  4. Trong bảng điều khiển xuất hiện ở trên cùng, hãy chọn Debug on Kubernetes (Gỡ lỗi trên Kubernetes).

Cloud Code chạy và đính kèm trình gỡ lỗi để bạn có thể truy cập vào trạng thái trong bộ nhớ của ứng dụng, không chỉ hành vi hướng đến người dùng của ứng dụng.

  1. Khi kết thúc quá trình triển khai, một lời nhắc sẽ xuất hiện ở đầu cửa sổ yêu cầu bạn xác nhận thư mục trong vùng chứa nơi ứng dụng được triển khai. f96e9a814edb44f4.png

Xác minh rằng giá trị được đặt thành /go/src/app và nhấn Enter để chấp nhận giá trị

  1. Đợi trình gỡ lỗi hoàn tất quá trình triển khai. Bạn sẽ biết quá trình này đã hoàn tất khi thanh trạng thái chuyển sang màu cam và đầu ra báo cáo "Attached debugger to container "sample-app-dev-..." successfully." (Đã đính kèm thành công trình gỡ lỗi vào vùng chứa "sample-app-dev-...")
  2. Trong dòng lệnh Cloud Code, hãy di chuột qua URL đầu tiên trong đầu ra (http://localhost:8081), sau đó trong chú giải công cụ xuất hiện, hãy chọn Open Web Preview (Mở bản xem trước trên web). Trang sẽ không tải xong như dự kiến.
  3. Chuyển lại IDE nơi trình gỡ lỗi hiện xuất hiện. Mã sẽ xuất hiện trong thẻ và bạn sẽ thấy ngăn xếp lệnh gọi, những biến có sẵn tại phần mã đó. Bạn có thể mở rộng phần Variables – Local (Biến – Cục bộ) để xem giá trị biến bộ đếm hiện tại tại đây.
  4. Để cho phép trang tiếp tục tải, hãy chọn biểu tượng "Continue" (Tiếp tục) trong cửa sổ gỡ lỗi 8f395391c4828528.png
  5. Khi bạn gỡ lỗi xong, hãy nhấp vào nút dừng để chấm dứt từng luồng đang chạy. 81d142a9e1a2c01b.png