Tạo CodePipeline
Tạo CodePipeline
CodePipeline là dịch vụ AWS cho phép chúng ta xây dựng qui trình khiển khai ứng dụng một cách liên tục và tự động. Với cách thức cấu hình đơn giản, CodePipeline có khả năng mô hình hoá trực quan các bước cần thiết để biên dịch, kiểm thử và triển khai các phiên bản cập nhật cho một ứng dụng hoặc dịch vụ.
Để thực hiện thiết lập một qui trình triển khai ứng dụng dựa trên CodePipeline, chúng ta cần hiểu qua một số khái niệm / thuật ngữ cơ bản thường dùng:
-
Pipeline: là một qui trình - workflow mô tả một chuỗi các bước thực hiện từ việc thay đổi source code đến khi tích hợp và triển khai những thay đổi này sang môi trường sản phẩm.
-
Stage: mô tả mỗi bước thực hiện trong Pipeline. Stage thường hoạt động trong một môi trường độc lập, thực hiện những xử lý dựa trên input artifact.
-
Transition: là mốc dịch chuyển giữa việc thực thi của các stages trong một pipeline. Việc kiểm soát transition (enable / disable) cho phép chúng ta thực hiện các xác nhận cần thiết trước khi quyết định tiếp tục việc triển khai.
-
Artifact: được phân chia thành hai loại:
- Input artifact: được sử dụng để thực thi các hoạt động trong một stage. Ví dụ: source code là input artifact - được biên dịch / kiểm thử bởi các câu lệnh build stage.
- Output artifact: là kết quả được tạo ra bởi các hoạt động trong một stage. Ví dụ: các lệnh trong build stage tạo ra Test Report, Log, hoặc Docker Image.
-
Truy cập vào AWS CodePipeline
- Chọn Pipeline
- Chọn Create pipeline
-
Trong giao diện tạo CodePipeline
- Nhập
aws-node-pipeline
vào Pipeline name
- Đối với Service role chọn New service role
- Chọn Next
-
Đối với Add source stage
- Source provider, chọn AWS CodeCommit
- Repository name, chọn aws-fcj-management
- Đối với Branch name, chọn master
- Các mục khác để mặc định
- Chọn Next
- Phần Build provider chọn AWS CodeBuild
-
Đối với phần Build stage
- Region, chọn Singapore
- Đối với Project name, chọn aws-fcj-management-build
- Chọn Single build
- Sau đó, chọn Next
-
Đối với Deploy stage
- Chọn Amazon ECS (Blue/Green)
- Chọn Next
-
Tiến hành cấu hình Deploy
- Đối với Deploy provider, chọn Amazon ECS (Blue/Green).
- Region, chọn Singapore.
- Chọn AWS CodeDeploy application name.
- Chọn AWS CodeDeploy depolyment group.
- Cấu hình Amazon ECS task definition.
- Cấu hình AWS CodeDeploy AppSpec file.
- Đối với Dynamically Update task definition image, chọn BuildArtifact và nhập Placeholder text in the task definition trùng với tên image của file taskdef.json.
- Chọn Next.
- Kiểm tra lại và chọn Create pipeline
- Đợi khoảng 5 phút chúng ta sẽ thấy 2 stage là Source và Build hoàn thành.
- Khoảng hơn 5 phút Stage Deploy không gặp vấn đề.Chúng ta sẽ click vào Details để xem chi tiết quá trình Deploy.
- Khoảng thêm 5 phút nữa chúng ta sẽ thấy traffic đang chuyển dần từ Original sang Replacement.
- Khoảng 5 phút tiếp theo chúng ta quan sát sẽ thấy Deployment lifecycle events hoàn thành tất cả các bước.
- Mất khoảng hơn 1 giờ để hoàn thành quá trình deployment và traffic shift thành công.
14.Chúng ta sẽ kiểm tra Amazon ECS Cluster
- Chọn Task
- Chọn task có cùng group với file cấu hình taskdef.json và appspec.yaml
- Xem thông tin chi tiết của Task, sau đó sao chép Public IP của task để truy cập thử vào ứng dụng qua port 5000
- Truy cập vào ứng dụng thành công.
- Chúng ta kiểm tra lại vào Pipeline đã hoàn thành.
- Quan sát stream log trong CloudWatch
- Xem event của service.
- Xem thông tin Deployments
- Xem thông tin Metrics
- Xem thông tin Logs