Как перенастроить значения сервисов Ambari с помощью файла blueprint.json
У нас есть много LAB-кластеров Ambari - Apache Ambari версии 2.5.0.3, в то время как агент ambari установлен на компьютерах Redhat Linux
моя цель состоит в том, чтобы найти способ обновить значения сервисов во всех кластерах Ambari, автоматизировав процесс
то, что мы делаем до сих пор, это взять каждый кластер ambari и изменить значения сервисов - но это займет много времени
так что если у нас есть diff 25 ambari LAB кластеров, то нам нужно получить доступ к каждому ambari кластеру и изменить значения, это очень утомительно, потому что у нас есть много значений для изменения...
но у нас есть новая идея, чтобы автоматизировать процесс
мы думаем создать новый blueprint.json из некоторого файла кластера ambari следующим образом:
curl -H "X-Requested-By: ambari" -X GET -u admin:admin http://{ambari_host}:8080/api/v1/clusters/{Cluster_name}\?format\=blueprint > blueprint.json
затем обновите / измените значения в новом файлеblueprint.json
и, наконец, загрузить / отправить файл JSON на всех кластерах
большой вопрос:
Как загрузить новый файл blueprint.json в кластере ambari?
Возможен ли сценарий?
1 ответ
Вы можете зарегистрироваться и загрузить новый проект, используя запрос POST, следующим образом.
curl --verbose -H "X-Requested-By: ambari" -X POST -u admin:admin http://{ambari_host}:8080/api/v1/blueprints/:{new blueprint name}?validate_topology=false --data "@./blueprint.json"
Но это не изменит конфигурацию существующего кластера. Чертежи можно использовать только перед созданием нового кластера.
Вы можете обратиться к этому документу, если вам нужно изменить существующие конфигурации кластера.