988
iPhone_iPad_Mac_手機_平板_蘋果apple
MetaService__用戶指南_E-MapReduce-阿裏雲
E-MapReduce環境下提供MetaService服務。基於此服務,您可以在E-MapReduce集群中以免AK的方式訪問阿裏雲資源。
默認應用角色
默認地,您在創建集群時將需要向E-MapReduce服務授權一個應用角色(AliyunEmrEcsDefaultRole)。授權之後,您在E-MapReduce上的作業將可以無需顯式輸入AK來訪問阿裏雲資源。AliyunEmrEcsDefaultRole默認授予以下權限策略:
{
"Version": "1",
"Statement": [
{
"Action": [
"oss:GetObject",
"oss:ListObjects",
"oss:PutObject",
"oss:DeleteObject",
"oss:ListBuckets",
"oss:AbortMultipartUpload"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
所以默認情況下,基於MetaService的作業將隻能訪問OSS數據。如果您想基於MetaService訪問其他阿裏雲資源,例如LogService等等,則需要給AliyunEmrEcsDefaultRole補充授予相應的權限。以上操作需要去RAM控製台完成。
注意: 當前metaservice服務隻支持OSS,LogService和MNS數據的免AK操作。請謹慎編輯,刪除默認角色,否則會造成集群創建失敗或者作業運行失敗。
自定義應用角色
大多數情況下,您隻需要使用默認應用角色或者修改默認應用角色即可。E-MapReduce同時支持您使用自定義的應用角色。在創建集群時,您既可以使用默認應用角色,也可以選擇自定義應用角色。如何創建角色並授權給服務,請參考RAM的相關文檔。
訪問MetaService
MetaService是一個HTTP服務,您可以直接訪問這個HTTP服務來獲取相關Meta信息: 例如 “curl https://localhost:10011/cluster-region” 可以獲得當前集群所在Region。
當前MetaService支持以下幾類信息:
- Region: “/cluster-region”
- 角色名: “/cluster-role-name”
- AccessKeyId:”/role-access-key-id”
- AccessKeySecret:”/role-access-key-secret”
- SecurityToken:”/role-security-token”
- 網絡類型:”/cluster-network-type”
使用MetaService
基於MetaSerivce服務,我們可以在作業中免AK地訪問阿裏雲資源,這樣可以帶來兩個優勢:
- 降低AK泄漏的風險。基於RAM的使用方式,可以將安全風險降到最低。需要什麼權限就給角色授予什麼權限,做到權限最小化。
- 提高用戶體驗。尤其在交互式訪問OSS資源時,可以避免寫一長串的OSS路徑。
下麵示例幾種使用方式:
I. Hadoop命令行查看OSS數據
舊方式: hadoop fs -ls oss://ZaH******As1s:Ba23N**************sdaBj2@bucket.oss-cn-hangzhou-internal.aliyuncs.com/a/b/c
新方式: hadoop fs -ls oss://bucket/a/b/c
II. Hive建表
舊方式:
CREATE EXTERNAL TABLE test_table(id INT, name string)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '/t'
LOCATION 'oss://ZaH******As1s:Ba23N**************sdaBj2@bucket.oss-cn-hangzhou-internal.aliyuncs.com/a/b/c';
新方式:
CREATE EXTERNAL TABLE test_table(id INT, name string)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '/t'
LOCATION 'oss://bucket/a/b/c';
III. Spark
舊方式: val data = sc.textFile("oss://ZaH******As1s:Ba23N**************sdaBj2@bucket.oss-cn-hangzhou-internal.aliyuncs.com/a/b/c")
新方式: val data = sc.textFile("oss://bucket/a/b/c")
最後更新:2016-12-19 19:03:59
上一篇:
SSH 登錄集群__用戶指南_E-MapReduce-阿裏雲
下一篇:
開發準備___開發人員指南_E-MapReduce-阿裏雲
數據導入說明__快速開始_大數據開發套件-阿裏雲
WAF排錯手冊__排錯手冊_Web 應用防火牆-阿裏雲
數據編碼方式__公共資源說明_API-Reference_日誌服務-阿裏雲
UnbindMFADevice__用戶管理接口_RAM API文檔_訪問控製-阿裏雲
CreateLoadBalancer__LoadBalancer相關API_API 參考_負載均衡-阿裏雲
PullLogs__日誌庫相關接口_API-Reference_日誌服務-阿裏雲
創建API分組__快速入門(開放API)_API 網關-阿裏雲
原備案不在阿裏雲新增網站圖文引導__流程引導圖_備案流程_備案-阿裏雲
短信模板的審核要求是什麼?__常見問題_短信服務-阿裏雲
ECS權重作用是什麼__後端 ECS 服務器常見問題_常見問題_負載均衡-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲