Azure CLI を使用して Azure Redis を作成する
このシナリオでは、Azure Redis インスタンスの作成方法について説明します。 次に、プロビジョニング状態、キャッシュのためのホスト名、ポート、キーなど、キャッシュの詳細を取得する方法について説明します。 最後に、キャッシュを削除する方法について説明します。
Azure サブスクリプションをお持ちでない場合は、開始する前に Azure 無料アカウントを作成してください。
前提条件
Azure Cloud Shell で Bash 環境を使用します。 詳細については、「Azure Cloud Shell の Bash のクイックスタート」を参照してください。
CLI リファレンス コマンドをローカルで実行する場合、Azure CLI をインストールします。 Windows または macOS で実行している場合は、Docker コンテナーで Azure CLI を実行することを検討してください。 詳細については、「Docker コンテナーで Azure CLI を実行する方法」を参照してください。
ローカル インストールを使用する場合は、az login コマンドを使用して Azure CLI にサインインします。 認証プロセスを完了するには、ターミナルに表示される手順に従います。 その他のサインイン オプションについては、Azure CLI でのサインインに関するページを参照してください。
初回使用時にインストールを求められたら、Azure CLI 拡張機能をインストールします。 拡張機能の詳細については、Azure CLI で拡張機能を使用する方法に関するページを参照してください。
az version を実行し、インストールされているバージョンおよび依存ライブラリを検索します。 最新バージョンにアップグレードするには、az upgrade を実行します。
サンプル スクリプト
Azure Managed Redis
Azure Managed Redis (プレビュー) インスタンスを作成するには、Azure portal にサインインし、[リソースの作成] を選択します。
[新規] ページで、検索ボックスに「Azure Cache for Redis」と入力します。
[新規 Redis Cache] ページで、新しいキャッシュの設定を構成します。
設定 値を選択する 説明 サブスクリプション ドロップダウンで、ご自身のサブスクリプションを選択します。 この新しい Azure Managed Redis インスタンスが作成されるサブスクリプション。 リソース グループ ドロップ ダウンでリソース グループを選択するか、 [新規作成] を選択し、新しいリソース グループの名前を入力します。 その中にキャッシュやその他のリソースを作成するリソース グループの名前。 すべてのアプリ リソースを 1 つのリソース グループに配置することで、それらをまとめて簡単に管理または削除できます。 DNS 名 リージョンで一意の名前を入力します。 キャッシュ名は、"キャッシュのリージョン名と組み合わせた" ときに 1 から 63 文字の文字列で、数字、英字、ハイフンのみを使用する必要があります。 (キャッシュ名の長さが 45 文字未満の場合、現在使用できるすべてのリージョンで機能するはずです)。名前の先頭と末尾には数字または文字を使用する必要があり、連続するハイフンを含めることはできません。 キャッシュ インスタンスの "ホスト名" は \<DNS name\>.\<Azure region\>.redis.azure.net
です。場所 ドロップ ダウンで場所を選択します。 Azure Managed Redis は、選択した Azure リージョンで使用できます。 キャッシュの種類 ドロップダウン メニューから、パフォーマンス レベルとキャッシュ サイズを選択します。 Redis インスタンスのパフォーマンスはレベルによって決まり、データの格納に使用できるメモリはキャッシュ サイズによって決まります。 適切なパフォーマンス レベルの選択に関するガイダンスについては、「最適なサービス レベルを選択する」を参照してください [次へ: ネットワーク] を選択し、パブリックまたはプライベート エンドポイントのいずれかを選択します。
[次: 詳細] を選択します。
インスタンスに追加する Redis モジュールを構成します。
新しいマネージド キャッシュの場合、既定で次のように設定されています。
- Microsoft Entra ID は有効になっています。
- [アクセス キー認証] は、セキュリティ上の理由から無効になっています。
重要
最適なセキュリティのため、可能であれば、キャッシュに対する要求を認可するのに Microsoft Entra ID とマネージド ID を使うことをお勧めします。 Microsoft Entra ID とマネージド ID を使う認可は、共有アクセス キーの認可より、セキュリティと使いやすさの点で優れています。 キャッシュでのマネージド ID の使用について詳しくは、キャッシュ認証への Microsoft Entra ID の使用に関する記事をご覧ください。
クラスター化されていないキャッシュの [Clustering policy] (クラスタリング ポリシー) を [Enterprise] に設定するか、クラスター化されたキャッシュの場合は [OSS] に設定します。 [クラスタリング ポリシー] の選択方法の詳細については、「クラスタリング ポリシー」を参照してください。
アクティブ geo レプリケーションを使用する場合は、作成時にそれを構成する必要があります。 詳細については、「Azure Managed Redis インスタンスのアクティブ geo レプリケーションを構成する」を参照してください。
重要
Azure Managed Redis (プレビュー) インスタンスのクラスタリング ポリシーは、作成後に変更することはできません。 RediSearch を使用している場合、Enterprise クラスター ポリシーは必須であり、サポートされている唯一の削除ポリシーは
NoEviction
です。重要
geo レプリケーション グループでこのキャッシュ インスタンスを使用している場合、インスタンスの作成後に削除ポリシーを変更することはできません。 キャッシュを作成する前に、プライマリ ノードの削除ポリシーを確認してください。 アクティブ geo レプリケーションの詳細については、「アクティブ geo レプリケーションの前提条件」を参照してください。
重要
キャッシュ インスタンスを作成した後でモジュールを変更することはできません。 モジュールは、Azure Cache for Redis インスタンスを作成するときに有効になっている必要があります。 キャッシュの作成後にモジュールの構成を有効にするオプションはありません。
タグ を選択してスキップします。
確認と作成 をクリックします。
設定を確認し、 [作成] を選択します。
Redis インスタンスの作成には数分かかります。 Azure Managed Redis の [概要] ページで進行状況を監視できます。 [状態] に "実行中" と表示されている場合は、キャッシュを使用する準備ができています。
Azure Cache for Redis
キャッシュを作成するには、Azure portal にサインインします。 ポータルのメニューで、[リソースの作成] を選びます。
[作業の開始] ペインの検索バーに「Azure Cache for Redis」と入力します。 検索結果で Azure Cache for Redis を見つけて、[作成] を選びます。
[新しい Redis Cache] ペインの [基本] タブで、以下のキャッシュの設定を構成します。
設定 アクション 説明 サブスクリプション Azure サブスクリプションを選択します。 Azure Cache for Redis の新しいインスタンスの作成に使うサブスクリプション。 リソース グループ リソース グループを選択するか、 [新規作成] を選択し、新しいリソース グループの名前を入力します。 キャッシュや他のリソースを作成するリソース グループの名前。 すべてのアプリ リソースを 1 つのリソース グループに配置することで、それらをまとめて簡単に管理または削除できます。 DNS 名 一意の名前を入力します。 キャッシュ名は、数字、英字、ハイフンのみを含む 1 から 63 文字の文字列とする必要があります。 名前の先頭と末尾には数字または文字を使用する必要があり、連続するハイフンを含めることはできません。 キャッシュ インスタンスの "ホスト名" は \<DNS name>.redis.cache.windows.net
です。場所 場所を選択します。 キャッシュを使う他のサービスに近い Azure リージョン。 キャッシュ SKU SKU を選びます。 SKU によって、キャッシュに利用できるサイズ、パフォーマンス、機能のパラメーターが決まります。 詳細については、Azure Cache for Redis の概要に関するページを参照してください。 キャッシュ サイズ キャッシュ サイズを選びます。 詳細については、Azure Cache for Redis の概要に関するページを参照してください。 [ネットワーク] タブを選ぶか、[次へ: ネットワーク] を選びます。
[ネットワーク] タブで、キャッシュに使う接続方法を選びます。
[詳細] タブを選ぶか、[次へ: 詳細] を選びます。
[詳細] ペインで、以下の情報に基づいて認証方法を確認または選択します。
- 既定では、新しい Basic、Standard、または Premium キャッシュでは、Microsoft Entra 認証が有効になり、アクセス キー認証が無効になります。
- Basic または Standard キャッシュの場合は、非 TLS ポートを選択できます。
- Standard および Premium キャッシュの場合は、可用性ゾーンを有効にすることを選択できます。 キャッシュの作成後に可用性ゾーンを無効にすることはできません。
- Premium キャッシュを利用する場合は、非 TLS ポート、クラスタリング、マネージド ID、データ永続化の設定を構成します。
重要
最適なセキュリティのため、可能であれば、キャッシュに対する要求を認可するのに Microsoft Entra ID とマネージド ID を使うことをお勧めします。 Microsoft Entra ID とマネージド ID を使う認可は、共有アクセス キーの認可より、セキュリティと使いやすさの点で優れています。 キャッシュでのマネージド ID の使用について詳しくは、キャッシュ認証への Microsoft Entra ID の使用に関する記事をご覧ください。
(省略可能) [タグ] タブを選ぶか、[次へ: タグ] を選びます。
(省略可能) キャッシュ リソースを分類する場合は、[タグ] タブでタグの名前と値を入力します。
[確認および作成] ボタンを選択します。
[確認と作成] タブでは、Azure によって構成が自動的に検証されます。
緑色の検証に成功のメッセージが表示された後、 [作成] を選択します。
新しいキャッシュのデプロイは数分で完了します。 デプロイの進行状況は、Azure Cache for Redis の [概要] ペインで監視できます。 [状態] に [実行中] と表示されたら、キャッシュを使用できます。
Azure Cloud Shell を起動する
Azure Cloud Shell は無料のインタラクティブ シェルです。この記事の手順は、Azure Cloud Shell を使って実行することができます。 一般的な Azure ツールが事前にインストールされており、アカウントで使用できるように構成されています。
Cloud Shell を開くには、コード ブロックの右上隅にある [使ってみる] を選択します。 https://shell.azure.com に移動して、別のブラウザー タブで Cloud Shell を起動することもできます。
Cloud Shell が開いたら、お使いの環境に対して Bash が選択されていることを確認します。 後続のセッションでは、Bash 環境で Azure CLI を使用します。[コピー] を選択してコードのブロックをコピーし、Cloud Shell に貼り付けます。その後、Enter キーを押してそれを実行します。
Azure へのサインイン
Cloud Shell は、サインインした最初のアカウントで自動的に認証されます。 別のサブスクリプションを使用してサインインするには、次のスクリプトを使用し、subscriptionId をご使用の Azure サブスクリプション ID に置き換えます。
Azure サブスクリプションをお持ちでない場合は、開始する前に Azure 無料アカウントを作成してください。
subscription="subscriptionId" # Set Azure subscription ID here
az account set -s $subscription # ...or use 'az login'
詳細については、アクティブなサブスクリプションの設定または対話形式のログインに関する記事を参照してください。
スクリプトを実行する
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-redis-cache-rg-$randomIdentifier"
tag="create-manage-cache"
cache="msdocs-redis-cache-$randomIdentifier"
sku="Balanced_B1"
# Create a resource group
echo "Creating $resourceGroup in "$location"..."
az group create --resource-group $resourceGroup --location "$location" --tags $tag
# Create a Balanced B1 Azure Managed Redis Cache
echo "Creating $cache"
az redisenterprise create --name $cache --resource-group $resourceGroup --location "$location" --sku $sku
# Get details of an Azure Managed Redis
echo "Showing details of $cache"
az redisenterprise show --name "$cache" --resource-group $resourceGroup
# Retrieve the hostname and ports for an Azure Redis Cache instance
redis=($(az redisenterprise show --name "$cache" --resource-group $resourceGroup --query [hostName,enableNonSslPort,port,sslPort] --output tsv))
# Retrieve the keys for an Azure Redis Cache instance
keys=($(az redisenterprise list-keys --name "$cache" --resource-group $resourceGroup --query [primaryKey,secondaryKey] --output tsv))
# Display the retrieved hostname, keys, and ports
echo "Hostname:" ${redis[0]}
echo "Non SSL Port:" ${redis[2]}
echo "Non SSL Port Enabled:" ${redis[1]}
echo "SSL Port:" ${redis[3]}
echo "Primary Key:" ${keys[0]}
echo "Secondary Key:" ${keys[1]}
# Delete a redis cache
echo "Deleting $cache"
az redisenterprise delete --name "$cache" --resource-group $resourceGroup -y
# echo "Deleting all resources"
az group delete --resource-group $resourceGroup -y
リソースをクリーンアップする
次のように az group delete コマンドを使用して、リソース グループと、それに関連付けられているすべてのリソースを削除します。ただし、これらのリソースが継続的に必要でない場合に限ります。 これらのリソースの一部は、削除や作成に時間がかかる場合があります。
az group delete --resource-group $resourceGroup
サンプル リファレンス
このスクリプトでは、次のコマンドを使用して、リソース グループと Azure Managed Redis を作成します。 表内の各コマンドは、それぞれのドキュメントにリンクされています。
コマンド | メモ |
---|---|
az group create | すべてのリソースを格納するリソース グループを作成します。 |
az redisenterprise create | Azure Managed Redis インスタンスを作成します。 |
az redisenterprise show | Azure Managed Redis インスタンスの詳細を取得します。 |
az redisenterprise list-keys | Azure Managed Redis インスタンスのアクセス キーを取得します。 |
az redisenterprise delete | Azure Managed Redis インスタンスを削除します。 |
Azure Cloud Shell を起動する
Azure Cloud Shell は無料のインタラクティブ シェルです。この記事の手順は、Azure Cloud Shell を使って実行することができます。 一般的な Azure ツールが事前にインストールされており、アカウントで使用できるように構成されています。
Cloud Shell を開くには、コード ブロックの右上隅にある [使ってみる] を選択します。 https://shell.azure.com に移動して、別のブラウザー タブで Cloud Shell を起動することもできます。
Cloud Shell が開いたら、お使いの環境に対して Bash が選択されていることを確認します。 後続のセッションでは、Bash 環境で Azure CLI を使用します。[コピー] を選択してコードのブロックをコピーし、Cloud Shell に貼り付けます。その後、Enter キーを押してそれを実行します。
Azure へのサインイン
Cloud Shell は、サインインした最初のアカウントで自動的に認証されます。 別のサブスクリプションを使用してサインインするには、次のスクリプトを使用し、subscriptionId をご使用の Azure サブスクリプション ID に置き換えます。
Azure サブスクリプションをお持ちでない場合は、開始する前に Azure 無料アカウントを作成してください。
subscription="subscriptionId" # Set Azure subscription ID here
az account set -s $subscription # ...or use 'az login'
詳細については、アクティブなサブスクリプションの設定または対話形式のログインに関する記事を参照してください。
スクリプトを実行する
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-redis-cache-rg-$randomIdentifier"
tag="create-manage-cache"
cache="msdocs-redis-cache-$randomIdentifier"
sku="basic"
size="C0"
# Create a resource group
echo "Creating $resourceGroup in "$location"..."
az group create --resource-group $resourceGroup --location "$location" --tags $tag
# Create a Basic C0 (256 MB) Redis Cache
echo "Creating $cache"
az redis create --name $cache --resource-group $resourceGroup --location "$location" --sku $sku --vm-size $size
# Get details of an Azure Cache for Redis
echo "Showing details of $cache"
az redis show --name "$cache" --resource-group $resourceGroup
# Retrieve the hostname and ports for an Azure Redis Cache instance
redis=($(az redis show --name "$cache" --resource-group $resourceGroup --query [hostName,enableNonSslPort,port,sslPort] --output tsv))
# Retrieve the keys for an Azure Redis Cache instance
keys=($(az redis list-keys --name "$cache" --resource-group $resourceGroup --query [primaryKey,secondaryKey] --output tsv))
# Display the retrieved hostname, keys, and ports
echo "Hostname:" ${redis[0]}
echo "Non SSL Port:" ${redis[2]}
echo "Non SSL Port Enabled:" ${redis[1]}
echo "SSL Port:" ${redis[3]}
echo "Primary Key:" ${keys[0]}
echo "Secondary Key:" ${keys[1]}
# Delete a redis cache
echo "Deleting $cache"
az redis delete --name "$cache" --resource-group $resourceGroup -y
# echo "Deleting all resources"
az group delete --resource-group $resourceGroup -y
リソースをクリーンアップする
次のように az group delete コマンドを使用して、リソース グループと、それに関連付けられているすべてのリソースを削除します。ただし、これらのリソースが継続的に必要でない場合に限ります。 これらのリソースの一部は、削除や作成に時間がかかる場合があります。
az group delete --resource-group $resourceGroup
サンプル リファレンス
このスクリプトでは、次のコマンドを使用して、リソース グループと Azure Cache for Redis を作成します。 表内の各コマンドは、それぞれのドキュメントにリンクされています。
コマンド | メモ |
---|---|
az group create | すべてのリソースを格納するリソース グループを作成します。 |
az redis create | Azure Managed Redis インスタンスを作成します。 |
az redis の表示 | Azure Managed Redis インスタンスの詳細を取得します。 |
az redis list-keys | Azure Managed Redis インスタンスのアクセス キーを取得します。 |
az redis delete | Azure Managed Redis インスタンスを削除します。 |
次のステップ
Azure CLI の詳細については、Azure CLI のドキュメントのページをご覧ください。
クラスタリングを使用して Azure Managed Redis を作成する Azure Managed Redis CLI スクリプト サンプルについては、クラスタリングを使用した Azure Managed Redis に関するページを参照してください。