2013-02-22 24 views
11

Máy chủ Jenkins của chúng tôi (máy Linux) chậm lại trong một khoảng thời gian và nó không phản hồi. Tất cả các công việc mất thời gian dài bất ngờ (mặc dù chúng chạy trên nô lệ là các máy khác nhau từ máy chủ). Một trong những điều tôi đã quan sát là tăng số lượng tệp mở. Con số này dường như đang tăng lên như thể hiện trong hình dưới đây. Có ai có một giải pháp để tiếp tục kiểm tra này mà không cần khởi động lại máy chủ? Ngoài ra, có bất kỳ cấu hình/tinh chỉnh nào có thể cải thiện hiệu năng của máy chủ jenkins không?Làm thế nào để cải thiện hiệu suất máy chủ Jenkins?

enter image description here enter image description here

+0

Tôi tự hỏi nếu có một số công việc của Jenkins mà trình biên dịch và/hoặc thử nghiệm không được dọn dẹp đúng cách. Tôi đã nhìn thấy một vấn đề tương tự trên một máy Windows khi một trong các bài kiểm tra đơn vị để lại một bản sao Excel mới chạy mỗi khi nó được thực hiện. – jwernerny

+0

Có bao nhiêu công việc và số lượng công việc xây dựng? Nếu bạn có một số lượng lớn công việc, và mỗi công việc có rất nhiều công trình, tôi có thể thấy điều này xảy ra. Tôi có thiết lập Jenkins của tôi để xóa công việc cũ hoặc hiện vật sau rất nhiều ngày hoặc xây dựng. Trong cấu hình công việc, bạn có thể tìm kiếm "Hủy bỏ các bản dựng cũ" –

+0

@LarryShatzer Chúng tôi có hơn 300 công ăn việc làm và trung bình mỗi công việc sẽ lưu trữ 10 bản dựng. Một số công việc nặng và mất 3 giờ và một số có trọng lượng nhẹ. Nhìn chung, máy chủ được sử dụng khá rộng rãi với số lần là –

Trả lời

5

Chúng tôi đang sử dụng Jenkins trong vòng một năm và chúng tôi đã cố gắng để giữ cho nó up-to-date (Jenkins + plug-ins). Giống như bạn, chúng tôi đã thử nghiệm một số sự bất tiện, tùy thuộc vào phiên bản mới của Jenkins hoặc plug-in ... Vì vậy, chúng tôi quyết định ngừng nâng cấp "liên tục" này

Điều tồi tệ nhất là nâng cấp plugin Active Directory (1.36 đến 1.37), xác thực mất vài phút.

khiêm nhường, sau đây là vài lời khuyên:

  1. Cập nhật Jenkins, nhưng chỉ sử dụng "Long Term Support" phiên bản (mới nhất là 2.73.3)
  2. Restart Jenkins mỗi đêm
  3. Thêm RAM để bạn máy chủ. Jenkins sử dụng hệ thống tập tin rất nhiều và điều này sẽ cải thiện bộ nhớ đệm
  4. Xác định JVM min/thông số bộ nhớ tối đa với cùng một giá trị để tránh tái phân bổ năng động, ví dụ: -Xms4G -Xmx4G
  5. Thêm nô lệ và thực hiện công việc chỉ về nô lệ
1

Ngoài ở trên, bạn cũng có thể thử:

  1. việc huỷ cũ xây dựng
  2. Phát được xây dựng trên nhiều nô lệ, nếu có thể.
Các vấn đề liên quan