Thursday, November 21, 2024

Tạo ứng dụng bằng cách tự định nghĩa tài nguyên

-

Bài viết này mình sẽ hướng dẫn các bạn triển khai 1 ứng dụng đơn giản bằng cách tự định nghĩa các tài nguyên của riêng mình trên file manifest được lưu ở 1 kho chứa nào đó ví dụ github. Và chúng ta sẽ dùng ArgoCD để đọc các file này từ kho chứa github, từ đó nó sẽ triển khai ứng dụng dựa vào các file manifest có trong kho chứa.

Chúng ta sử dụng lệnh sau để xem các crd của ArgoCD, các crd sẽ quản lý các tài nguyên tùy chỉnh của hệ thống, nó đã được triển khai khi chúng ta triển khai ArgoCD.

Chúng ta sẽ quan tâm đến 2 thành phần chính, đó là appprojects.argoproj.io và applications.argoproj.io.

root@loadbalancer3:~# kubectl get crds | grep argo
applications.argoproj.io                              2022-09-16T04:34:42Z
applicationsets.argoproj.io                           2022-09-16T04:34:42Z
appprojects.argoproj.io                               2022-09-16T04:34:42Z

Chúng ta thử get các project thì ta thấy hiện tại chỉ có 1 project default duy nhất được tạo khi chúng ta triển khai ArgoCD.

root@loadbalancer3:~# kubectl -n argocd get appprojects
NAME      AGE
default   4d3h

Điều này là phù hợp vì nó trùng khớp với giao diện web của ArgoCD.

Khi chúng ta list các application thì nó đang trống, đơn giản vì chúng ta chưa triển khai 1 application nào.

root@loadbalancer3:~# kubectl -n argocd get application
No resources found in argocd namespace.

Bây giờ chúng ta sẽ thêm 1 repo của github như hình dưới, bấm vào (1) để chọn phương thức kết nối là HTTPS.

Điền đầy đủ thông tin như hình, nếu kho chứa là public thì bỏ qua username và mật khẩu và ngược lại.

  1. Chọn type là Git.
  2. Project hiện có là Default
  3. Link của repo
  4. Bấm connect để thêm 1 này

Sau khi thêm chúng ta sẽ thấy xuất hiện thêm repo mới này có tích xanh với trạng thái kết nối thành công tại vị trí 1. Chúng ta có thể thêm ứng dụng tại màn hình này (2) nhé.

Đặt tên cho ứng dụng, chọn project và tích vào auto create namespace để ArgoCD tự động tạo namespace nếu nó chưa tồn tại nhé.

Chọn kho chứa đã thêm vào, chú ý mục path chọn đúng thư mục chứa các file manifest cần triển khai (xem hình 2). Sau khi đã khai báo xong thông tin, bạn chọn create để bắt đầu triển khai ứng dụng.

Hình 1: Nhập thông tin source và destination cho ứng dụng

Hình 2: Thư mục chứa file manifest để chèn vào mục path ở hình 1

Sau khi bấm create chúng ta có màn hình tổng quan chứa 1 số thông tin cơ bản như dưới. Chúng ta bấm vào Sync -> synchronized để quá trình deploy ứng dụng được bắt đầu.

Sau khi deploy xong, chúng ta có kết quả như hình dưới có tích xanh báo hiệu deploy thành công.

Chúng ta thử get applications thì đã có 1 project mới của ArgoCD vừa tạo.

root@loadbalancer3:~# kubectl -n argocd get applications
NAME                 SYNC STATUS   HEALTH STATUS
git-demo-wordpress   Synced        Healthy

View lại các thông tin nhé, ghi nhớ tên domain để chúng ta test ở bước tiếp theo.

Đã truy cập wordpress thành công.

Good luk ^^

LEAVE A REPLY

Please enter your comment!
Please enter your name here

4,956FansLike
256FollowersFollow
223SubscribersSubscribe
spot_img

Related Stories