Funciones de ayuda de inicialización de datos basadas en shell

Existen funciones de ayuda de inicialización de comandos basada en shell para actualizar las configuraciones de Ambari en Big Data Service.

Nota

El script de inicialización de datos personalizado se ejecuta como usuario opc. Para ejecutar un comando que necesite acceso root, agregue sudo.

Los siguientes tipos de eventos están soportados para la secuencia de comandos de inicialización de datos. Para obtener más información, consulte Ejemplos de scripts de shell.

  • CreateBdsInstance
  • bajo demanda
  • AddWorkerNodes
  • ChangeShape
  • StartBdsInstance

Para ejecutar una secuencia de comandos de inicialización de datos, consulte Running the Bootstrap Script.

Para obtener más información sobre las funciones auxiliares de inicialización de datos del script de shell, consulte:

Funciones del asistente de script de shell de inicialización de datos

Para obtener más información sobre la secuencia de comandos de inicialización de datos del shell, consulte Shell Based Bootstrap Helper Functions.

Para ver ejemplos de funciones auxiliares de secuencias de comandos de shell, consulte Shell Script Examples.

Para ejecutar una secuencia de comandos de inicialización de datos, consulte Running the Bootstrap Script.

Función Helper Funcionalidad
$getClusterName Muestra el nombre del cluster.
$getAllNodesIps Muestra una lista separada por espacios de IP de todos los nodos.
$getUtilityNodesIps Muestra una lista separada por espacios de IP de los nodos de utilidad.
$getWorkerNodesIps Muestra una lista separada por espacios de IP de los nodos de trabajador.
$getMasterNodesIps Muestra una lista separada por espacios de IP de los nodos maestros.
$getQueryServerNodesIps Muestra una lista separada por espacios de IP de los nodos del servidor de consultas.
$eventType Muestra el tipo de evento que inició el script de inicialización de datos.

Ejemplos de script de shell

Para obtener más información sobre las funciones del asistente de secuencias de comandos de shell, consulte Bootstrap Shell Script Helper Functions.

Ejemplo: secuencia de comandos de inicialización de datos personalizada con funciones auxiliares para buscar los tipos de nodo
#!/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!!!"
Ejemplo: secuencia de comandos de inicialización de datos personalizada para un ciclo de vida de cluster
Para ejecutar un script de inicialización de datos personalizado para una operación de ciclo de vida de cluster, como crear cluster, agregar nodo o cambiar unidad, utilice la variable auxiliar $eventType como se muestra en el siguiente ejemplo:
#!/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