перезапустить jobtracker через API менеджера cloudera

Я пытаюсь перезапустить Mapreduce Jobtracker через Cloudera Manager API. Статистика для Jobtracker выглядит следующим образом:

local-iMac-399:$ curl -u 'admin:admin' 'http://hadoop-namenode.dev.com:7180/api/v6/clusters/Cluster%201/services/mapreduce/roles/mapreduce-JOBTRACKER-0675ebab2b87e3869e0d90167cf4bf86'
{
  "name" : "mapreduce-JOBTRACKER-0675ebab2b87e3869e0d90167cf4bf86",
  "type" : "JOBTRACKER",
  "serviceRef" : {
    "clusterName" : "cluster",
    "serviceName" : "mapreduce"
  },
  "hostRef" : {
    "hostId" : "24259373-7e71-4089-8251-faf055e42ad7"
  },
  "roleUrl" : "http://hadoop-namenode.dev.com:7180/cmf/roleRedirect/mapreduce-JOBTRACKER-0675ebab2b87e3869e0d90167cf4bf86",
  "roleState" : "STARTED",
  "healthSummary" : "GOOD",
  "healthChecks" : [ {
  "name" : "JOB_TRACKER_FILE_DESCRIPTOR",
  "summary" : "GOOD"
}, {
"name" : "JOB_TRACKER_GC_DURATION",
"summary" : "GOOD"
}, {
"name" : "JOB_TRACKER_HOST_HEALTH",
"summary" : "GOOD"
}, {
"name" : "JOB_TRACKER_LOG_DIRECTORY_FREE_SPACE",
"summary" : "GOOD"
}, {
"name" : "JOB_TRACKER_SCM_HEALTH",
"summary" : "GOOD"
}, {
"name" : "JOB_TRACKER_UNEXPECTED_EXITS",
"summary" : "GOOD"
}, {
"name" : "JOB_TRACKER_WEB_METRIC_COLLECTION",
"summary" : "GOOD"
} ],
"configStalenessStatus" : "STALE",
"haStatus" : "ACTIVE",
"maintenanceMode" : false,
"maintenanceOwners" : [ ],
"commissionState" : "COMMISSIONED",
"roleConfigGroupRef" : {
"roleConfigGroupName" : "mapreduce-JOBTRACKER-BASE"
}
}
local-iMac-399:$ 

Не знаю, как использовать API для перезапуска только Jobtracker?

Я попытался перезапустить службу Hive, используя следующую команду, но получил ошибку

local-iMac-399:$curl -X POST -u 'admin:admin'  'http://hadoop-namenode.dev.com:7180/api/v6/clusters/Cluster%201/services/hive/roleCommands/restart'
{
 "message" : "No content to map due to end-of-input\n at [Source: org.apache.cxf.transport.http.AbstractHTTPDestination$1@4169c499; line: 1, column: 1]"
 }

Буду признателен, если кто-нибудь поможет понять, как использовать Cloudera Manager API.


person roy    schedule 28.07.2014    source источник


Ответы (1)


Основываясь на предоставленной информации, именно так вы вызовете перезапуск CM API JobTracker.

curl -u 'admin:admin' -X POST -H "Content-Type:application/json" -d '{"items":["mapreduce-JOBTRACKER-0675ebab2b87e3869e0d90167cf4bf86"]}' 'http://hadoop-namenode.dev.com:7180/api/v6/clusters/Cluster%201/services/mapreduce/roleCommands/restart'
person Michalis    schedule 20.09.2014