次の方法で共有


Azure CLI を使用して HDInsight クラスターを作成する

このドキュメントの手順では、Azure CLI を使用して HDInsight 4.0 クラスターを作成する手順について説明します。

Warnung

HDInsight クラスターの料金は、そのクラスターを使用しているかどうかに関係なく、分単位で課金されます。 使用後は、クラスターを必ず削除してください。 「HDInsight クラスターを削除する方法」をご覧ください。

Azure アカウントをお持ちでない場合は、開始する前に無料アカウントを作成してください。

[前提条件]

  • Azure Cloud Shell で Bash 環境を使用します。 詳細については、「Azure Cloud Shell の概要」を参照してください。

  • CLI 参照コマンドをローカルで実行する場合は、Azure CLI を インストール します。 Windows または macOS で実行している場合は、Docker コンテナーで Azure CLI を実行することを検討してください。 詳細については、「Docker コンテナーで Azure CLI を実行する方法」を参照してください。

    • ローカル インストールを使用する場合は、az login コマンドを使用して Azure CLI にサインインします。 認証プロセスを完了するには、ターミナルに表示される手順に従います。 その他のサインイン オプションについては、「 Azure CLI を使用した Azure への認証」を参照してください。

    • メッセージが表示されたら、最初に使用するときに Azure CLI 拡張機能をインストールします。 拡張機能の詳細については、「Azure CLI で拡張機能を使用および管理する」を参照してください。

    • az version を実行し、インストールされているバージョンおよび依存ライブラリを検索します。 最新バージョンにアップグレードするには、az upgrade を実行します。

クラスターを作成する

  1. Azure サブスクリプションにログインします。 Azure Cloud Shell を使用する場合は、コード ブロックの右上隅にある [ 試してみる ] を選択します。 それ以外の場合は、次のコマンドを入力します。

    az login
    
    # If you have multiple subscriptions, set the one to use
    # az account set --subscription "SUBSCRIPTIONID"
    
  2. 環境変数を設定します。 この記事の変数の使用は Bash に基づいています。 他の環境には若干のバリエーションが必要です。 クラスターの作成に使用できるパラメーターの完全な一覧については、 az-hdinsight-create を参照してください。

    パラメーター 説明
    --workernode-count クラスター内のワーカー ノードの数。 この記事では、clusterSizeInNodesに渡される値として変数--workernode-countを使用します。
    --version HDInsight クラスターのバージョン。 この記事では、clusterVersionに渡される値として変数--versionを使用します。 サポート されている HDInsight バージョンも参照してください。
    --type HDInsight クラスターの種類 (hadoop、対話型ハイブ、hbase、kafka、spark、 rservermlservicesなど)。 この記事では、clusterTypeに渡される値として変数--typeを使用します。 「 クラスターの種類と構成」も参照してください。
    --component-version さまざまな Hadoop コンポーネントのバージョン。バージョンは 'component=version' の形式でスペースで区切られます。 この記事では、componentVersionに渡される値として変数--component-versionを使用します。 Hadoop コンポーネントも参照してください。

    RESOURCEGROUPNAMELOCATIONCLUSTERNAMESTORAGEACCOUNTNAME、およびPASSWORDを目的の値に置き換えます。 必要に応じて、他の変数の値を変更します。 次に、CLI コマンドを入力します。

    export resourceGroupName=RESOURCEGROUPNAME
    export ___location=LOCATION
    export clusterName=CLUSTERNAME
    export AZURE_STORAGE_ACCOUNT=STORAGEACCOUNTNAME
    export httpCredential='PASSWORD'
    export sshCredentials='PASSWORD'
    
    export AZURE_STORAGE_CONTAINER=$clusterName
    export clusterSizeInNodes=1
    export clusterVersion=4.0
    export clusterType=hadoop
    export componentVersion=Hadoop=3.1
    
  3. 次のコマンドを入力して、リソース グループを作成します。

    az group create \
        --___location $___location \
        --name $resourceGroupName
    

    有効な場所の一覧については、 az account list-locations コマンドを使用し、 name 値のいずれかの場所を使用します。

  4. 次のコマンドを入力して、Azure Storage アカウントを作成します。

    # Note: kind BlobStorage is not available as the default storage account.
    az storage account create \
        --name $AZURE_STORAGE_ACCOUNT \
        --resource-group $resourceGroupName \
        --https-only true \
        --kind StorageV2 \
        --___location $___location \
        --sku Standard_LRS
    
  5. 次のコマンドを入力して、Azure Storage アカウントから主キーを抽出 し、変数に格納します。

    export AZURE_STORAGE_KEY=$(az storage account keys list \
        --account-name $AZURE_STORAGE_ACCOUNT \
        --resource-group $resourceGroupName \
        --query [0].value -o tsv)
    
  6. 次のコマンドを入力して、Azure Storage コンテナーを作成します。

    az storage container create \
        --name $AZURE_STORAGE_CONTAINER \
        --account-key $AZURE_STORAGE_KEY \
        --account-name $AZURE_STORAGE_ACCOUNT
    
  7. 次のコマンドを入力して HDInsight クラスターを作成します

    az hdinsight create \
        --name $clusterName \
        --resource-group $resourceGroupName \
        --type $clusterType \
        --component-version $componentVersion \
        --http-password $httpCredential \
        --http-user admin \
        --___location $___location \
        --workernode-count $clusterSizeInNodes \
        --ssh-password $sshCredentials \
        --ssh-user sshuser \
        --storage-account $AZURE_STORAGE_ACCOUNT \
        --storage-account-key $AZURE_STORAGE_KEY \
        --storage-container $AZURE_STORAGE_CONTAINER \
        --version $clusterVersion
    

    Von Bedeutung

    HDInsight クラスターには、クラスターがチューニングされているワークロードまたはテクノロジに対応するさまざまな種類があります。 1 つのクラスター上の HBase など、複数の種類を組み合わせたクラスターを作成する方法はサポートされていません。

    クラスターの作成プロセスが完了するまでに数分かかる場合があります。 通常は約 15。

リソースをクリーンアップする

記事を完了したら、必要に応じてクラスターを削除できます。 HDInsight を使用すると、データは Azure Storage に格納されるため、クラスターは、使用されていない場合に安全に削除できます。 また、HDInsight クラスターは、使用していない場合でも課金されます。 クラスターの料金は Storage の料金の何倍にもなるため、クラスターを使用しない場合は削除するのが経済的にも合理的です。

次のコマンドのすべてまたは一部を入力して、リソースを削除します。

# Remove cluster
az hdinsight delete \
    --name $clusterName \
    --resource-group $resourceGroupName

# Remove storage container
az storage container delete \
    --account-name $AZURE_STORAGE_ACCOUNT \
    --name $AZURE_STORAGE_CONTAINER

# Remove storage account
az storage account delete \
    --name $AZURE_STORAGE_ACCOUNT \
    --resource-group $resourceGroupName

# Remove resource group
az group delete \
    --name $resourceGroupName

トラブルシューティング

HDInsight クラスターの作成で問題が発生した場合は、「アクセス制御の要件」を参照してください。

次のステップ

Azure CLI を使用して HDInsight クラスターが正常に作成されたので、次の手順に従ってクラスターを操作する方法を学習します。

Apache Hadoop クラスター

Apache HBase クラスター