예,이 모든 것을 처리하기 위해 "spiceweasel"이라는 도구가 있지만 정말 궁금합니다. 어떻게 그리고 왜 셰프에서 그렇게 작동하는지 궁금합니다.노드의 상태를 덮어 쓰지 않고 어떻게 업데이트 할 수 있습니까?
셰프는 설명 된 환경의 전체 저장소를 갖기에 좋은 아이디어를 제공하지만,이 아이디어는 훌륭하지만 예상대로 노드가 작동하지 않는 것 같습니다.
여기 상황은 다음과 같습니다. 클러스터에 bootstraped
및 provisioned
노드가 이미 있습니다. 아시다시피, 각 노드는 내가 정의 할 어떤 간격으로 chef-client
을 실행합니다. 그래서 각 노드는 무작위 간격으로 조리법을 다시 실행하여 아무런 변화가 없는지 확인하고 변경 사항이 있으면 다시 변경합니다.
따라서 nodes/
폴더가 저장소에 있습니다. knife upload /nodes
을 수행 할 때 모든 노드 구성이 으로 업데이트되어야합니다.이지만 이제 은 노드 상태를 완전히 덮어 씁니다. 왜 이것이 나쁜가? 왜냐하면, 내가 노드 구성 파일을 편집하고 chef-server에 업로드 한 다음 노드 상태가 다음 chef-client run
작업까지 리셋한다고 가정 해 보겠습니다. 나는 다른 노드에있는 cookbook/role을 가지고 있으며 특정 노드를 소유하고있다. 노드 중 하나에서 chef-client run
이 수행 될 때 다른 노드의 IP를 찾지 못하고 전체 요리 책이 실행되지 않을 큰 기회가 있습니다!
요리 책에 노드 상태를 사용하는 것이 좋겠지 만, 어딘가에 있습니다 ... 이제는 업데이트 노드 상태로 덮어 쓰지 말고 옵션을 사용하는 것이 좋습니다.
그래서 질문입니다 : 노드의 상태를 파괴하는 대신 업데이트 할 수 있습니까?
이것은 실제로 훌륭합니다 !!! 팝업창이 나타나지 않으면 답변을 수락했습니다. 저는 실제로 chef-server가 그런 식으로 행동해야하는 이유에 관심이 있습니다. 이것이 요리사 repo 자체에있을 수있는 것은 정말로 멋지다! !! – holms