亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

0036-如何通過CM API優雅的獲取元數據庫密碼

發布時間:2020-04-29 03:42:09 來源:網絡 閱讀:348 作者:Hadoop實操 欄目:大數據

溫馨提示:要看高清無碼套圖,請使用手機打開并單擊圖片放大查看。

1.問題描述


人啊,上了年紀了,總容易忘記一些事情,比如你一不小心就忘記了CDH集群Hive,Hue和Sentry服務的元數據庫密碼,對于數據庫(MySQL/Oracle/PostgreSQL)管理員來說,可能有自己獨特的一些奇技淫巧來找回密碼。但對于咱普通人,其實Cloudera Manger提供了一種很優雅的方式讓你找回元數據庫密碼,那就是神奇的Cloudera Manager API。

2.解決方法

2.1通過HTTP方式


1.獲取Cloudera Manager所有集群信息

在瀏覽器輸入如下地址,將<cmserver>替換為CM的IP地址

http://<cmserver>:7180/api/v10/clusters/

輸入CM的賬號密碼

0036-如何通過CM API優雅的獲取元數據庫密碼

獲取集群信息:

{
  "items" : [ {
    "name" : "cluster",
    "displayName" : "Cluster 1",
    "version" : "CDH5",
    "fullVersion" : "5.11.2",
    "maintenanceMode" : false,
    "maintenanceOwners" : [ ],
    "clusterUrl" : "http://ip-172-31-22-86.ap-southeast-1.compute.internal:7180/cmf/clusterRedirect/cluster"
  } ]
}

0036-如何通過CM API優雅的獲取元數據庫密碼

2.通過上一步獲取的集群信息,獲取指定集群的Services

在瀏覽器輸入如下地址,將<cmserver>替換成CM的IP地址,<cluster_name>替換為上一步中獲取到的集群名稱

http://<cmserver>:7180/api/v10/clusters/<cluster_name>/services/

0036-如何通過CM API優雅的獲取元數據庫密碼

{
  "items" : [ …{
    "name" : "hue",
    "type" : "HUE",
    "clusterRef" : {
      "clusterName" : "cluster"
    },
    "serviceUrl" : "http://ip-172-31-22-86.ap-southeast-1.compute.internal:7180/cmf/serviceRedirect/hue",
    "serviceState" : "STARTED",
    "healthSummary" : "GOOD",
    "healthChecks" : [ {
      "name" : "HUE_HUE_SERVERS_HEALTHY",
      "summary" : "GOOD"
    } ],
    "configStalenessStatus" : "FRESH",
    "clientConfigStalenessStatus" : "FRESH",
    "maintenanceMode" : false,
    "maintenanceOwners" : [ ],
    "displayName" : "Hue"
  } …]
}

以上為獲取到的json數據片段,標紅部分為Services名稱。

3.通過服務名稱獲取,該服務的配置信息

在瀏覽器輸入如下地址,將<cmserver>替換成CM的IP地址,<cluster_name>替換為集群名稱,將<service_name>替換為指定服務的名稱

http://<cmserver>:7180/api/v10/clusters/<cluster_name>/services/<service_name>/config

0036-如何通過CM API優雅的獲取元數據庫密碼

{
  "items" : [ {
    "name" : "database_host",
    "value" : "ip-172-31-22-86.ap-southeast-1.compute.internal"
  }, {
    "name" : "database_password",
    "value" : "password"
  }, {
    "name" : "database_type",
    "value" : "mysql"
  }... ]
}

這樣就獲取到了相應服務的配置信息,標紅部分即為該服務的數據庫密碼。

2.2命令行方式


1.獲取集群信息

將<cm_admin_user>替換為CM的用戶名,<cm_admin_pass>替換為CM對應用戶密碼,<cmserver>替換為CM的IP地址

curl -v -k -X GET -u <cm_admin_user>:<cm_admin_pass> http://<cmserver>:7180/api/v10/clusters/

命令行執行

[ec2-user@ip-172-31-22-86 ~]$ curl -v -k -X GET -u admin:admin http://ip-172-31-22-86:7180/api/v10/clusters/
...
{
  "items" : [ {
    "name" : "cluster",
    "displayName" : "Cluster 1",
    "version" : "CDH5",
    "fullVersion" : "5.11.2",
    "maintenanceMode" : false,
    "maintenanceOwners" : [ ],
    "clusterUrl" : "http://ip-172-31-22-86.ap-southeast-1.compute.internal:7180/cmf/clusterRedirect/cluster"
  } ]
* Connection #0 to host ip-172-31-22-86 left intact
}
[ec2-user@ip-172-31-22-86 ~]$ 

0036-如何通過CM API優雅的獲取元數據庫密碼

標注部分為獲取到的集群名稱。

2.獲取指定集群的Services

將如下命令中相應參數替換,<cloudera_name>替換為上一步獲取到的集群名稱

curl -v -k -X GET -u <cm_admin_user>:<cm_admin_pass> http://<cmserver>:7180/api/v10/clusters/<cluster_name>/services/

命令行執行:

[ec2-user@ip-172-31-22-86 ~]$ curl -v -k -X GET -u admin:admin http://ip-172-31-22-86:7180/api/v10/clusters/cluster/services/
...
{
  "items" : [ {
    "name" : "hive",
    "type" : "HIVE",
    "clusterRef" : {
      "clusterName" : "cluster"
    },
    "serviceUrl" : "http://ip-172-31-22-86.ap-southeast-1.compute.internal:7180/cmf/serviceRedirect/hive",
    "serviceState" : "STARTED",
    "healthSummary" : "GOOD",
    "healthChecks" : [ {
      "name" : "HIVE_HIVEMETASTORES_HEALTHY",
      "summary" : "GOOD"
    }, {
      "name" : "HIVE_HIVESERVER2S_HEALTHY",
      "summary" : "GOOD"
    } ],
    "configStalenessStatus" : "FRESH",
    "clientConfigStalenessStatus" : "FRESH",
    "maintenanceMode" : false,
    "maintenanceOwners" : [ ],
    "displayName" : "Hive"
  } ...]
}
[ec2-user@ip-172-31-22-86 ~]$ 

0036-如何通過CM API優雅的獲取元數據庫密碼

標注部分為服務名稱。

3.根據獲取到的Service名稱,獲取該服務的配置

將一下命令中參數替換為自己環境信息,<service_name>替換為上一步獲取到的服務名稱。

curl -v -k -X GET -u <cm_admin_user>: <cm_admin_pass>http://<cmserver>:7180/api/v10/clusters/<cluster_name>/services/<service_name>/config

命令行執行:

[ec2-user@ip-172-31-22-86 ~]$ curl -v -k -X GET -u admin:admin http://ip-172-31-22-86:7180/api/v10/clusters/cluster/services/hive/config
...
{
  "items" : [ {
    "name" : "hive_metastore_database_host",
    "value" : "ip-172-31-22-86.ap-southeast-1.compute.internal"
  }, {
    "name" : "hive_metastore_database_password",
    "value" : "password"
  }, {
    "name" : "mapreduce_yarn_service",
    "value" : "yarn"
  }, {
    "name" : "zookeeper_service",
    "value" : "zookeeper"
  } ]
* Connection #0 to host ip-172-31-22-86 left intact
}
[ec2-user@ip-172-31-22-86 ~]$ 

0036-如何通過CM API優雅的獲取元數據庫密碼

上圖標注部分即為hive服務元數據庫的密碼。

3.總結


通過以上兩種方式可以獲取Hue、Hive、Sentry服務元數據庫密碼,但不支持獲取Oozie、AM、CM、RM、Navigator等服務的數據庫密碼。注意:以上操作需要使用CM的管理員用戶獲取,非管理員用戶獲取的密碼顯示為“REDACTED”。

更多關于CM的API接口可參考官網:

https://×××w.cloudera.com/documentation/enterprise/latest/topics/cm\_intro\_api.html

醉酒鞭名馬,少年多浮夸! 嶺南浣溪沙,嘔吐酒肆下!摯友不肯放,數據玩的花!
溫馨提示:要看高清無碼套圖,請使用手機打開并單擊圖片放大查看。

推薦關注Hadoop實操,第一時間,分享更多Hadoop干貨,歡迎轉發和分享。

0036-如何通過CM API優雅的獲取元數據庫密碼
原創文章,歡迎轉載,轉載請注明:轉載自微信公眾號Hadoop實操

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

榆树市| 汽车| 隆林| 汝城县| 崇州市| 永川市| 固始县| 湖南省| 万荣县| 浦北县| 锡林浩特市| 炎陵县| 绵竹市| 张家口市| 石首市| 丰台区| 嘉定区| 循化| 梧州市| 平顺县| 肃宁县| 高清| 旅游| 淳化县| 堆龙德庆县| 临安市| 清苑县| 精河县| 梁平县| 象山县| 北京市| 乐业县| 榆树市| 公安县| 花莲县| 大足县| 河北区| 邵阳县| 甘肃省| 资源县| 兴安县|