2012-08-08 3 views
3

요리사가 노드를 성공적으로 부트 스트랩 한 후 이러한 오류 [http://pastebin.com/BEgNh2mm][chef-client/server errors]가 표시됩니다.칼 부트 스트랩을 실행 한 후 요리사 - 클라이언트 연결 오류

Merb는 : 요리사 서버 (API) : 근로자 (포트 4000) ~ 시작 요청 처리 : 수요일 8월 8일 19

(단절 로그에서 미리보기)를 다음과 같이 발생

초기 오류입니다 : 04 : 32 +0200 2012 merb : chef-server (api) : 작업자 (포트 4000) ~ Params : { "name"=> "devhouse", "controller"=> "clients", "action"=> ","admin "을 만들 => 거짓} Merb는 : 요리사 서버 (API) : 근로자 (포트 4000) ~ Connection reset by peer - (Errno::ECONNRESET)

(클라이언트 STDOUT에서 미리보기)

[2012-08-08T19 : 47 : 57 + 02 : 00] INFO : * 요리사 10.12.0 * [2012-08-08T19 : 47 : 57 + 02 : 00] INFO : 클라이언트 키/등 /chef/client.pem가 없습니다. 등록 [2012-08-08T19 : 47 : 58 + 02 : 00] 정보 : HTTP 요청이 반환 됨 409 충돌 : 클라이언트가 이미 존재합니다. [2012-08-08T19 : 47 : 58+ 02:00] 정보 : HTTP Request Returned 403 Forbidden :이 작업을 수행 할 수 없습니다. [2012-08-08T19 : 47 : 58 + 02 : 00] 위험 : Stacktrace가 /var/chef/cache/chef-stacktrace.out에 덤프 됨 [2012-08-08T19 : 47 : 58 + 02 : 00] FATAL : Net :: HTTPServerException : 403 "금지됨"

위의 오류에서 내가 추측 할 수있는 유일한 점은 클라이언트가 서버와 통신하는 데 실패했지만 클라이언트가 서버에 연결할 수 없다는 것입니다. 서버에 등록하여 실행합니다. knife client list은 클라이언트의 목록을 표시하지만 클라이언트의 업데이트 시도는 실패합니다. 403 "Forbidden"

요리사의 일반적인 오류에는 이러한 동작에 대한 기록이없는 것 같습니다.

답변

9

문제는 두 부분으로했다 : 피어에 의해

  1. 연결 재설정 - HTTP 요청이 반환

  2. (errno를 :: ECONNRESET)를 409 충돌 : 클라이언트가 이미 존재하고 FATAL : 순 :: HTTPServerException : 403 "금지"는

내가 rabbitmq와 통신 할 수 없었던 요리사 좁힐 수 있었다 첫 번째 문제는,이 라인을 따라 어딘가에 보인다 모든 rabbitmq의 설정이 제거되었습니다.

두 번째 문제는 클라이언트가 client.pem 파일을 생성하기 전에 요리사가 rabbitmq를 통해 couchdb에 pem 정보를 저장하는 것이 분명해졌습니다. 이 프로세스는 문제 1로 인해 완료되지 않았으므로 클라이언트가 생성되었지만 인증 정보가 누락되었습니다.rabbitmq 확인은/etc/요리사 아래에있는 요리사 서버에

솔루션

  1. 정지 모든 요리사 서비스 (SOLR, 서버, 웹 UI) 제거 모든 * .PEM 파일/
  2. 모두로 구성되어 있습니다 필요한 정보와
  3. 시작 요리사 서비스 (SOLR, 서버, 웹 UI)를이 필요한 모든 .PEM 파일
  4. 실행 칼 클라이언트 삭제를 다시 생성하게됩니다 정보로 요리사 server.rb]로 파일을 업데이트 "노드 - 있었어 - 부트 스트랩/새 노드 문제 "
  5. 요리사 클라이언트
0

chef-client가 해당 호스트 이름으로 chef-server에 등록하고있는 것처럼 들리면 client.pem이 변경되어 인증서가 SSL 검사를 통과하지 못하면 403이됩니다. 본질적으로 chef-server는 그 cert의 공개 측을 가지고 있으므로 노드를 인증 할 수 있습니다.

요리사 - 클라이언트 설치 프로세스를 두 번 실행하면이 문제가 발생할 수 있습니다.

+0

답장을 보내 주신 것에 대해 감사드립니다. 문제를 해결할 수있었습니다. 곧 솔루션을 게시 할 예정입니다. – isawk

1

내가 같은 문제에 직면했다을 실행합니다.

요리사 클라이언트

[2013-11-05T14:21:32+05:30] INFO: *** Chef 0.10.4 *** 
[2013-11-05T14:21:34+05:30] INFO: Client key /etc/chef/client.pem is not present - registering 
[2013-11-05T14:21:36+05:30] INFO: HTTP Request Returned 500 Internal Server Error: Connection refused - connect(2) 
[2013-11-05T14:21:36+05:30] ERROR: Server returned error for http://"chef-server":4000/clients, retrying 1/5 in 4s 
[2013-11-05T14:21:40+05:30] INFO: HTTP Request Returned 409 Conflict: Client already exists 
[2013-11-05T14:21:40+05:30] INFO: HTTP Request Returned 403 Forbidden: You are not allowed to take this action. 
[2013-11-05T14:21:40+05:30] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out 
[2013-11-05T14:21:40+05:30] FATAL: Net::HTTPServerException: 403 "Forbidden" 

나는 요리사 서버가 실행 된 시스템에서 rabbitmq 서버를 다시 시작하여 그것을 해결.

관련 문제