나는 두 가지를 달성하고 싶다 바로 사용할 수있는 기능을 제공하고 루비가 허용하는 것만으로도 문법과 같은 의사 코드를 이해할 수 있지만 실행하지 않기 때문에 실제 도움을 줄 수있는 조언이나 조언이 필요합니다. 계속하기 전에 어떤 특정 상태를 확인하고자하는 경우요리사와 함께 ruby에서 elasticsearch 상태 검사를 코딩하는 방법? 어떤 요리사 사이에 이제 <p></p>를 진행하기 전에 1) elasticsearch가 실행되고 있지 않은 경우 (모든 무의미 PID 파일을 청소) 한 다음 시작하고 2) ES가 시작되었는지 확인하십시오
bash "wait for it to start up" do
user "root"
only_if { # pretty sure this syntax is all incorrect, any ideas to make it happen?
(sudo service elasticsearch status).match(/^elasticsearch running with PID/)
}
retries 20
retry_delay 5
code <<-EOS
echo "I can now go on with my life..."
EOS
end
주방장이 서비스 감독에 적합한 도구라고 생각하지 않습니다. runit, daemontools, bluepill, monit 또는 upstart 대신이 작업을 위해 특별히 만든 도구 중 하나를 사용하십시오. –
좋은 포인트! 그리고 저는 서비스 감독을 위해 이것을하지 않습니다 ... 저는 요리사를 통해 인스턴스를 프로비저닝하는 중이며 run_list에 여러 가지 요리법이 있습니다. ES 이후에 나오는 요리법에는 개념이 없으므로이 검사가 필요합니다. 레시피 런 사이의 지연. Monit은 실제로 실행되는 몇 가지 조리법 중 하나이므로, 나는 루비의 요리사를 통해이 검사를해야합니다. – pulkitsinghal