我们有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文件,正确的语法是什么
2条答案
按热度按时间mkh04yzy1#
你有没有试着在网上验证你的jsonhttps://jsonformatter.curiousconcept.com/ ? 看起来问题出在一般的json语法上
bt1cpqcv2#
在用于上载新bloueprint.json的curl命令中,您使用
--data @
以及-d @$path/blueprint.json
.-d
以及--data
用于相同的目的,因此首次出现,即。--data @
生效,命令试图定位没有路径的文件,即。""
.您可以删除
--data @
修复Couldn't read data from file ""
错误。