2017-08-08 3 views
1

wir haben viele Ambari LAB Cluster neu zu konfigurieren - Apache Ambari Version 2.5.0.3, während Ambari Agent auf Linux installiert redhat MaschinenWie Ambari Dienste Werte mit blueprint.json Datei

mein Ziel ist es, einen Weg zu finden, aktualisieren Sie die Werte von Dienstleistungen, auf allen Ambari Cluster, durch den Prozess automatisieren

, was wir bisher tun, jede Ambari Cluster nehmen und die Dienste Werte ändern - aber viel Zeit

so nehmen, wenn Wir haben 25 ambari LAB Cluster, dann brauchen wir Zugriff auf jeden ambari cl uster und die Werte ändern, das ist sehr anstrengend, weil wir viele Werte zu ändern ...

, aber wir haben eine neue Idee den Prozess

zu automatisieren, was wir denken, ist einen neuen Entwurf zu erzeugen. json von einiger Ambari Cluster-Datei wie die folgenden:

curl -H "X-Requested-By: ambari" -X GET -u admin:admin http://{ambari_host}:8080/api/v1/clusters/{Cluster_name}\?format\=blueprint > blueprint.json 

dann aktualisieren/die Werte in der neuen blueprint.json Datei

und lädt schließlich/Push auf all c die jSON-Datei ändern

lusters

die große Frage ist:

, wie die neue blueprint.json Datei auf Ambari Cluster hochladen?

ist es möglich Szenario?

Antwort

1

Zum Hochladen der Blueprint-Datei im neuen Cluster kann der folgende Befehl verwendet werden.

curl -H "X-Requested-By: Ambari" --data @ blueprint.json -X POST -u Admin: admin http://<HOSTNAME>: 8080/api/v1/Baupläne/< BLUEPRINT_NAME>

Update <blueprintfile.json> und <BLUEPRINT_NAME> im Befehl.

+0

Ich beabsichtige, die Syntax in wenigen Minuten zu laufen, aber können Sie bitte beraten, wie Sie die BLUEPRINT_NAME finden? oder BLUEPRINT_NAME ist die Blueprintfile.json-Datei? –

+0

Ich Erfolge, um den blue_printname zu finden, aber wenn ich renne - curl -H "X-Requested-By: ambari" - Daten @ -X POST -u Admin: Admin http://160.14.36.28:8080/api/v1/blueprints/HDP01 blueprint.json, es schlägt fehl Warnung: Daten konnten nicht aus der Datei "" gelesen werden, dies führt zu einem leeren POST. –

+0

Ich habe den Befehl aktualisiert, der Dateiname nach --data @ fehlte wegen Stackoverflow-Formatierung, der Blueprint-Dateiname fehlte in dem Befehl, den ich geteilt habe. Sie können einen beliebigen Namen für einen Blueprint verwenden. blueprint.json ist der Name der JSON-Datei, die Sie aus dem Stable-Cluster erstellt haben. – sachin

Verwandte Themen