2010-09-21 41 views
17

Tôi đã gặp sự cố với Hudson trên cửa sổ.Khởi động lại Hudson trên Windows

Bất cứ khi nào tôi cập nhật Hudson hoặc plugin, tôi có tùy chọn khởi động lại khi không có công việc nào đang chạy.
Nếu tôi nhấp vào nút này, Hudson bị treo và không khởi động lại. Tôi đã thử khởi động lại dịch vụ Hudson nhưng điều này không giúp đỡ, vì vậy cuối cùng phải khởi động lại hộp để đưa Hudson trở lại trực tuyến.

Tôi vừa mới cập nhật lên phiên bản mới nhất, nhưng không nhấp vào nút khởi động lại và bây giờ nó đã biến mất.

Có cách nào chính xác để khởi động lại Hudson trên cửa sổ không?

Cheers

Tom

Trả lời

13

Tôi gặp sự cố này một lần trong một thời gian. Đối với một số lý do máy chủ Hudson không tắt hoàn toàn và máy chủ khởi động, không thể sử dụng cổng. Để khắc phục vấn đề đó, tôi chạy `netstat -n -o '. Bằng cách này tôi có thể tìm ra ID quá trình chứa cổng và giết ứng dụng đó thông qua taskmanager. Bây giờ tôi có thể khởi động lại dịch vụ và Hudson đi lên tốt.

Trong vài tuần qua, tôi đã gặp phải sự cố tương tự. Mô tả cho biết, nó khởi động lại ứng dụng, khi không có tiến trình nào đang chạy. Tôi bỏ lỡ một công việc đã được giữ trong hàng đợi xây dựng và vì một cấu hình bị lỗi không bao giờ thực sự xây dựng, do đó ngăn cản Hudson khởi động lại.

Sau khi tất cả công việc của bạn đã hoàn tất và máy chủ của bạn không khởi động lại. Chỉ cần truy cập lại trang khởi động http://server:port/restart và thử khởi động lại. Nếu điều đó không hoạt động, hãy dừng dịch vụ và khởi động lại.


UPDATE:

Kể từ khi tôi lớn mệt mỏi của cơ thể đăng nhập vào máy chủ Hudson/Jenkins, bây giờ tôi sử dụng lệnh sau đây để chạy giết từ xa. Các lệnh này giả định rằng bạn chạy dịch vụ với một người dùng chuyên dụng (ví dụ: JenkinsUser). Nếu một tiến trình khác chạy với cùng các chứng chỉ hơn dịch vụ và có thể bắt đầu java.exe, bạn cần chạy netstat cần được thực hiện cục bộ trên máy chủ Jenkins hoặc bằng cách sử dụng rexec (đây không phải là một tùy chọn cho tôi).

:: get the pid of jenkins java.exe 
tasklist /S %JENKINSSERVER% /FI "IMAGENAME eq java.exe" /FI "USERNAME eq %DOMAIN\USERNAME%" 

:: terminate process use pid from previous command (instead of 1234) 
taskkill /S %JENKINSSERVER% /F /T /PID 1234 

:: stop the Jenkins service (just in case the service is hanging) 
sc \\%JENKINSSERVER% stop Jenkins 

:: start the Jenkins service again 
sc \\%JENKINSSERVER% start Jenkins 

Nếu tôi có nhiều thời gian, tôi có thể tạo tập lệnh.

+0

Cảm ơn đề xuất của bạn Peter!Tôi sẽ chạy anh ta cập nhật vào cuối ngày và tôi sẽ cung cấp cho nó một đi nếu nó treo cứng. –

+1

Thật ngạc nhiên, kể từ khi đặt câu hỏi này, tôi đã cập nhật Hudson và các plugin của nó và không gặp vấn đề gì khi khởi động lại. Tôi có thể nhìn thấy logic trong những gì bạn đang nói Peter vì vậy sẽ đánh dấu câu trả lời của bạn là một trong những chấp nhận. Cảm ơn bạn đã giúp đỡ! –

+1

/restart không hoạt động đối với tôi. Tôi có một nút để khởi động lại và một khi tôi nhấp vào nó, tôi nhận được lỗi sau. udson.lifecycle.RestartNotSupportedException: Vòng đời Windows mặc định không hỗ trợ khởi động lại. \t tại hudson.lifecycle.Lifecycle $ 1.verifyRestartable (Lifecycle.java:83) Tôi không cài đặt Hudson làm dịch vụ Windows vì đó không phải là tùy chọn trong Quản lý Hudson. Tôi đang chạy phiên bản 1.3.98 trên máy tính Windows 7 cục bộ của mình. – CACuzcatlan

1

Nếu nút Slave có slave.jar sử dụng như một dịch vụ windows, dịch vụ được định nghĩa là "tự động".
Điều đó có nghĩa là nó sẽ cố gắng liên hệ với chính định kỳ nếu kết nối đã bị cắt.

Bạn không nên nhấp vào bất kỳ thứ gì ở phía máy chủ (trong định nghĩa Nút) để khởi động lại nút Node: nó sẽ tự động trở lại trực tuyến.

+0

Cảm ơn câu trả lời của bạn VonC. Tôi không thực sự chạy bất kỳ nô lệ. Chỉ hudson như một bậc thầy. Vì vậy, bạn có bất kỳ ý tưởng tại sao nó treo khi tôi nhấp vào nút khởi động lại? –

+1

@Toggo: oh ok. Câu trả lời của Peter có thể có liên quan hơn sau đó. – VonC

1

Nếu bạn đã cài đặt Jenkins trên máy chủ TomCat, một giải pháp thay thế là chỉ cần khởi động lại dịch vụ Apache TomCat của bạn.

+1

Nó đã giúp tôi :) – amalBit

Các vấn đề liên quan