集群創建完成后,您可以通過手動執行腳本功能批量選擇節點來運行指定腳本,以實現個性化需求。本文為您介紹如何添加手動執行腳本。
背景信息
手動執行功能適用于長期存在的集群,對按需創建的臨時集群,應使用引導操作來完成集群初始化工作。引導操作詳情,請參見管理引導操作。
手動執行類似引導操作,在集群創建完成后,您可以通過手動執行功能來安裝集群尚未支持的軟件和服務,例如:
- 使用YUM安裝已經提供的軟件。
- 直接下載公網上公開的軟件。
- 讀取您OSS中的自有數據。
- 安裝并運行服務(例如,Flink或者Impala),但需要編寫的腳本會復雜些。
前提條件
注意事項
- 一個集群同一時間只能運行一個集群腳本,如果有正在運行的集群腳本,則無法再提交執行新的集群腳本。每個集群最多保留10個集群腳本記錄,如果超過10個,則需要您將之前的記錄刪除才能創建新的集群腳本。
- 集群腳本可能在部分節點上運行成功,部分節點上運行失敗。例如,節點重啟導致腳本運行失敗。在解決異常問題后,您可以單獨指定失敗的節點再次運行。當集群擴容后,您也可以指定擴容的節點單獨運行集群腳本。
操作步驟
示例
與引導操作的腳本相似,您可以在集群腳本中指定需要從OSS下載的文件。下載示例文件oss://<yourBucket>/<myFile>.tar.gz到本地,并解壓到/yourDir目錄下。
#!/bin/bash
osscmd --id=<yourAccessKeyId> --key=<yourAccessKeySecret> --host=oss-cn-hangzhou-internal.aliyuncs.com get oss://<yourBucketName>/<yourFile>.tar.gz ./<yourFile>.tar.gz
mkdir -p /<yourDir>
tar -zxvf <yourFile>.tar.gz -C /<yourDir>
說明 OSS地址有內網地址、外網地址和VPC網絡地址之分。如果是經典網絡,則需要指定內網地址(例如,杭州是oss-cn-hangzhou-internal.aliyuncs.com)。如果是VPC網絡,則需要指定VPC內網可以訪問的域名(例如,杭州是vpc100-oss-cn-hangzhou.aliyuncs.com)。
集群腳本也可以通過YUM安裝額外的系統軟件包。例如安裝ld-linux.so.2。
#!/bin/bash
yum install -y ld-linux.so.2
集群默認使用root用戶來執行您指定的腳本。您也可以在腳本中使用su hadoop
切換到hadoop賬戶。