スクリプト アクションを使用して Azure HDInsight クラスターをカスタマイズするCustomize Azure HDInsight clusters by using script actions

Azure HDInsight には、クラスターをカスタマイズするためにカスタム スクリプトを呼び出すスクリプト アクションという構成方法があります。Azure HDInsight provides a configuration method called script actions that invokes custom scripts to customize the cluster. これらのスクリプトは、追加コンポーネントのインストールおよび構成設定の変更に使用されます。These scripts are used to install additional components and change configuration settings. スクリプト アクションは、クラスターの作成中または作成後に使用できます。Script actions can be used during or after cluster creation.

スクリプト アクションは、HDInsight アプリケーションとして Azure Marketplace にも発行することができます。Script actions can also be published to the Azure Marketplace as an HDInsight application. HDInsight のアプリケーションについて詳しくは、「Azure Marketplace への HDInsight アプリケーションの発行」をご覧ください。For more information on HDInsight applications, see Publish an HDInsight application in the Azure Marketplace.

アクセス許可Permissions

ドメイン参加済みの HDInsight クラスターでは、クラスターでスクリプト アクションを使用するときに、次の 2 つの Apache Ambari アクセス許可が必要になります。For a domain-joined HDInsight cluster, there are two Apache Ambari permissions that are required when you use script actions with the cluster:

  • AMBARI.RUN_CUSTOM_COMMANDAMBARI.RUN_CUSTOM_COMMAND. Ambari の管理者ロールには、既定でこのアクセス許可があります。The Ambari Administrator role has this permission by default.
  • CLUSTER.RUN_CUSTOM_COMMANDCLUSTER.RUN_CUSTOM_COMMAND. HDInsight クラスターの管理者と Ambari の管理者はいずれも、既定でこのアクセス許可を持っています。Both the HDInsight Cluster Administrator and Ambari Administrator have this permission by default.

ドメイン参加済みの HDInsight でのアクセス許可の設定については、「Enterprise セキュリティ パッケージを使用して HDInsight クラスターを管理する」をご覧ください。For more information on working with permissions with domain-joined HDInsight, see Manage HDInsight clusters with Enterprise Security Package.

アクセス制御Access control

自分が管理者または所有者ではない Azure サブスクリプションを使用している場合、自分の Azure アカウントに、HDInsight クラスターが含まれるリソース グループに対して共同作成者以上のアクセスが設定されていることを確認する必要があります。If you aren't the administrator or owner of your Azure subscription, your account must have at least Contributor access to the resource group that contains the HDInsight cluster.

HDInsight クラスターを作成する場合は、Azure サブスクリプションに対して共同作成者以上のアクセスを持つ別のユーザーが、あらかじめ HDInsight のプロバイダーを登録しておく必要があります。If you create an HDInsight cluster, someone with at least Contributor access to the Azure subscription must have previously registered the provider for HDInsight. プロバイダーの登録は、サブスクリプションに対する共同作成者アクセス権を持つユーザーが、そのサブスクリプションで初めてリソースを作成したときに行われます。Provider registration happens when a user with Contributor access to the subscription creates a resource for the first time on the subscription. また、REST を使用してプロバイダーを登録する場合は、リソースの作成は不要です。It can also be done without creating a resource if you register a provider by using REST.

アクセス管理の操作について詳しくは、次の記事をご覧ください。Get more information on working with access management:

スクリプト アクションについてUnderstand script actions

スクリプト アクションは、HDInsight クラスター内のノードで実行される Bash スクリプトです。A script action is Bash script that runs on the nodes in an HDInsight cluster. スクリプト アクションの特性と機能を次に示します。Characteristics and features of script actions are as follows:

  • HDInsight クラスターからアクセスできる URI に保存されている必要があります。Must be stored on a URI that's accessible from the HDInsight cluster. たとえば保存スペースとして、次の場所を使用できます。The following are possible storage locations:

    • 通常のクラスターの場合:For regular clusters:

      • ADLS Gen1:HDInsight が Data Lake Storage へのアクセスに使用するサービス プリンシパルには、スクリプトに対する読み取りアクセスが必要です。ADLS Gen1: The service principal HDInsight uses to access Data Lake Storage must have read access to the script. Data Lake Storage Gen1 に格納されているスクリプトの URI の形式は、adl://DATALAKESTOREACCOUNTNAME.azuredatalakestore.net/path_to_file になります。The URI format for scripts stored in Data Lake Storage Gen1 is adl://DATALAKESTOREACCOUNTNAME.azuredatalakestore.net/path_to_file.

      • Azure ストレージ アカウントの BLOB (HDInsight クラスターのプライマリ ストレージ アカウントまたはセカンダリ ストレージ アカウント)。A blob in an Azure Storage account that's either the primary or additional storage account for the HDInsight cluster. HDInsight には、両方のタイプのストレージ アカウントに対するアクセス権がクラスターの作成時に付与されます。HDInsight is granted access to both of these types of storage accounts during cluster creation.

        重要

        この Azure ストレージ アカウントでは、ストレージ キーのローテーションを行わないでください。そこにスクリプトが格納されている後続のスクリプト アクションが失敗します。Do not rotate the storage key on this Azure Storage account, as it will cause subsequent script actions with scripts stored there to fail.

      • http:// パスを介してアクセス可能なパブリック ファイル共有サービス。A public file-sharing service accessible through http:// paths. たとえば、Azure Blob、GitHub、OneDrive などです。Examples are Azure Blob, GitHub, OneDrive.

        URI の例については、「スクリプト アクションのサンプル スクリプト」をご覧ください。For example URIs, see Example script action scripts.

    • ESP を使用するクラスターの場合:For clusters with ESP:

      • wasb://、wasbs://、または http[s]:// の URI がサポートされます。The wasb:// or wasbs:// or http[s]:// URIs are supported.
  • 特定の種類のノードのみで実行するように制限できます。Can be restricted to run on only certain node types. たとえば、ヘッド ノードやワーカー ノードなどです。Examples are head nodes or worker nodes.

  • 保存することも、アドホックに使うこともできます。Can be persisted or ad hoc.

    保存済みスクリプトは、スケーリング操作でクラスターに追加される新しいワーカー ノードをカスタマイズするために使われます。Persisted scripts are used to customize new worker nodes added to the cluster through scaling operations. スケーリング操作が発生したとき、保存済みスクリプトによって、別の種類のノードに変更が適用されることもあります。A persisted script might also apply changes to another node type when scaling operations occur. たとえば、ヘッド ノードなどです。An example is a head node.

    重要

    保存済みスクリプト アクションには一意の名前が必要です。Persisted script actions must have a unique name.

    アドホック スクリプトは保存されません。Ad hoc scripts aren't persisted. スクリプトの実行後にクラスターに追加された worker ノードには適用されません。They aren't applied to worker nodes added to the cluster after the script has run. 後でアドホック スクリプトを保存済みスクリプトに昇格したり、保存済みスクリプトをアドホック スクリプトに降格したりできます。Then you can promote an ad hoc script to a persisted script or demote a persisted script to an ad hoc script.

    重要

    クラスターの作成時に使用されるスクリプト アクションは自動的に保存されます。Script actions used during cluster creation are automatically persisted.

    失敗したスクリプトは、保存するように指定した場合でも保存されません。Scripts that fail aren't persisted, even if you specifically indicate that they should be.

  • 実行中にスクリプトによって使用されるパラメーターを受け取ることができます。Can accept parameters that are used by the script during execution.

  • クラスター ノードでルート レベルの権限を使用して実行されます。Run with root-level privileges on the cluster nodes.

  • Azure portal、Azure PowerShell、Azure クラシック CLI、または HDInsight .NET SDK で使用できます。Can be used through the Azure portal, Azure PowerShell, the Azure classic CLI, or the HDInsight .NET SDK.

クラスターには、実行されたすべてのスクリプトの履歴が保持されます。The cluster keeps a history of all scripts that have been run. 履歴は、昇格または降格の操作のためスクリプトの ID を検索する必要がある場合に便利です。The history helps when you need to find the ID of a script for promotion or demotion operations.

重要

スクリプト アクションで行われた変更を自動的に元に戻すことはできません。There's no automatic way to undo the changes made by a script action. スクリプトの変更は、手動またはスクリプトを使用して戻す必要があります。Either manually reverse the changes or provide a script that reverses them.

クラスターの作成処理でのスクリプト アクションScript action in the cluster creation process

クラスターの作成時に使用されるスクリプト アクションは、既存のクラスターで実行されるスクリプト アクションとは少し異なります。Script actions used during cluster creation are slightly different from script actions run on an existing cluster:

  • このスクリプトは、自動的に保存されます。The script is automatically persisted.

  • スクリプトのエラーによって、クラスターの作成プロセスが失敗することがあります。A failure in the script can cause the cluster creation process to fail.

次の図は、作成処理中にスクリプト アクションが実行された場合を示しています。The following diagram illustrates when script action runs during the creation process:

クラスター作成時の HDInsight クラスターのカスタマイズと段階HDInsight cluster customization and stages during cluster creation

スクリプトは HDInsight の構成中に実行されます。The script runs while HDInsight is being configured. スクリプトは、クラスター内の指定されたすべてのノードで並列して実行されます。The script runs in parallel on all the specified nodes in the cluster. ノードのルート権限で実行されます。It runs with root privileges on the nodes.

注意

サービスの停止と開始などの操作も行うことができます (Apache Hadoop 関連のサービスも含みます)。You can perform operations like stopping and starting services, including Apache Hadoop-related services. サービスを停止する場合は、スクリプトが完了する前に Ambari サービスや他の Hadoop 関連のサービスが実行していることを確認します。If you stop services, make sure that the Ambari service and other Hadoop-related services are running before the script finishes. これらのサービスでは、クラスターの作成時にクラスターが正常に稼動しているかどうかを確認する必要があります。These services are required to successfully determine the health and state of the cluster while it's being created.

クラスターの作成時に、指定された順序で呼び出される。During cluster creation, you can use many script actions at once. 複数のスクリプト アクションを指定できます。These scripts are invoked in the order in which they were specified.

重要

スクリプト アクションは、60 分以内に完了する必要があります。完了しないとタイムアウトします。クラスターのプロビジョニング中に、スクリプトは他のセットアップ プロセスや構成プロセスと同時に実行されます。Script actions must finish within 60 minutes, or they time out. During cluster provisioning, the script runs concurrently with other setup and configuration processes. CPU 時間やネットワーク帯域幅などのリソースの競合が原因で、開発環境の場合よりスクリプトの完了に時間がかかる可能性があります。Competition for resources such as CPU time or network bandwidth might cause the script to take longer to finish than it does in your development environment.

スクリプトの実行時間を最小限に抑えるために、ソースからアプリケーションをダウンロードしてコンパイルするなどのタスクを実行しないようにしてください。To minimize the time it takes to run the script, avoid tasks like downloading and compiling applications from the source. アプリケーションをプリコンパイルし、バイナリを Azure Storage に格納します。Precompile applications and store the binary in Azure Storage.

実行中のクラスターでのスクリプト アクションScript action on a running cluster

既に実行中のクラスターで実行されたスクリプトのエラーによって、クラスターの状態が自動的に失敗に変更されることはありません。A failure in a script run on an already running cluster doesn't automatically cause the cluster to change to a failed state. スクリプトが完了した後、クラスターは実行中状態に戻ります。After a script finishes, the cluster should return to a running state.

重要

クラスターが実行中状態であっても、失敗したスクリプトによって何かが破壊されている可能性があります。Even if the cluster has a running state, the failed script might have broken things. たとえば、スクリプトによって、クラスターに必要なファイルが削除されることがあります。For example, a script might delete files needed by the cluster.

スクリプト アクションは、ルート権限で実行されます。Scripts actions run with root privileges. スクリプトをクラスターに適用する前に、そのスクリプトによる処理を必ず理解しておく必要があります。Make sure that you understand what a script does before you apply it to your cluster.

クラスターにスクリプトを適用すると、クラスターの状態は実行中から承認済みに変わります。When you apply a script to a cluster, the cluster state changes from Running to Accepted. その後、HDInsight 構成に変化し、最後に、正常なスクリプトは実行中に戻ります。Then it changes to HDInsight configuration and, finally, back to Running for successful scripts. スクリプトの状態はスクリプト アクションの履歴に記録されます。The script status is logged in the script action history. この情報は、スクリプトが成功したか失敗したかを示します。This information tells you whether the script succeeded or failed. たとえば、Get-AzHDInsightScriptActionHistory PowerShell コマンドレットでは、スクリプトの状態が示されます。For example, the Get-AzHDInsightScriptActionHistory PowerShell cmdlet shows the status of a script. 次のテキストのような情報が返されます。It returns information similar to the following text:

ScriptExecutionId : 635918532516474303
StartTime         : 8/14/2017 7:40:55 PM
EndTime           : 8/14/2017 7:41:05 PM
Status            : Succeeded

重要

クラスターが作成された後で、クラスターのユーザー、管理者、パスワードを変更した場合、このクラスターに対してスクリプト アクションを実行すると失敗する可能性があります。If you change the cluster user, admin, password after the cluster is created, script actions run against this cluster might fail. worker ノードを対象とする保存済みスクリプト アクションがある場合、クラスターのサイズを変更すると、スクリプトは失敗する可能性があります。If you have any persisted script actions that target worker nodes, these scripts might fail when you scale the cluster.

スクリプト アクションのサンプル スクリプトExample script action scripts

スクリプト アクションのスクリプトは、次のユーティリティで使用できます。Script action scripts can be used through the following utilities:

  • Azure ポータルThe Azure portal
  • Azure PowerShellAzure PowerShell
  • Azure クラシック CLIThe Azure classic CLI
  • An HDInsight .NET SDKAn HDInsight .NET SDK

HDInsight は、HDInsight クラスターで次のコンポーネントをインストールするためのスクリプトを提供します。HDInsight provides scripts to install the following components on HDInsight clusters:

NameName スクリプトScript
Azure Storage アカウントの追加Add an Azure Storage account https://hdiconfigactions.blob.core.windows.net/linuxaddstorageaccountv01/add-storage-account-v01.shhttps://hdiconfigactions.blob.core.windows.net/linuxaddstorageaccountv01/add-storage-account-v01.sh. HDInsight にストレージ アカウントを追加する」をご覧ください。See Add additional storage accounts to HDInsight.
Hue のインストールInstall Hue https://hdiconfigactions.blob.core.windows.net/linuxhueconfigactionv02/install-hue-uber-v02.shhttps://hdiconfigactions.blob.core.windows.net/linuxhueconfigactionv02/install-hue-uber-v02.sh. HDInsight Hadoop クラスターに Hue をインストールして使用する」をご覧ください。See Install and use Hue on HDInsight Hadoop clusters.
Hive ライブラリの事前読み込みPreload Hive libraries https://hdiconfigactions.blob.core.windows.net/linuxsetupcustomhivelibsv01/setup-customhivelibs-v01.shhttps://hdiconfigactions.blob.core.windows.net/linuxsetupcustomhivelibsv01/setup-customhivelibs-v01.sh. HDInsight クラスターを作成するときにカスタム Apache Hive ライブラリを追加する」をご覧ください。See Add custom Apache Hive libraries when creating your HDInsight cluster.

クラスターの作成時にスクリプト アクションを使用するUse a script action during cluster creation

このセクションでは、HDInsight クラスターの作成時にスクリプト アクションを使用するさまざまな方法について説明します。This section explains the different ways you can use script actions when you create an HDInsight cluster.

クラスターの作成時に Azure Portal からスクリプト アクションを使用するUse a script action during cluster creation from the Azure portal

  1. Azure portal を使用して HDInsight で Linux ベースのクラスターを作成する」で説明されているように、クラスターの作成を開始します。Start to create a cluster as described in Create Linux-based clusters in HDInsight by using the Azure portal. [構成と価格] タブで、 [+ スクリプト アクションの追加] を選択します。From the Configuration + pricing tab, select + Add script action.

    Azure portal クラスター スクリプト操作

  2. [スクリプトの選択] エントリで、事前に作成されたスクリプトを選択します。Use the Select a script entry to select a premade script. カスタム スクリプトを使用するには、 [カスタム] を選択します。To use a custom script, select Custom. 次に、スクリプトの [名前][バッシュ スクリプト URI] を指定します。Then provide the Name and Bash script URI for your script.

    選択したスクリプト形式でスクリプトを追加

    スクリプト形式の要素を次の表に示します。The following table describes the elements on the form:

    プロパティProperty ValueValue
    スクリプトの選択Select a script 独自のスクリプトを使用するには、 [カスタム] を選択します。To use your own script, select Custom. それ以外の場合は、用意されているスクリプトのいずれかを選択します。Otherwise, select one of the provided scripts.
    NameName スクリプト アクションの名前を指定します。Specify a name for the script action.
    Bash スクリプト URIBash script URI スクリプトの URI を指定します。Specify the URI of the script.
    Head/Worker/ZooKeeperHead/Worker/ZooKeeper スクリプトを実行するノードを指定します: [ヘッド][ワーカー] 、または [ZooKeeper]Specify the nodes on which the script is run: Head, Worker, or ZooKeeper.
    パラメーターParameters スクリプトで必要な場合は、パラメーターを指定します。Specify the parameters, if required by the script.

    スケーリング操作中にスクリプトが確実に適用されるようにするには、 [スクリプト操作を保持する] エントリを使用します。Use the Persist this script action entry to make sure that the script is applied during scaling operations.

  3. [作成] を選択してスクリプトを保存します。Select Create to save the script. 別のスクリプトを追加するには、 [+ 新規で送信] を使用します。Then you can use + Submit new to add another script.

    HDInsight の複数のスクリプト アクション

    スクリプトの追加が完了したら、 [構成と価格] タブに戻ります。When you're done adding scripts, you return to the Configuration + pricing tab.

  4. 残りのクラスター作成手順は、通常どおりに行います。Complete the remaining cluster creation steps as usual.

Azure Resource Manager テンプレートからスクリプト アクションを使用するUse a script action from Azure Resource Manager templates

スクリプト アクションを Azure Resource Manager テンプレートで使用できます。Script actions can be used with Azure Resource Manager templates. 例については、「Create HDInsight Linux Cluster and run a script action (HDInsight Linux クラスターを作成してスクリプト アクションを実行する)」をご覧ください。For an example, see Create HDInsight Linux Cluster and run a script action.

この例では、次のコードを使用してスクリプト アクションが追加されます。In this example, the script action is added by using the following code:

"scriptActions": [
    {
        "name": "setenvironmentvariable",
        "uri": "[parameters('scriptActionUri')]",
        "parameters": "headnode"
    }
]

テンプレートをデプロイする方法について詳しくは、以下をご覧ください。Get more information on how to deploy a template:

クラスターの作成時に Azure PowerShell からスクリプト アクションを使用するUse a script action during cluster creation from Azure PowerShell

このセクションでは、Add-AzHDInsightScriptAction コマンドレットを使用して、クラスターのカスタマイズを行うスクリプトを呼び出します。In this section, you use the Add-AzHDInsightScriptAction cmdlet to invoke scripts to customize a cluster. 始める前に、Azure PowerShell をインストールして構成します。Before you start, make sure you install and configure Azure PowerShell. これらの PowerShell コマンドを使用するには、Az モジュールが必要です。To use these PowerShell commands, you need the AZ Module.

注意

この記事は、新しい Azure PowerShell Az モジュールを使用するために更新されました。This article has been updated to use the new Azure PowerShell Az module. AzureRM モジュールはまだ使用でき、少なくとも 2020 年 12 月までは引き続きバグ修正が行われます。You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Az モジュールと AzureRM の互換性の詳細については、「Introducing the new Azure PowerShell Az module (新しい Azure PowerShell Az モジュールの概要)」を参照してください。To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Az モジュールのインストール手順については、Azure PowerShell のインストールを参照してください。For Az module installation instructions, see Install Azure PowerShell.

次のスクリプトでは、PowerShell を使用してクラスターを作成するときに、スクリプト アクションを適用する方法を示します。The following script shows how to apply a script action when you create a cluster by using PowerShell:

# Login to your Azure subscription
$context = Get-AzContext
if ($context -eq $null) 
{
    Connect-AzAccount
}
$context

# If you have multiple subscriptions, set the one to use
# $subscriptionID = "<subscription ID to use>"
# Select-AzSubscription -SubscriptionId $subscriptionID

# Get user input/default values
$resourceGroupName = Read-Host -Prompt "Enter the resource group name"
$location = Read-Host -Prompt "Enter the Azure region to create resources in"

# Create the resource group
New-AzResourceGroup -Name $resourceGroupName -Location $location

$defaultStorageAccountName = Read-Host -Prompt "Enter the name of the storage account"

# Create an Azure storae account and container
New-AzStorageAccount `
    -ResourceGroupName $resourceGroupName `
    -Name $defaultStorageAccountName `
    -Type Standard_LRS `
    -Location $location
$defaultStorageAccountKey = (Get-AzStorageAccountKey `
                                -ResourceGroupName $resourceGroupName `
                                -Name $defaultStorageAccountName)[0].Value
$defaultStorageContext = New-AzStorageContext `
                                -StorageAccountName $defaultStorageAccountName `
                                -StorageAccountKey $defaultStorageAccountKey

# Get information for the HDInsight cluster
$clusterName = Read-Host -Prompt "Enter the name of the HDInsight cluster"
# Cluster login is used to secure HTTPS services hosted on the cluster
$httpCredential = Get-Credential -Message "Enter Cluster login credentials" -UserName "admin"
# SSH user is used to remotely connect to the cluster using SSH clients
$sshCredential = Get-Credential -Message "Enter SSH user credentials"

# Default cluster size (# of worker nodes), version, type, and OS
$clusterSizeInNodes = "4"
$clusterVersion = "3.5"
$clusterType = "Hadoop"
$clusterOS = "Linux"
# Set the storage container name to the cluster name
$defaultBlobContainerName = $clusterName

# Create a blob container. This holds the default data store for the cluster.
New-AzStorageContainer `
    -Name $clusterName -Context $defaultStorageContext

# Create an HDInsight configuration object
$config = New-AzHDInsightClusterConfig
# Add the script action
$scriptActionUri="https://hdiconfigactions.blob.core.windows.net/linuxgiraphconfigactionv01/giraph-installer-v01.sh"
# Add for the head nodes
$config = Add-AzHDInsightScriptAction `
    -Config $config `
    -Name "Install Giraph" `
    -NodeType HeadNode `
    -Uri $scriptActionUri
# Continue adding the script action for any other node types
# that it must run on.
$config = Add-AzHDInsightScriptAction `
    -Config $config `
    -Name "Install Giraph" `
    -NodeType WorkerNode `
    -Uri $scriptActionUri

# Create the cluster using the configuration object
New-AzHDInsightCluster `
    -Config $config `
    -ResourceGroupName $resourceGroupName `
    -ClusterName $clusterName `
    -Location $location `
    -ClusterSizeInNodes $clusterSizeInNodes `
    -ClusterType $clusterType `
    -OSType $clusterOS `
    -Version $clusterVersion `
    -HttpCredential $httpCredential `
    -DefaultStorageAccountName "$defaultStorageAccountName.blob.core.windows.net" `
    -DefaultStorageAccountKey $defaultStorageAccountKey `
    -DefaultStorageContainer $containerName `
    -SshCredential $sshCredential

クラスターが作成されるまでに数分かかる場合があります。It can take several minutes before the cluster is created.

クラスターの作成時に HDInsight .NET SDK からスクリプト アクションを使用するUse a script action during cluster creation from the HDInsight .NET SDK

HDInsight .NET SDK では、.NET アプリケーションから HDInsight を簡単に操作できるクライアント ライブラリが提供されています。The HDInsight .NET SDK provides client libraries that make it easier to work with HDInsight from a .NET application. コード サンプルについては、「スクリプト操作」を参照してください。For a code sample, see Script Actions.

実行中のクラスターにスクリプト アクションを適用するApply a script action to a running cluster

このセクションでは、実行中のクラスターにスクリプト アクションを適用する方法を説明します。This section explains how to apply script actions to a running cluster.

実行中のクラスターに Azure Portal からスクリプト アクションを適用するApply a script action to a running cluster from the Azure portal

Azure portal に移動します。Go to the Azure portal:

  1. 左側のメニューで、 [すべてのサービス] > [分析] > [HDInsight クラスター] に移動します。From the left menu, navigate to All services > Analytics > HDInsight clusters.

  2. 一覧からクラスターを選択します。これにより、既定のビューが開きます。Select your cluster from the list, which opens the default view.

  3. 既定のビューの [設定] で、 [スクリプト アクション] を選択します。From the default view, under Settings, select Script actions.

  4. [スクリプト アクション] ページの上部で、 [+ 新規で送信] を選択します。From the top of the Script actions page, select + Submit new.

    実行中のクラスターにスクリプトを追加する

  5. [スクリプトの選択] エントリで、事前に作成されたスクリプトを選択します。Use the Select a script entry to select a premade script. カスタム スクリプトを使用するには、 [カスタム] を選択します。To use a custom script, select Custom. 次に、スクリプトの [名前][バッシュ スクリプト URI] を指定します。Then provide the Name and Bash script URI for your script.

    選択したスクリプト形式でスクリプトを追加

    スクリプト形式の要素を次の表に示します。The following table describes the elements on the form:

    プロパティProperty ValueValue
    スクリプトの選択Select a script 独自のスクリプトを使用するには、 [カスタム] を選択します。To use your own script, select custom. それ以外の場合、提供されているスクリプトを選択します。Otherwise, select a provided script.
    NameName スクリプト アクションの名前を指定します。Specify a name for the script action.
    Bash スクリプト URIBash script URI スクリプトの URI を指定します。Specify the URI of the script.
    ヘッド/ワーカー/ZookeeperHead/Worker/Zookeeper スクリプトを実行するノードを指定します: [ヘッド][ワーカー] 、または [ZooKeeper]Specify the nodes on which the script is run: Head, Worker, or ZooKeeper.
    パラメーターParameters スクリプトで必要な場合は、パラメーターを指定します。Specify the parameters, if required by the script.

    スケーリング操作中にスクリプトが確実に適用されるようにするには、 [スクリプト操作を保持する] エントリを使用します。Use the Persist this script action entry to make sure the script is applied during scaling operations.

  6. 最後に、 [作成] ボタンを選択して、スクリプトをクラスターに適用します。Finally, select the Create button to apply the script to the cluster.

実行中のクラスターに Azure PowerShell からスクリプト アクションを適用するApply a script action to a running cluster from Azure PowerShell

これらの PowerShell コマンドを使用するには、Az モジュールが必要です。To use these PowerShell commands, you need the AZ Module.

次の例では、実行中のクラスターにスクリプト アクションを適用する方法を示します。The following example shows how to apply a script action to a running cluster:

# Get information for the HDInsight cluster
$clusterName = Read-Host -Prompt "Enter the name of the HDInsight cluster"
$scriptActionName = Read-Host -Prompt "Enter the name of the script action"
$scriptActionUri = Read-Host -Prompt "Enter the URI of the script action"
# The node types that the script action is applied to
$nodeTypes = "headnode", "workernode"

# Apply the script and mark as persistent
Submit-AzHDInsightScriptAction -ClusterName $clusterName `
    -Name $scriptActionName `
    -Uri $scriptActionUri `
    -NodeTypes $nodeTypes `
    -PersistOnSuccess

操作が完了すると、次のようなテキストが表示されます。After the operation finishes, you receive information similar to the following text:

OperationState  : Succeeded
ErrorMessage    :
Name            : Giraph
Uri             : https://hdiconfigactions.blob.core.windows.net/linuxgiraphconfigactionv01/giraph-installer-v01.sh
Parameters      :
NodeTypes       : {HeadNode, WorkerNode}

実行中のクラスターに Azure CLI からスクリプト アクションを適用するApply a script action to a running cluster from the Azure CLI

始める前に、Azure CLI をインストールして構成します。Before you start, make sure you install and configure the Azure CLI. 詳しくは、「Azure クラシック CLI のインストール」をご覧ください。For more information, see Install the Azure classic CLI.

重要

この記事には、Azure クラシック CLI を必要とする内容が含まれます。This article contains content that requires the Azure classic CLI. この記事で説明する機能は、Azure CLI の現在のリリースではサポートされていないので、クラシック CLI が必要です。The current release of the Azure CLI doesn't have support for the features outlined in this article, so the classic CLI is required.

クラシック CLI と最新の Azure CLI を同じ環境にインストールできますが、新しいスクリプトとデプロイの場合は常に Azure CLI をお勧めします。The classic CLI can be installed side by side with the modern Azure CLI, but we recommend the Azure CLI for all new scripts and deployments. クラシック CLI のインストール方法については、「Azure クラシック CLI のインストール」をご覧ください。To install the classic CLI, see Install the Azure classic CLI. 最新バージョンの CLI をインストールする場合は、「Azure CLI のインストール」を参照してください。To install the latest version of the CLI, see Install the Azure CLI.

  1. Azure Resource Manager モードに切り替えます。Switch to Azure Resource Manager mode:

    azure config mode arm
    
  2. Azure サブスクリプションに対して認証を行います。Authenticate to your Azure subscription:

    azure login
    
  3. 実行中のクラスターにスクリプト アクションを適用します。Apply a script action to a running cluster:

    azure hdinsight script-action create <clustername> -g <resourcegroupname> -n <scriptname> -u <scriptURI> -t <nodetypes>
    

    このコマンドのパラメーターを省略した場合は、それを要求するメッセージが表示されます。If you omit parameters for this command, you're prompted for them. -u で指定したスクリプトがパラメーターを受け取る場合は、-p パラメーターを使用してそれらを指定できます。If the script you specify with -u accepts parameters, you can specify them by using the -p parameter.

    有効なノード タイプは、headnodeworkernode、および zookeeper です。Valid node types are headnode, workernode, and zookeeper. スクリプトを複数のノード タイプに適用する必要がある場合、タイプをセミコロン ; で区切って指定します。If the script should be applied to several node types, specify the types separated by a semicolon ;. たとえば、「 -n headnode;workernode 」のように入力します。For example, -n headnode;workernode.

    スクリプトを保存するには、--persistOnSuccess を追加します。To persist the script, add --persistOnSuccess. また、azure hdinsight script-action persisted set を使用して、スクリプトを後日保存することもできます。You can also persist the script later by using azure hdinsight script-action persisted set.

    ジョブが終了した後、次のようなテキストが出力されます。After the job finishes, you get output like the following text:

     info:    Executing command hdinsight script-action create
     + Executing Script Action on HDInsight cluster
     data:    Operation Info
     data:    ---------------
     data:    Operation status:
     data:    Operation ID:  b707b10e-e633-45c0-baa9-8aed3d348c13
     info:    hdinsight script-action create command OK
    

REST API を使用して実行中のクラスターにスクリプト アクションを適用するApply a script action to a running cluster by using REST API

Cluster REST API in Azure HDInsight (Azure HDInsight でのクラスター REST API)」をご覧ください。See Cluster REST API in Azure HDInsight.

実行中のクラスターに HDInsight .NET SDK からスクリプト アクションを適用するApply a script action to a running cluster from the HDInsight .NET SDK

.NET SDK を使用してスクリプトをクラスターに適用する例については、「Apply a Script Action against a running Linux-based HDInsight cluster (実行中の Linux ベースの HDInsight クラスターに対してスクリプト アクションを適用する)」をご覧ください。For an example of using the .NET SDK to apply scripts to a cluster, see Apply a Script Action against a running Linux-based HDInsight cluster.

履歴を表示し、スクリプト アクションを昇格および降格するView history and promote and demote script actions

Azure ポータルThe Azure portal

  1. Azure portal にサインインします。Sign in to the Azure portal.

  2. 左側のメニューで、 [すべてのサービス] > [分析] > [HDInsight クラスター] に移動します。From the left menu, navigate to All services > Analytics > HDInsight clusters.

  3. 一覧からクラスターを選択します。これにより、既定のビューが開きます。Select your cluster from the list, which opens the default view.

  4. 既定のビューの [設定] で、 [スクリプト アクション] を選択します。From the default view, under Settings, select Script actions.

  5. [スクリプト アクション] セクションに、このクラスター用のスクリプトの履歴が表示されます。A history of scripts for this cluster displays on the script actions section. この情報には、保存されたスクリプトの一覧が含まれています。This information includes a list of persisted scripts. 次のスクリーンショットでは、このクラスターで Solr スクリプトが実行されたことが示されています。The following screenshot shows that the Solr script has been run on this cluster. スクリーンショットでは、保存されたスクリプトは示されていません。The screenshot doesn't show any persisted scripts.

    ポータル スクリプト アクションの送信履歴

  6. 履歴からスクリプトを選択すると、このスクリプトの [プロパティ] セクションが表示されます。Select a script from the history to display the Properties section for this script. 画面の上部から、スクリプトを再実行または昇格できます。From the top of the screen, you can rerun the script or promote it.

    スクリプト アクション プロパティの昇格

  7. スクリプト アクション セクションのエントリの右側にある省略記号 [...] を選択して、アクションを実行することもできます。You can also select the ellipsis, ..., to the right of entries on the script actions section to perform actions.

    保存済みスクリプト アクションの削除

Azure PowerShellAzure PowerShell

コマンドレットcmdlet FunctionFunction
Get-AzHDInsightPersistedScriptAction 保存済みスクリプト アクションの情報を取得します。Retrieve information on persisted script actions.
Get-AzHDInsightScriptActionHistory クラスターに適用されたスクリプト アクションの履歴、または特定のスクリプトの詳細を取得します。Retrieve a history of script actions applied to the cluster or details for a specific script.
Set-AzHDInsightPersistedScriptAction アドホック スクリプト アクションを保存済みスクリプト アクションに昇格します。Promote an ad hoc script action to a persisted script action.
Remove-AzHDInsightPersistedScriptAction 保存済みスクリプト アクションをアドホック アクションに降格します。Demote a persisted script action to an ad hoc action.

重要

Remove-AzHDInsightPersistedScriptAction では、スクリプトによって実行されたアクションは元に戻りません。Remove-AzHDInsightPersistedScriptAction doesn't undo the actions performed by a script. このコマンドレットは、保存済みフラグが削除されるだけです。This cmdlet only removes the persisted flag.

次のスクリプトの例では、昇格のコマンドレットを使用してから、スクリプトを降格しています。The following example script demonstrates using the cmdlets to promote and then demote a script.

# Get a history of scripts
Get-AzHDInsightScriptActionHistory -ClusterName mycluster

# From the list, we want to get information on a specific script
Get-AzHDInsightScriptActionHistory -ClusterName mycluster `
    -ScriptExecutionId 635920937765978529

# Promote this to a persisted script
# Note: the script must have a unique name to be promoted
# if the name is not unique, you receive an error
Set-AzHDInsightPersistedScriptAction -ClusterName mycluster `
    -ScriptExecutionId 635920937765978529

# Demote the script back to ad hoc
# Note that demotion uses the unique script name instead of
# execution ID.
Remove-AzHDInsightPersistedScriptAction -ClusterName mycluster `
    -Name "Install Giraph"

Azure クラシック CLIThe Azure classic CLI

コマンドレットcmdlet FunctionFunction
azure hdinsight script-action persisted list <clustername> 保存済みスクリプト アクションの一覧を取得します。Retrieve a list of persisted script actions.
azure hdinsight script-action persisted show <clustername> <scriptname> 特定の保存済みスクリプト アクションに関する情報を取得します。Retrieve information on a specific persisted script action.
azure hdinsight script-action history list <clustername> クラスターに適用されたスクリプト アクションの履歴を取得します。Retrieve a history of script actions applied to the cluster.
azure hdinsight script-action history show <clustername> <scriptname> 特定のスクリプト アクションに関する情報を取得します。Retrieve information on a specific script action.
azure hdinsight script action persisted set <clustername> <scriptexecutionid> アドホック スクリプト アクションを保存済みスクリプト アクションに昇格します。Promote an ad hoc script action to a persisted script action.
azure hdinsight script-action persisted delete <clustername> <scriptname> 保存済みスクリプト アクションをアドホック アクションに降格します。Demote a persisted script action to an ad hoc action.

重要

azure hdinsight script-action persisted delete では、スクリプトによって実行されたアクションは元に戻りません。azure hdinsight script-action persisted delete doesn't undo the actions performed by a script. このコマンドレットは、保存済みフラグが削除されるだけです。This cmdlet only removes the persisted flag.

HDInsight .NET SDKThe HDInsight .NET SDK

.NET SDK を使用してクラスターからスクリプトの履歴を取得し、スクリプトを昇格または降格する例については、「Apply a Script Action against a running Linux-based HDInsight cluster (実行中の Linux ベースの HDInsight クラスターに対してスクリプト アクションを適用する)」をご覧ください。For an example of using the .NET SDK to retrieve script history from a cluster, promote or demote scripts, see Apply a Script Action against a running Linux-based HDInsight cluster.

注意

この例では、.NET SDK を使用して HDInsight アプリケーションをインストールする方法も示します。This example also demonstrates how to install an HDInsight application by using the .NET SDK.

HDInsight クラスターで使用するオープン ソース ソフトウェアのサポートSupport for open-source software used on HDInsight clusters

Microsoft Azure HDInsight サービスは Apache Hadoop を中心に形成されたオープン ソース テクノロジのエコシステムを利用します。The Microsoft Azure HDInsight service uses an ecosystem of open-source technologies formed around Apache Hadoop. Microsoft Azure は、オープン ソース テクノロジの一般的なレベルのサポートを提供します。Microsoft Azure provides a general level of support for open-source technologies. 詳しくは、「Azure サポートに関する FAQ」のサポート範囲に関するセクションを参照してください。For more information, see the Support Scope section of Azure Support FAQs. HDInsight サービスでは、組み込みのコンポーネントに対してさらに高いレベルのサポートを提供しています。The HDInsight service provides an additional level of support for built-in components.

HDInsight サービスで利用できるオープン ソース コンポーネントには、2 つの種類があります。Two types of open-source components are available in the HDInsight service:

  • 組み込みコンポーネントBuilt-in components. これらのコンポーネントは、HDInsight クラスターにプレインストールされており、クラスターの主要な機能を提供します。These components are preinstalled on HDInsight clusters and provide core functionality of the cluster. 次のコンポーネントは、このカテゴリに属します。The following components belong to this category:

  • カスタム コンポーネントCustom components. クラスターのユーザーは、コミュニティで入手できるコンポーネントや自作のコンポーネントを、インストールするか、ワークロード内で使用することができます。As a user of the cluster, you can install or use in your workload any component available in the community or created by you.

警告

HDInsight クラスターに用意されているコンポーネントは全面的にサポートされており、Components provided with the HDInsight cluster are fully supported. これらのコンポーネントに関連する問題の分離と解決については、Microsoft サポートが支援します。Microsoft Support helps to isolate and resolve issues related to these components.

カスタム コンポーネントについては、問題のトラブルシューティングを進めるための支援として、商業的に妥当な範囲のサポートを受けることができます。Custom components receive commercially reasonable support to help you further troubleshoot the issue. Microsoft サポートで問題を解決できる場合があります。Microsoft Support might be able to resolve the issue. または、オープン ソース テクノロジに関して、深い専門知識が入手できる場所への参加をお願いすることになる場合もあります。Or they might ask you to engage available channels for the open-source technologies where deep expertise for that technology is found. 多くのコミュニティ サイトを使用できます。Many community sites can be used. たとえば、HDInsight の MSDN フォーラムや、Stack Overflow などです。Examples are MSDN forum for HDInsight and Stack Overflow.

Apache プロジェクトにも、Apache の Web サイトにプロジェクトのサイトがあります。Apache projects also have project sites on the Apache website. たとえば、Hadoop などです。An example is Hadoop.

HDInsight サービスでは、カスタム コンポーネントを使用する方法をいくつか用意しています。The HDInsight service provides several ways to use custom components. コンポーネントの用途やクラスターへのインストール方法にかかわらず、同じレベルのサポートが適用されます。The same level of support applies, no matter how a component is used or installed on the cluster. 以下は、HDInsight クラスターでのカスタム コンポーネントの用途として、最も一般的な方法の一覧です。The following list describes the most common ways that custom components are used on HDInsight clusters:

  1. ジョブの送信Job submission. Hadoop や他の種類のジョブを、カスタム コンポーネントを実行または使用するクラスターに送信できます。Hadoop or other types of jobs that execute or use custom components can be submitted to the cluster.

  2. クラスターのカスタマイズCluster customization. クラスター作成時に、追加設定や、クラスター ノードにインストールするカスタム コンポーネントを指定できます。During cluster creation, you can specify additional settings and custom components that are installed on the cluster nodes.

  3. サンプルSamples. よく利用されるカスタム コンポーネントに対しては、それらを HDInsight クラスターで使用する方法について Microsoft やその他の提供者がサンプルを用意している場合があります。For popular custom components, Microsoft and others might provide samples of how these components can be used on HDInsight clusters. これらのサンプルはサポートなしで提供されます。These samples are provided without support.

トラブルシューティングTroubleshooting

Ambari の Web UI を使用すると、スクリプト アクションによってログに記録された情報を表示できます。You can use the Ambari web UI to view information logged by script actions. クラスターの作成中にスクリプトでエラーが発生した場合は、クラスターに関連付けられた既定のストレージ アカウントのログを利用することもできます。If the script fails during cluster creation, the logs are also available in the default storage account associated with the cluster. このセクションでは、これら両方のオプションを使用してログを取得する方法について説明します。This section provides information on how to retrieve the logs by using both these options.

Apache Ambari Web UIThe Apache Ambari web UI

  1. ブラウザーで https://CLUSTERNAME.azurehdinsight.net に移動します。In your browser, go to https://CLUSTERNAME.azurehdinsight.net. CLUSTERNAME を、使用する HDInsight クラスターの名前に置き換えます。Replace CLUSTERNAME with the name of your HDInsight cluster.

    プロンプトが表示されたら、クラスターの管理者アカウント名 admin とパスワードを入力します。When prompted, enter the admin account name, admin, and password for the cluster. Web フォームで管理者の資格情報の再入力が必要な場合があります。You might have to reenter the admin credentials in a web form.

  2. ページ上部のバーから [OPS] エントリを選択します。From the bar at the top of the page, select the ops entry. これにより、Ambari を使用してクラスターで実行される、現在と過去の操作の一覧が表示されます。A list displays current and previous operations done on the cluster through Ambari.

    Ambari Web UI バーで OPS を選択

  3. [Operations] 列で run_customscriptaction エントリを探します。Find the entries that have run_customscriptaction in the Operations column. これらのエントリは、スクリプト アクションの実行時に作成されます。These entries are created when the script actions run.

    Apache Ambari スクリプト アクションの操作

    STDOUTSTDERR の出力を表示するには、run\customscriptaction エントリを選択してリンクをたどります。To view the STDOUT and STDERR output, select the run\customscriptaction entry and drill down through the links. この出力結果はスクリプトの実行時に生成され、有益な情報が含まれていることがあります。This output is generated when the script runs and might have useful information.

既定のストレージ アカウントからログにアクセスするAccess logs from the default storage account

スクリプト エラーのためにクラスターの作成が失敗した場合、クラスター ストレージ アカウントにログが保持されます。If cluster creation fails because of a script error, the logs are kept in the cluster storage account.

  • ストレージ ログは、 \STORAGE_ACCOUNT_NAME\DEFAULT_CONTAINER_NAME\custom-scriptaction-logs\CLUSTER_NAME\DATEにあります。The storage logs are available at \STORAGE_ACCOUNT_NAME\DEFAULT_CONTAINER_NAME\custom-scriptaction-logs\CLUSTER_NAME\DATE.

    スクリプト アクション ログ

    このディレクトリの下で、ヘッド ノードワーカー ノード、および zookeeper ノードごとにログが整理されています。Under this directory, the logs are organized separately for headnode, worker node, and zookeeper node. 次の例を参照してください。See the following examples:

    • ヘッド ノード: <ACTIVE-HEADNODE-NAME>.cloudapp.netHeadnode: <ACTIVE-HEADNODE-NAME>.cloudapp.net

    • ワーカー ノード: <ACTIVE-WORKERNODE-NAME>.cloudapp.netWorker node: <ACTIVE-WORKERNODE-NAME>.cloudapp.net

    • Zookeeper ノード: <ACTIVE-ZOOKEEPERNODE-NAME>.cloudapp.netZookeeper node: <ACTIVE-ZOOKEEPERNODE-NAME>.cloudapp.net

  • 対応するホストのすべての stdoutstderr が、ストレージ アカウントにアップロードされます。All stdout and stderr of the corresponding host is uploaded to the storage account. 各スクリプト アクションに対して、output-*.txterrors-*.txt が 1 つずつあります。There's one output-*.txt and errors-*.txt for each script action. output-*.txt ファイルには、ホストで実行されたスクリプトの URI に関する情報が含まれます。The output-*.txt file contains information about the URI of the script that was run on the host. 次のテキストはこの情報の例です。The following text is an example of this information:

      'Start downloading script locally: ', u'https://hdiconfigactions.blob.core.windows.net/linuxrconfigactionv01/r-installer-v01.sh'
    
  • 同じ名前のスクリプト アクション クラスターを繰り返し作成できます。It's possible that you repeatedly create a script action cluster with the same name. そのような場合は、DATE フォルダー名に基づいて適切なログを識別できます。In that case, you can distinguish the relevant logs based on the DATE folder name. たとえば、異なる日付で作成されるクラスターのフォルダー構造 mycluster は、ログ エントリには次のように表示されます。For example, the folder structure for a cluster, mycluster, created on different dates appears similar to the following log entries:

    \STORAGE_ACCOUNT_NAME\DEFAULT_CONTAINER_NAME\custom-scriptaction-logs\mycluster\2015-10-04 \STORAGE_ACCOUNT_NAME\DEFAULT_CONTAINER_NAME\custom-scriptaction-logs\mycluster\2015-10-05\STORAGE_ACCOUNT_NAME\DEFAULT_CONTAINER_NAME\custom-scriptaction-logs\mycluster\2015-10-04 \STORAGE_ACCOUNT_NAME\DEFAULT_CONTAINER_NAME\custom-scriptaction-logs\mycluster\2015-10-05

  • 同じ日に同じ名前のスクリプト アクション クラスターを作成する場合は、一意のプレフィックスを使用して該当するログ ファイルを識別できます。If you create a script action cluster with the same name on the same day, you can use the unique prefix to identify the relevant log files.

  • 12:00 AM (深夜 0 時) 近くにクラスターを作成すると、ログ ファイルが 2 日間にまたがる可能性があります。If you create a cluster near 12:00 AM, midnight, it's possible that the log files span across two days. そのような場合は、同じクラスターに日付が異なる 2 つのフォルダーが作成されます。In that case, you see two different date folders for the same cluster.

  • 既定のコンテナーへのログ ファイルのアップロードは、特に大きなクラスターの場合、最大 5 分かかることがあります。Uploading log files to the default container can take up to five minutes, especially for large clusters. そのため、ログにアクセスする必要がある場合は、スクリプト アクションが失敗したときにクラスターをすぐに削除しないでください。So if you want to access the logs, you shouldn't immediately delete the cluster if a script action fails.

Ambari ウォッチドッグAmbari watchdog

警告

Linux ベースの HDInsight クラスターでは、Ambari ウォッチドッグ hdinsightwatchdog のパスワードは変更しないでください。Don't change the password for the Ambari watchdog, hdinsightwatchdog, on your Linux-based HDInsight cluster. このアカウントのパスワードを変更すると、HDInsight クラスターで新しいスクリプト アクションを実行できなくなります。Changing the password for this account breaks the ability to run new script actions on the HDInsight cluster.

名前 BlobService をインポートできないCan't import name BlobService

現象Symptoms. スクリプト操作が失敗します。The script action fails. Ambari で操作を表示すると、次のエラーに似たテキストが表示されます。Text similar to the following error displays when you view the operation in Ambari:

Traceback (most recent call list):
  File "/var/lib/ambari-agent/cache/custom_actions/scripts/run_customscriptaction.py", line 21, in <module>
    from azure.storage.blob import BlobService
ImportError: cannot import name BlobService

原因Cause. このエラーは、HDInsight クラスターに含まれている Python Azure Storage クライアントをアップグレードする場合に発生します。This error occurs if you upgrade the Python Azure Storage client that's included with the HDInsight cluster. HDInsight は、Azure Storage クライアント 0.20.0 を予期しています。HDInsight expects Azure Storage client 0.20.0.

解決策Resolution. このエラーを解決するには、ssh を使用して各クラスター ノードを手動で接続します。To resolve this error, manually connect to each cluster node by using ssh. 次のコマンドを実行して、ストレージ クライアントの正しいバージョンを再インストールします。Run the following command to reinstall the correct storage client version:

sudo pip install azure-storage==0.20.0

SSH を使用してクラスターに接続する方法については、「SSH を使用して HDInsight (Apache Hadoop) に接続する」をご覧ください。For information on connecting to the cluster with SSH, see Connect to HDInsight (Apache Hadoop) by using SSH.

クラスターの作成時に使用されたスクリプトが履歴に表示されないHistory doesn't show the scripts used during cluster creation

クラスターが 2016 年 3 月 15 日より前に作成された場合、スクリプト アクション履歴にエントリが表示されない可能性があります。If your cluster was created before March 15, 2016, you might not see an entry in script action history. クラスターのサイズ変更を行うと、スクリプト アクション履歴にスクリプトが表示されます。Resizing the cluster causes the scripts to appear in script action history.

ただし、例外が 2 つあります。There are two exceptions:

  • クラスターが 2015 年 9 月 1 日より前に作成された場合。Your cluster was created before September 1, 2015. この日付は、スクリプト アクションが導入された日付です。This date is when script actions were introduced. この日付より前に作成されたクラスターに関しては、クラスター作成にスクリプト アクションを使用できませんでした。Any cluster created before this date couldn't have used script actions for cluster creation.

  • クラスターを作成するときに、複数のスクリプト アクションを使用した場合。You used multiple script actions during cluster creation. または、複数のスクリプトに対して同じ名前を使用したか、複数のスクリプトに対して同じ名前と URI、異なるパラメーターを使用した場合。Or you used the same name for multiple scripts or the same name, same URI, but different parameters for multiple scripts. この場合は、次のエラーが発生します。In these cases, you get the following error:

    既存のスクリプトでスクリプト名が競合するため、このクラスターでは新しいスクリプト アクションを実行できません。No new script actions can be run on this cluster because of conflicting script names in existing scripts. クラスターの作成時に指定されるスクリプト名はすべて一意である必要があります。Script names provided at cluster creation must be all unique. 既存のスクリプトは、サイズ変更時に実行されます。Existing scripts are run on resize.

次のステップNext steps