ambari cluster+上传blueprintjson文件到ambari cluster的正确语法是什么

w8biq8rn  于 2021-05-29  发布在  Hadoop
关注(0)|答案(2)|浏览(452)

我们有ambari cluster 2.5.0.3版,而所有客户机都是linux redhat
首先,我将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文件,对参数及其值进行一些更改
最后,我的目标是将new 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: java.io.StringReader@4a3484a6; line: 1, 
column: 3]"

请问我的语法有什么问题?
为了上传新的update blueprint.json文件,正确的语法是什么

mkh04yzy

mkh04yzy1#

你有没有试着在网上验证你的jsonhttps://jsonformatter.curiousconcept.com/ ? 看起来问题出在一般的json语法上

bt1cpqcv

bt1cpqcv2#

在用于上载新bloueprint.json的curl命令中,您使用 --data @ 以及 -d @$path/blueprint.json . -d 以及 --data 用于相同的目的,因此首次出现,即。 --data @ 生效,命令试图定位没有路径的文件,即。 "" .
您可以删除 --data @ 修复 Couldn't read data from file "" 错误。

相关问题