Đường ống Jenkins vs Azure DevOps


12

Tôi đã thực hiện một số nghiên cứu về giải pháp Azure DevOps mà Microsoft mới công bố gần đây .

Một số nền tảng, tôi đã sử dụng Jenkins trong nhiều năm và gần đây đã bắt đầu khám phá lỗ thỏ chứa (Docker, Kubernetes, v.v.),

Tôi không chắc chắn về một số khía cạnh của Azure DevOps Pipelines, và thật tuyệt vời khi nhận được một số phản hồi và sự rõ ràng.

TL; DR

  1. Azure DevOps hiện đang cạnh tranh với Jenkins, nơi trước đây họ đã hỗ trợ cộng đồng Jenkins thông qua các plugin nguồn mở cho Jenkins?
  2. Tôi có thể lưu trữ hoàn toàn Azure DevOps Pipelines trên tiền đề không chỉ là đại lý?
  3. Có thể sử dụng giải pháp git tự lưu trữ (như GitLab tại cơ sở) với Azure DevOps Pipelines không?

Phiên bản dài hơn

  1. Microsoft đã phát triển các plugin nguồn mở khác nhau cho Jenkins, chẳng hạn như plugin Azure App Service Jenkins . Có rất nhiều ví dụ. Đối với tôi có vẻ như giải pháp Azure DevOps (cụ thể là Pipelines) hiện đang cạnh tranh trực tiếp với Jenkins, hay tôi đang thiếu thứ gì đó?
  2. Đối với tôi, dường như không có cách nào để lưu trữ giải pháp Azure Pipelines trên cơ sở hoặc trong một nhà cung cấp đám mây mà tôi chọn. Có, tôi có thể lưu trữ các đại lý của riêng mình , nơi phần lớn công việc được thực hiện, nhưng việc thực thi logic đường ống thực sự xảy ra trên các máy chủ của Microsoft. Và sau đó tôi phải trả tiền cho các công việc song song . Tôi đang so sánh điều này với một trường hợp Jenkins tại cơ sở (hoặc nhà cung cấp lựa chọn trên nền tảng đám mây), nơi không yêu cầu thanh toán và không bên thứ 3 nào biết rằng các đường ống của chúng tôi đang chạy. Tui bỏ lỡ điều gì vậy?
  3. Từ những gì tôi có thể nói, Azure Pipelines không hỗ trợ cho các kho lưu trữ tự lưu trữ, tôi hoặc đặt mã của mình trên GitHub hoặc trên các kho lưu trữ Azure , không có gì khác. Vì vậy, tôi thậm chí không thể sử dụng giải pháp Pipelines này nếu tôi có một cá thể GitLab được lưu trữ riêng tư?

Cảm ơn cho bất kỳ đầu vào.


2
Tôi có thể đề nghị tách câu hỏi này thành những câu hỏi riêng biệt không? Câu hỏi như nó có vẻ giống như một lời mời để thảo luận về ý kiến. Nếu bạn có thể tách chúng thành các câu hỏi riêng lẻ, chúng có thể được trả lời tốt hơn.
Bruce Becker

Xin chào Bạn có câu trả lời nào cho những câu hỏi này không?
dùng10804

Azure Devops không thể được lưu trữ trên tiền đề, nhưng TFS có thể về cơ bản là giống nhau nhưng được cập nhật chậm hơn một chút. Chúng tôi sử dụng TFS 2018 trên tiền đề và tuyệt vời của nó
Rich

Đây có phải là một câu hỏi thực sự? Đối với tôi có vẻ như FUD không có nghiên cứu thực tế.
Công ty Carles

Câu hỏi tuyệt vời! Bạn đã đạt được bất kỳ câu trả lời cho câu hỏi của bạn? Nếu vậy, xin vui lòng viết nó để cộng đồng cũng có thể hưởng lợi từ nó.
Rodrigogq

Câu trả lời:


4

Tôi rất muốn nhận được một số sự rõ ràng có thể từ một nguồn có thẩm quyền hơn bản thân mình (tôi chắc chắn tôi cũng có tội với FUD).

Tôi đã tìm cách triển khai lên Azure bằng Kubernetes. Tôi cũng bối rối tương tự nhưng tôi nghĩ đó là bởi vì không có một con đường rõ ràng. Tôi không thể nói cho Microsoft nhưng thái độ của họ đối với đám mây dường như là họ rất vui khi trở thành " tất cả mọi thứ cho tất cả mọi người ". Nếu bạn đang sử dụng Azure, Microsoft dường như không có ý kiến ​​mạnh mẽ về cách bạn đến đó.

Microsoft đang tích cực cố gắng để phát triển; ví dụ: Linux hiện thống trị Azure


Rõ ràng đường ống triển khai Azure DevOps thực hiện chính xác những gì Jenkins có thể làm - vì vậy theo nghĩa đó, nó là đối thủ cạnh tranh. Ngoài ra còn có việc đưa ra giá Azure DevOps trả trước cho các đường ống song song.

Một mặt, Azure DevOps dường như là một thương hiệu lại của Visual Studio Team Services. Vì vậy, nó sẽ quen thuộc với mọi người đã có trong hệ sinh thái phát triển truyền thống của Microsoft. Đồng thời Microsoft đang nỗ lực rất lớn để nắm lấy các công nghệ không theo truyền thống của Microsoft ( Go, Java, Node.js, Python, Ruby, PHP, v.v.).

Đó là những ngày đầu - nhưng không có gì ngạc nhiên khi các đường ống Azure DevOps nên ưu tiên các thuộc tính Microsoft Git của Azure Repos và GitHub. Theo cùng một cách mà các đường ống BitBucket thích các đường ống BitBucket và GitLab thích GitLab hơn.


Trong khi đó;

Azure Marketplace cung cấp một triển khai Jenkins đi kèm với các plugin triển khai Azure ra khỏi hộp.

Nhiều plugin Jenkins đã được nhóm Azure DevOps phát triển .


ngoài ra;

Microsoft đã đặt sự ủng hộ của họ đằng sau các dự án liên quan đến Kubernetes HelmDraft . Helm là một người quản lý gói cho Kubernetes. Bạn thậm chí có thể sử dụng Helm để triển khai cài đặt Jenkins vào Kubernetes.

-

Sẽ rất thú vị khi thấy ai đó cân nhắc lợi ích, chi phí và nỗ lực để điều hành Jenkins của riêng bạn trong các câu thơ Azure bằng cách sử dụng các đường ống Azure DevOps.

... và sau đó là Jenkins-X .

Vì vậy, có vẻ như chúng ta có nhiều lựa chọn và quyết định để thực hiện.


2

Trả lời phần 2 (có thể), có vẻ như họ đang quảng cáo nó như là một thay thế cho Jenkins, mặc dù có rất nhiều tài liệu cho thấy rằng tất cả có thể được sử dụng cùng nhau (và ở đây ). Khi được sử dụng với Jenkins, nó dường như tập trung hơn vào một cây cầu triển khai. Tôi đã hy vọng rằng tôi có thể sử dụng nó như một tác nhân xây dựng với Jenkins như một nhà soạn nhạc, giống như tôi có thể làm với Jenkins & AWS CodeBuild. Tôi chưa thấy bất cứ điều gì đề nghị tôi có thể làm như vậy, nhưng có lẽ ... Việc triển khai nhiều đám mây rất hấp dẫn mặc dù ...


2
  1. Có, bởi vì Azure Pipelines có thể làm những gì Jenkins làm. Tuy nhiên, bạn không cần phải ném em bé ra ngoài bằng nước tắm. Microsoft tiếp tục định vị các nền tảng của họ sao cho việc tích hợp có thể xảy ra với các cài đặt hiện có của bất kỳ thứ gì. Nhiều org có những khoản đầu tư lớn vào dụng cụ rất khó thay đổi. Thay vì có lập trường toàn diện hoặc không có gì, Microsoft đang nắm lấy các tiêu chuẩn và tâm lý mang lại cho bạn, mang đến cho bạn sự lựa chọn tối ưu về cách bạn muốn thực hiện các công cụ.

  2. Các tác nhân về mặt kỹ thuật là đường ống của bạn khi các tác vụ thực thi trên các tác nhân được nhắm mục tiêu trong đường ống. Tất cả những gì bạn đang cấu hình trong cổng là các bước mà đường ống sẽ thực hiện. Các tác nhân tải về các công cụ / phần mở rộng cần thiết để thực hiện các tác vụ. Ngoài ra, với các đường ống YAML mới, các đường ống được xác định trong kho mã của bạn. Theo như lưu trữ, bạn có thể lưu trữ hoàn toàn máy chủ Azure DevOps trên tiền đề, trong bất kỳ nhà cung cấp đám mây nào hoặc kết hợp máy ảo Azure và Azure SQL.

  3. Kho lưu trữ Git chung được hỗ trợ trong Azure DevOps Services bằng trình chỉnh sửa cổ điển hoặc cả YAML và trình chỉnh sửa cổ điển nếu sử dụng Azure DevOps Server (tại chỗ) tại thời điểm này. Bạn có thể thêm tích hợp kho GitLab bằng cách cài đặt tiện ích mở rộng.

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.