У меня очень странные проблемы с поиском Chef. Я хочу найти экземпляры, которые не смогли правильно загрузиться, и я использую два метода для обнаружения этого: экземпляры в среде по умолчанию _default
, и экземпляры, в которых отсутствует роль, к которой я обращаюсь все управляемые экземпляры, role[base]
. Прямо сейчас у меня есть один неудачный экземпляр, которого нет в role[base]
:
$ knife search "NOT role:base"
1 items found
Так что определенно есть узел, соответствующий одному из моих критериев. Но если я попытаюсь найти подходящие экземпляры либо по моим критериям, это не работает - я не получаю результатов:
$ knife search "environment:_default OR NOT role:base"
0 items found
$ knife search "(environment:_default OR NOT role:base)"
0 items found
$ knife search "(environment:_default) OR (NOT role:base)"
0 items found
в порядке, в руководстве говорится могут возникнуть проблемы с объединением AND
и NOT
, так что, возможно, есть проблема с OR
?
$ knife search "(environment:_default OR -role:base)"
0 items found
Нет. Может дело в порядке?
$ knife search "(NOT role:base OR environment:_default)"
ERROR: knife search failed: invalid search query: '(NOT role:base OR environment:_default)'
$ knife search "NOT role:base OR environment:_default"
ERROR: knife search failed: invalid search query: 'NOT role:base OR environment:_default'
Не повезло. Как я могу найти экземпляры, в которых отсутствует определенная роль или которые находятся в определенной среде? Я застрял в том, чтобы выполнять два отдельных поиска и объединять результаты?