シェルベースのブートストラップ・ヘルパー関数
ビッグ・データ・サービスのAmbari構成を更新するために、シェル・スクリプト・ベースのブートストラップ・ヘルパー関数が存在します。
ノート
カスタム・ブートストラップ・スクリプトは、
カスタム・ブートストラップ・スクリプトは、
opc
ユーザーとして実行されます。root
アクセスが必要なコマンドを実行するには、sudo
を追加します。ブートストラップ・スクリプトでは、次のイベント・タイプがサポートされています。例については、シェル・スクリプトの例を参照してください。
- CreateBdsInstance
- オンデマンド
- AddWorkerNodes
- ChangeShape
- StartBdsInstance
ブートストラップ・スクリプトを実行するには、「ブートストラップ・スクリプトの実行」を参照してください。
シェルスクリプトのブートストラップヘルパー関数の詳細は、次を参照してください。
ブートストラップ・シェル・スクリプトのヘルパー関数
シェルブートストラップスクリプトの詳細は、Shell Based Bootstrap Helper Functionsを参照してください。
シェル・スクリプト・ヘルパー関数の例は、シェル・スクリプトの例を参照してください。
ブートストラップ・スクリプトを実行するには、「ブートストラップ・スクリプトの実行」を参照してください。
Helper関数 | 機能 |
---|---|
$getClusterName |
クラスタ名を表示します。 |
$getAllNodesIps |
すべてのノードのIPのスペース区切りリストを表示します。 |
$getUtilityNodesIps |
ユーティリティ・ノードのIPのスペース区切りリストを表示します。 |
$getWorkerNodesIps |
ワーカー・ノードのIPのスペース区切りリストを表示します。 |
$getMasterNodesIps |
マスター・ノードのIPのスペース区切りリストを表示します。 |
$getQueryServerNodesIps |
問合せサーバー・ノードのIPのスペース区切りリストを表示します。 |
$eventType |
ブートストラップ・スクリプトを開始したイベント・タイプを表示します。 |
シェル・スクリプトの例
シェル・スクリプト・ヘルパー関数の詳細は、ブートストラップ・シェル・スクリプトのヘルパー関数を参照してください。
例: ノード・タイプを検索するヘルパー関数を含むカスタム・ブートストラップ・スクリプト
#!/bin/bash
#Helper Method Sample
#Use Following Helper function to get list of IPs of all nodes and you can use this to run a command for all nodes
for node in $getAllNodesIps
do
# setup common things for all nodes
echo "Node name: $node"
done
#Cluster Name
echo "Cluster Name"+$getClusterName
#Master Nodes
for node in $getMasterNodesIps
do
# setup common things for master nodes
echo "Master Node name: $node"
done
#Worker Nodes
for node in $getWorkerNodesIps
do
# setup common things for worker nodes
echo "Worker Node name: $node"
done
#Utility Nodes
for node in $getUtilityNodesIps
do
# setup common things for Utility nodes
echo "Utility Node name: $node"
done
#QueryServer Nodes
for node in $getQueryServerNodesIps
do
# setup common things for Query Server nodes
echo "QueryServer Node name : $node"
done
echo "bootstrap script execution complete!!!"
例: クラスタライフサイクルのカスタムブートストラップスクリプト
クラスタの作成、ノードの追加、シェイプの変更などのクラスタ・ライフ・サイクル操作に対してカスタム・ブートストラップ・スクリプトを実行するには、次の例に示すように
$eventType
ヘルパー変数を使用します:#!/bin/bash
#Take action on certain Event Types
echo "Customer Bootstrap Script Execution for EventType :$eventType"
if [ $eventType == "CreateBdsInstance" ]
then
echo "setup things post Cluster Creation"
fi
if [ $eventType == "AddWorkerNodes" ]
then
echo "setup things post ADD Node "
fi
if [ $eventType == "ChangeShape" ]
then
echo "setup things post Change Shape"
fi
if [ $eventType == "on-demand" ]
then
echo "on demand script execution"
fi
if [ $eventType == "StartBdsInstance" ]
then
echo "set up things post Start operation"
fi