Hi Fay... Instead of PUT, you should do a POST. To create a new kerberos_descriptor artifact. If a kerberos_descriptor artifact already existed, then you out PUT to update it.
I'll have to check, is the documentation I correct or confusing? Rob On Jan 7, 2016, at 6:50 PM, Fay Wang <[email protected]<mailto:[email protected]>> wrote: Thanks, Rob, for the info! I am able to get the default kerberos descriptor via REST api, but get an error when issuing the following command to update the descriptor: curl -H "X-Requested-By:ambari" -u admin:admin -i -X PUT -d @/tmp/descriptor_update.json http://localhost:8080/api/v1/clusters/MyCluster/artifacts/kerberos_descriptor HTTP/1.1 100 Continue HTTP/1.1 404 Not Found User: admin Set-Cookie: AMBARISESSIONID=ia3j9lvqclb6fytb01x5c2vl;Path=/;Secure;HttpOnly Expires: Thu, 01 Jan 1970 00:00:00 GMT Content-Type: text/plain Content-Length: 244 Server: Jetty(8.1.17.v20150415) { "status" : 404, "message" : "org.apache.ambari.server.controller.spi.NoSuchResourceException: The requested resource doesn't exist: Artifact not found, Artifacts/cluster_name=MyCluster AND Artifacts/artifact_name=kerberos_descriptor" } The content of /tmp/descriptor_update.json: { "artifact_data" : { "services" : [ { "configurations" : [ { "core-site" : { "hadoop.proxyuser.HTTP.hosts" : "*" } } ], "name" : "HIVE" } ] } } Thanks in advance for the help! -fay
