2017-08-09 25 views
0

すべてのクライアントマシンが最初のLinux RedHatのAmbariクラスタ+青写真JSONファイルをアップロードするために、右の構文はambariクラスタに何である

ている間、我々は、Ambariクラスタバージョン2.5.0.3を持っている私はJSONファイルを生成次のように私のLinuxマシン:(ambariサーバー・マシン上の)

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

、私はパラメータとその値ついに

私の目標についてのいくつかの変更をblueprint.jsonファイルを更新影響を受けるために新しいblueprint.jsonをambariクラスタにアップロードすることです!

path=/root 

curl -H "X-Requested-By: ambari" --data @ -X POST -u admin:admin http://130.14.6.28:8080/api/v1/blueprints/HDP01 -d @$path/blueprint.json 

が、私は次のエラー(間違った構文ためらしい)

Warning: Couldn't read data from file "", this makes an empty POST. { 
"status" : 400, "message" : "Invalid Request: Malformed Request Body. An 
exception occurred parsing the request body: Unexpected character ('&' 
(code 38)): expected a valid value (number, String, array, object, 'true', 
'false' or 'null')\n at [Source: [email protected]; line: 1, 
column: 3]" 

を取得し、私の構文で間違っているものをアドバイスをしてください?

そしてblueprint.json

答えて

0

あなたは、例えばオンラインJSONを検証してみましたファイルの新しいアップデートをアップロードするために右の構文は何ですかhttps://jsonformatter.curiousconcept.com/に?問題は、あなたが-d @$path/blueprint.jsonと同様--data @を使用している新しいbloueprint.jsonをアップロードするために使用curlコマンドで一般的なJSONの構文

0

であるよう が見えます。 -d--dataが同じ目的で使用されているため、最初に出現するのは--data @となり、コマンドはパスのないファイル、つまり""を見つけようとしました。

--data @を削除してCouldn't read data from file ""エラーを修正することがあります。