Làm cách nào để tự động hóa việc triển khai với Kubernetes?


12

Giả sử tôi đã triển khai Kubernetes thông qua Rancher và Jenkins đang xây dựng hình ảnh mới và đẩy chúng lên DockerHub khi đăng ký mã mới vào GitHub, làm cách nào để tự động hóa việc triển khai hình ảnh mới?

Một cách khác để đặt câu hỏi có thể là, tôi đã từng sử dụng Octopus để quản lý việc triển khai của mình. Có thứ gì đó tương tự được xây dựng trong Kubernetes hoặc Rancher không? Rốt cuộc, đây là khoảng trống cuối cùng mà tôi đang vật lộn.

Câu trả lời:


4

Vì bạn đang sử dụng Rancher, cách dễ nhất là đăng ký Danh mục Rancher tùy chỉnh và tạo một mục cho mỗi ngăn xếp / dịch vụ bạn muốn triển khai.

Thêm danh mục tùy chỉnh

Danh mục Rancher là một kho lưu trữ Git với cấu trúc sau

Cấu trúc kho lưu trữ Git

Sau đó, trong Jenkins, bạn có thể tạo một công việc gọi API REST của Rancher để triển khai / cập nhật ngăn xếp / dịch vụ.

nhập mô tả hình ảnh ở đây

Đến lượt mình, Rancher sẽ lấy phiên bản mới nhất của hình ảnh Docker cho dịch vụ này và triển khai nó tương ứng với tệp Docker Compose từ danh mục.

nhập mô tả hình ảnh ở đây

Ưu điểm:

  • phương pháp chung có thể được sử dụng cho hầu hết mọi ứng dụng
  • Bản thân Jenkins có thể được triển khai vào môi trường Rancher, các tác nhân có thể được tạo trong cụm Kubernetes

Nhược điểm:

  • nhóm phát triển nên tuân theo chiến lược phát hành vững chắc để có thể sử dụng các bản dựng chung
  • trình điều khiển lưu trữ vẫn còn trong câu hỏi phát hành alpha của Rancher 2.0

-2

Địa hình với nhà cung cấp Kubernetes.


1
Chào. Có thể mở rộng câu trả lời một chút với các chi tiết về cách làm tương tự, hoặc với các liên kết hữu ích?
Dawny33
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.