Fonctions de l'assistant Bootstrap basé sur le shell
Des fonctions d'aide au démarrage basées sur un script shell existent pour mettre à jour les configurations Ambari dans Big Data Service.
Le script de démarrage personnalisé est exécuté en tant qu'utilisateur
opc
. Pour exécuter une commande nécessitant un accès root
, ajoutez sudo
.Les types d'événement suivants sont pris en charge pour le script d'initialisation. Pour consulter un exemple d'utilisation, reportez-vous à Exemples de script shell.
- CreateBdsInstance
- à la demande
- AddWorkerNodes
- ChangeShape
- StartBdsInstance
Pour exécuter un script de démarrage, reportez-vous à la section Running the Bootstrap Script.
Pour plus d'informations sur les fonctions de l'assistant bootstrap du script shell, reportez-vous aux sections suivantes :
Fonctions helper de script de shell d'initialisation
Pour plus d'informations sur le script d'initialisation de shell, reportez-vous à Fonctions d'assistant d'initialisation basées sur Shell.
Pour obtenir des exemples de fonction d'aide de script shell, reportez-vous à Exemples de script shell.
Pour exécuter un script de démarrage, reportez-vous à la section Running the Bootstrap Script.
Fonction d'aide | Fonctionnalité : |
---|---|
$getClusterName |
Affiche le nom du cluster. |
$getAllNodesIps |
Affiche la liste des adresses IP de tous les noeuds séparées par des espaces. |
$getUtilityNodesIps |
Affiche la liste des adresses IP des noeuds utilitaire, séparées par des espaces. |
$getWorkerNodesIps |
Affiche la liste des adresses IP des noeuds de processus actif séparées par des espaces. |
$getMasterNodesIps |
Affiche la liste des adresses IP des noeuds maître, séparées par des espaces. |
$getQueryServerNodesIps |
Affiche la liste des adresses IP des noeuds de serveur de requête séparées par des espaces. |
$eventType |
Affiche le type d'événement qui a lancé le script de démarrage. |
Exemples de scripts shell
Pour plus d'informations sur les fonctions helper de script shell, reportez-vous à la section Bootstrap Shell Script Helper Functions.
#!/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
comme indiqué dans l'exemple suivant :#!/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