Azure Storage での Azure PowerShell の使用Using Azure PowerShell with Azure Storage

Azure PowerShell は、PowerShell コマンド ラインやスクリプトで Azure リソースを作成および管理するために使用します。Azure PowerShell is used to create and manage Azure resources from the PowerShell command line or in scripts. Azure Storage では、これらのコマンドレットは 2 つのカテゴリ (コントロール プレーンとデータ プレーン) に分類されます。For Azure Storage, these cmdlets fall into two categories -- the control plane and the data plane. コントロールプレーンのコマンドレットは、ストレージ アカウントを管理する (ストレージ アカウントの作成、プロパティの設定、ストレージ アカウントの削除、アクセス キーの交換など) ために使用します。The control plane cmdlets are used to manage the storage account -- to create storage accounts, set properties, delete storage accounts, rotate the access keys, and so on. データ プレーンのコマンドレットは、ストレージ アカウント格納されたデータを管理するために使用します。The data plane cmdlets are used to manage the data stored in the storage account. たとえば、BLOB のアップロード、ファイル共有の作成、キューへのメッセージの追加などです。For example, uploading blobs, creating file shares, and adding messages to a queue.

このハウツー記事では、管理プレーンのコマンドレットを使用してストレージ アカウントを管理する際の一般的な操作について説明します。This how-to article covers common operations using the management plane cmdlets to manage storage accounts. 学習内容は次のとおりです。You learn how to:

  • ストレージ アカウントの列挙List storage accounts
  • 既存のストレージ アカウントへの参照の取得Get a reference to an existing storage account
  • ストレージ アカウントの作成Create a storage account
  • ストレージ アカウント プロパティの設定Set storage account properties
  • アクセス キーの取得および再生成Retrieve and regenerate the access keys
  • ストレージ アカウントへのアクセスの保護Protect access to your storage account
  • Storage Analytics の有効化Enable Storage Analytics

この記事では、Storage Analytics の有効化とアクセスの方法、データ プレーン コマンドレットの使用方法、China Cloud、German Cloud、Government クラウドといった Azure の独立したクラウドにアクセスする方法など、Storage に関する他のいくつかの PowerShell 記事へのリンクを提供しています。This article provides links to several other PowerShell articles for Storage, such as how to enable and access the Storage Analytics, how to use the data plane cmdlets, and how to access the Azure independent clouds such as China Cloud, German Cloud, and Government Cloud.

Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。If you don't have an Azure subscription, create a free account before you begin.

この演習には、Azure PowerShell モジュール バージョン 4.4 以降が必要です。This exercise requires the Azure PowerShell module version 4.4 or later. バージョンを確認するには、Get-Module -ListAvailable AzureRM を実行します。Run Get-Module -ListAvailable AzureRM to find the version. インストールまたはアップグレードする必要がある場合は、Azure PowerShell モジュールのインストールに関するページを参照してください。If you need to install or upgrade, see Install Azure PowerShell module.

この演習では、通常の PowerShell ウィンドウにコマンドを入力するか、または Windows PowerShell Integrated Scripting Environment (ISE) を使用してエディターにコマンドを入力してから、それぞれの例で 1 つ以上のコマンドを同時にテストできます。For this exercise, you can type the commands into a regular PowerShell window, or you can use the Windows PowerShell Integrated Scripting Environment (ISE) and type the commands into an editor, then test one or more commands at a time as you go through the examples. 実行する行を強調表示して [選択項目の実行] をクリックし、それらのコマンドだけを実行できます。You can highlight the rows you want to execute and click Run Selected to just run those commands.

ストレージ アカウントの詳細については、「Microsoft Azure Storage の概要」および「Azure ストレージ アカウントについて」を参照してください。For more information about storage accounts, see Introduction to Storage and About Azure storage accounts.

Azure にログインするLog in to Azure

Connect-AzureRmAccount コマンドで Azure サブスクリプションにログインし、画面上の指示に従います。Log in to your Azure subscription with the Connect-AzureRmAccount command and follow the on-screen directions.

Connect-AzureRmAccount

サブスクリプションのストレージ アカウントの列挙List the storage accounts in the subscription

Get-AzureRMStorageAccount コマンドレットを実行して、現在のサブスクリプションのストレージ アカウントのリストを取得します。Run the Get-AzureRMStorageAccount cmdlet to retrieve the list of storage accounts in the current subscription.

Get-AzureRMStorageAccount | Select StorageAccountName, Location

ストレージ アカウントへの参照の取得Get a reference to a storage account

続いて、ストレージ アカウントへの参照が必要になります。Next, you need a reference to a storage account. 新しいストレージ アカウントを作成することも、既存のストレージ アカウントへの参照を取得することもできます。You can either create a new storage account or get a reference to an existing storage account. 以降のセクションでは、その両方の方法を示します。The following section shows both methods.

既存のストレージ アカウントの使用Use an existing storage account

既存のストレージ アカウントを取得するには、リソース グループの名前とストレージ アカウントの名前が必要です。To retrieve an existing storage account, you need the name of the resource group and the name of the storage account. これらの 2 つのフィールドに変数を設定して、Get-AzureRmStorageAccount コマンドレットを使用します。Set the variables for those two fields, then use the Get-AzureRmStorageAccount cmdlet.

$resourceGroup = "myexistingresourcegroup"
$storageAccountName = "myexistingstorageaccount"

$storageAccount = Get-AzureRmStorageAccount -ResourceGroupName $resourceGroup `
  -Name $storageAccountName 

これで、既存のストレージ アカウントを参照する $storageAccount が取得されました。Now you have $storageAccount, which points to an existing storage account.

ストレージ アカウントの作成Create a storage account

次のスクリプトは、New-AzureRmStorageAccount を使用して汎用のストレージ アカウントを作成する方法を示しています。The following script shows how to create a general-purpose storage account using New-AzureRmStorageAccount. アカウントを作成したら、そのコンテキストを取得して、後続のコマンドで使用できます。各呼び出しで認証を指定する必要はありません。After you create the account, retrieve its context, which can be used in subsequent commands rather than specifying the authentication with each call.

# Get list of locations and select one.
Get-AzureRmLocation | select Location 
$location = "eastus"

# Create a new resource group.
$resourceGroup = "teststoragerg"
New-AzureRmResourceGroup -Name $resourceGroup -Location $location 

# Set the name of the storage account and the SKU name. 
$storageAccountName = "testpshstorage"
$skuName = "Standard_LRS"

# Create the storage account.
$storageAccount = New-AzureRmStorageAccount -ResourceGroupName $resourceGroup `
  -Name $storageAccountName `
  -Location $location `
  -SkuName $skuName

# Retrieve the context. 
$ctx = $storageAccount.Context

このスクリプトでは、次の PowerShell コマンドレットを使用します。The script uses the following PowerShell cmdlets:

  • Get-AzureRmLocation -- 有効な場所のリストを取得します。Get-AzureRmLocation -- retrieves a list of the valid locations. この例では、eastus を場所として使用します。The example uses eastus for location.

  • New-AzureRmResourceGroup -- 新しいリソース グループを作成します。New-AzureRmResourceGroup -- creates a new resource group. リソース グループとは、Azure リソースのデプロイと管理に使用する論理コンテナーです。A resource group is a logical container into which your Azure resources are deployed and managed. この例では、teststoragerg を使用します。Ours is called teststoragerg.

  • New-AzureRmStorageAccount -- ストレージ アカウントを作成します。New-AzureRmStorageAccount -- creates the storage account. この例では、testpshstorage を使用します。The example uses testpshstorage.

SKU 名は、LRS (ローカル冗長ストレージ) など、ストレージ アカウントのレプリケーションの種類を示します。The SKU name indicates the type of replication for the storage account, such as LRS (Locally Redundant Storage). レプリケーションの詳細については、「Azure Storage のレプリケーション」を参照してください。For more information about replication, see Azure Storage Replication.

重要

ストレージ アカウントの名前は Azure 内で一意であり、小文字でなければなりません。The name of your storage account must be unique within Azure and must be lowercase. 名前付け規則および制限については、「コンテナー、BLOB、およびメタデータの名前付け」を参照してください。For naming conventions and restrictions, see Naming and Referencing Containers, Blobs, and Metadata.

これで、新しいストレージ アカウントとそのアカウントへの参照が作成されました。Now you have a new storage account and a reference to it.

ストレージ アカウントの管理Manage the storage account

新しいストレージ アカウントまたは既存のストレージ アカウントへの参照を取得したので、次のセクションではストレージ アカウントを管理するためのコマンドを示します。Now that you have a reference to a new storage account or an existing storage account, the following section shows some of the commands you can use to manage your storage account.

ストレージ アカウント プロパティStorage account properties

ストレージ アカウントの設定を変更するには、Set-AzureRmStorageAccount を使用します。To change the settings for a storage account, use Set-AzureRmStorageAccount. ストレージ アカウントの場所や格納されているリソース グループを変更することはできませんが、その他の多くのプロパティを変更できます。While you can't change the location of a storage account, or the resource group in which it resides, you can change many of the other properties. PowerShell を使用して変更できるいくつかのプロパティを次に示します。The following lists some of the properties you can change using PowerShell.

  • ストレージ アカウントに割り当てられているカスタム ドメインThe custom domain assigned to the storage account.

  • ストレージ アカウントに割り当てられているタグThe tags assigned to the storage account. 多くの場合、タグは課金のためのリソースの分類に使用されます。Tags are often used to categorize resources for billing purposes.

  • SKU は、LRS (ローカル冗長ストレージ) など、ストレージ アカウントのレプリケーション設定です。The SKU is the replication setting for the storage account, such as LRS for Locally Redundant Storage. たとえば、Standard_LRS を Standard_GRS または Standard_RAGRS に変更できます。For example, you might change from Standard_LRS to Standard_GRS or Standard_RAGRS. Standard_ZRS や Premium_LRS をその他の SKU に変更したり、その他の SKU を Standard_ZRS や Premium_LRS に変更したりすることはできません。Note that you can't change Standard_ZRS or Premium_LRS to other SKUs, or change other SKUs to these.

  • Blob Storage アカウントのアクセス層The access tier for Blob storage accounts. アクセス層の値はホットまたはクールに設定されます。この値を使用すると、ストレージ アカウントの使用方法に合致したアクセス層を選択してコストを最小限に抑えることができます。The value for access tier is set to hot or cool, and allows you to minimize your cost by selecting the access tier that aligns with how you use the storage account. 詳細については、「Azure Blob Storage: ホット、クール、およびアーカイブ (プレビュー) ストレージ層」を参照してください。For more information, see Hot, cool, and archive storage tiers.

  • HTTPS トラフィックのみを許可。Only allow HTTPS traffic.

アクセス キーの管理Manage the access keys

Azure Storage アカウントには 2 つのアカウント キーがあります。An Azure Storage account comes with two account keys. キーを取得するには、Get-AzureRmStorageAccountKey を使用します。To retrieve the keys, use Get-AzureRmStorageAccountKey. この例では、最初のキーを取得します。This example retrieves the first key. もう 1 つのキーを取得するには、Value[0] の代わりに Value[1] を使用します。To retrieve the other one, use Value[1] instead of Value[0].

$storageAccountKey = `
    (Get-AzureRmStorageAccountKey `
    -ResourceGroupName $resourceGroup `
    -Name $storageAccountName).Value[0]

キーを再生成するには、New-AzureRmStorageAccountKey を使用します。To regenerate the key, use New-AzureRmStorageAccountKey.

New-AzureRmStorageAccountKey -ResourceGroupName $resourceGroup `
  -Name $storageAccountName `
  -KeyName key1 

もう 1 つのキーを再生成するには、キー名として key1 の代わりに key2 を使用します。To regenerate the other key, use key2 as the key name instead of key1.

いずれかのキーを再生成してもう一度取得し、新しい値を確認します。Regenerate one of your keys and then retrieve it again to see the new value.

注意

運用環境のストレージ アカウントのキーを再生成する前には、入念な計画が必要です。You should perform careful planning before regenerating the key for a production storage account. 一方または両方のキーを再生成すると、再生成されたキーを使用するアプリケーションのアクセスが無効になります。Regenerating one or both keys will invalidate the access for any application using the key that was regenerated. 詳細については、「Access keys」(アクセス キー) に関するページを参照してください。For more information, see Access keys.

ストレージ アカウントを削除するDelete a storage account

ストレージ アカウントを削除するには、Remove-AzureRmStorageAccount を使用します。To delete a storage account, use Remove-AzureRmStorageAccount.

Remove-AzureRmStorageAccount -ResourceGroup $resourceGroup -AccountName $storageAccountName

重要

ストレージ アカウントを削除すると、そのアカウントに格納されている資産もすべて削除されます。When you delete a storage account, all of the assets stored in the account are deleted as well. アカウントを誤って削除した場合は、すぐにサポートに問い合わせてストレージ アカウントを復元するチケットをオープンしてください。If you delete an account accidentally, call Support immediately and open a ticket to restore the storage account. データの復旧は保証されませんが、この対処が有効な場合もあります。Recovery of your data is not guaranteed, but it does sometimes work. サポート チケットが解決されるまでは、古いストレージ アカウントと同じ名前の新しいストレージ アカウントを作成しないでください。Do not create a new storage account with the same name as the old one until the support ticket has been resolved.

VNet とファイアウォールを使用したストレージ アカウントの保護Protect your storage account using VNets and firewalls

既定では、インターネットにアクセス可能なネットワークからすべてのストレージ アカウントにアクセスできます。By default, all storage accounts are accessible by any network that has access to the internet. ただし、ストレージ アカウントへのアクセスを特定の仮想ネットワークのアプリケーションにのみ許可するようにネットワーク ルールを構成できます。However, you can configure network rules to only allow applications from specific virtual networks to access a storage account. 詳細については、「Azure Storage ファイアウォールおよび仮想ネットワークの構成 (プレビュー)」を参照してください。For more information, see Configure Azure Storage Firewalls and Virtual Networks.

この記事では、次の PowerShell コマンドレットを使用してこれらの設定を管理する方法を示しています。The article shows how to manage these settings using the following PowerShell cmdlets:

Storage Analytics の使用Use storage analytics

Azure Storage Analytics は、Storage Analytics MetricsStorage Analytics Logging で構成されます。Azure Storage Analytics consists of Storage Analytics Metrics and Storage Analytics Logging.

Storage Analytics Metrics は、Azure ストレージ アカウントのメトリックを収集するために使用します。このメトリックを使用して、ストレージ アカウントのヘルスを監視できます。Storage Analytics Metrics is used to collect metrics for your Azure storage accounts that you can use to monitor the health of a storage account. BLOB、ファイル、テーブル、およびキューに対してメトリックを有効にすることができます。Metrics can be enabled for blobs, files, tables, and queues.

Storage Analytics Logging はサーバー側で発生し、ストレージ アカウントに対する成功した要求と失敗した要求の両方について詳細を記録することが可能になります。Storage Analytics Logging happens server-side and enables you to record details for both successful and failed requests to your storage account. これらのログを使用すると、読み取り、書き込み、削除の各操作の詳細、失敗した要求の原因を確認できます。These logs enable you to see details of read, write, and delete operations against your tables, queues, and blobs as well as the reasons for failed requests. Logging は、Azure Files では使用できません。Logging is not available for Azure Files.

Azure Portal または PowerShell を使用して監視を構成できます。また、ストレージ クライアント ライブラリを使用したプログラムで監視を構成することもできます。You can configure monitoring using the Azure portal, PowerShell, or programmatically using the storage client library.

注意

PowerShell を使用して詳細な分析を有効にすることができます。You can enable minute analytics using PowerShell. この機能は Portal で使用できません。This capability is not available in the portal.

ストレージ アカウントのデータの管理Manage the data in the storage account

PowerShell によるストレージ アカウントの管理方法について確認したので、以下の記事を使用して、ストレージ アカウントのデータ オブジェクトにアクセスする方法を確認できます。Now that you understand how to manage your storage account with PowerShell, you can use the following articles to learn how to access the data objects in the storage account.

Azure Cosmos DB Table API は、ターンキー グローバル配布、低待ち時間の読み取りと書き込み、自動セカンダリ インデックス付け、専用スループットなど、テーブル ストレージに対する高度な機能を提供します。Azure Cosmos DB Table API provides premium features for table storage such as turnkey global distribution, low latency reads and writes, automatic secondary indexing, and dedicated throughput.

Azure の独立したクラウドのデプロイIndependent cloud deployments of Azure

ほとんどの人は、グローバルな Azure のデプロイに Azure パブリック クラウドを使用します。Most people use Azure Public Cloud for their global Azure deployment. 主権などの理由から、Microsoft Azure の独立したデプロイもいくつかあります。There are also some independent deployments of Microsoft Azure for reasons of sovereignty and so on. これらの独立したデプロイを「環境」と呼びます。These independent deployments are referred to as "environments." 利用可能な環境を次に示します。These are the available environments:

PowerShell でこれらのクラウドとそのストレージにアクセスする方法については、「Managing Storage in the Azure independent clouds using PowerShell (PowerShell を使用して Azure の独立したクラウドのストレージを管理する)」をご覧ください。For information about how to access these clouds and their storage with PowerShell, please see Managing Storage in the Azure independent clouds using PowerShell.

リソースのクリーンアップClean up resources

この演習用に新しいリソース グループとストレージ アカウントを作成した場合は、リソース グループを削除すると作成されたアセットをすべて削除できます。If you created a new resource group and a storage account for this exercise, yous can remove all of the assets you created by removing the resource group. これにより、そのグループ内に含まれているすべてのリソースも削除されます。This also deletes all resources contained within the group. この場合、作成されたストレージ アカウントとリソース グループ自体が削除されます。In this case, it removes the storage account created and the resource group itself.

Remove-AzureRmResourceGroup -Name $resourceGroup

次の手順Next steps

このハウツー記事では、管理プレーンのコマンドレットを使用してストレージ アカウントを管理する際の一般的な操作について説明します。This how-to article covers common operations using the management plane cmdlets to manage storage accounts. 以下の方法について学習しました。You learned how to:

  • ストレージ アカウントの列挙List storage accounts
  • 既存のストレージ アカウントへの参照の取得Get a reference to an existing storage account
  • ストレージ アカウントの作成Create a storage account
  • ストレージ アカウント プロパティの設定Set storage account properties
  • アクセス キーの取得および再生成Retrieve and regenerate the access keys
  • ストレージ アカウントへのアクセスの保護Protect access to your storage account
  • Storage Analytics の有効化Enable Storage Analytics

この記事では、データ オブジェクトの管理方法、Storage Analytics の有効化の方法、China Cloud、German Cloud、Government クラウドといった Azure の独立したクラウドにアクセスする方法など、他のいくつかの記事へのリンクも提供しました。This article also provided references to several other articles, such as how to manage the data objects, how to enable the Storage Analytics, and how to access the Azure independent clouds such as China Cloud, German Cloud, and Government Cloud. 参照用のその他の関連記事とリソースを次に示します。Here are some more related articles and resources for reference: