Azure Cache for Redis の構成方法

この記事では、Azure Cache for Redis インスタンスで利用可能な構成について説明します。 この記事では、Azure Cache for Redis インスタンスの既定の Redis サーバー構成についても説明します。

Note

Premium キャッシュ機能の構成と使用の詳細については、永続化の構成方法と、Virtual Network のサポートの構成方法に関する各記事をご覧ください。

Azure Cache for Redis の設定を構成する

  1. キャッシュを作成するには、Azure portal にサインインし、 [リソースの作成] を選択します。

    Create a resource is highlighted in the left navigation pane.

  2. [新規] ページで、 [データベース] を選択し、 [Azure Cache for Redis] を選択します。

    On New, Databases is highlighted, and Azure Cache for Redis is highlighted.

  3. [新規 Redis Cache] ページで、新しいキャッシュの設定を構成します。

    設定 値を選択する 説明
    サブスクリプション ドロップダウンで、ご自身のサブスクリプションを選択します。 この新しい Azure Cache for Redis インスタンスが作成されるサブスクリプション。
    リソース グループ ドロップ ダウンでリソース グループを選択するか、 [新規作成] を選択し、新しいリソース グループの名前を入力します。 その中にキャッシュやその他のリソースを作成するリソース グループの名前。 すべてのアプリ リソースを 1 つのリソース グループに配置することで、それらをまとめて簡単に管理または削除できます。
    DNS 名 一意の名前を入力します。 キャッシュ名は 1 から 63 文字の文字列で、数字、英字、ハイフンのみを使用する必要があります。 名前の先頭と末尾には数字または文字を使用する必要があり、連続するハイフンを含めることはできません。 キャッシュ インスタンスの "ホスト名" は、<DNS name>.redis.cache.windows.net です。
    場所 ドロップ ダウンで場所を選択します。 キャッシュを使用する他のサービスの近くのリージョンを選択します。
    キャッシュの種類 ドロップ ダウンでレベルを選択します。 レベルによって、キャッシュに使用できるのサイズ、パフォーマンス、および機能が決まります。 詳細については、Azure Cache for Redis の概要に関するページを参照してください。
  4. [ネットワーク] タブを選択するか、ページの下部にある [ネットワーク] ボタンを選択します。

  5. [ネットワーク] タブで、接続方法を選択します。

  6. [次へ: 詳細] タブを選択するか、ページの下部にある [次へ: 詳細] ボタンを選択して、[詳細] タブを表示します。

    Screenshot showing the Advanced tab in the working pane and the available option to select.

    • Basic または Standard キャッシュの場合は、非 TLS ポートの選択を切り替えます。 Microsoft Entra 認証を有効にするかどうかを選択することもできます。
    • Premium キャッシュの場合は、非 TLS ポート、クラスタリング、マネージド ID、データ永続化の設定を構成します。 Microsoft Entra 認証を有効にするかどうかを選択することもできます。
  7. ページの下部にある [次へ: タグ] タブを選択するか、ページの下部にある [次へ: タグ] ボタンを選択します。

  8. 必要に応じて、 [タグ] タブで、リソースを分類する場合は名前と値を入力します。

  9. [Review + create](レビュー + 作成) を選択します。 [確認および作成] タブが表示され、Azure によって構成が検証されます。

  10. 緑色の検証に成功のメッセージが表示された後、 [作成] を選択します。

キャッシュが作成されるまで、しばらく時間がかかります。 Azure Cache for Redis の [概要] ページで進行状況を監視できます。 [状態] に "実行中" と表示されている場合は、キャッシュを使用する準備ができています。

[リソース] メニューを使って、以下の設定を表示および構成できます。 表示される設定は、キャッシュのレベルによって異なります。 たとえば、再起動は Enterprise レベルを使用しているときは表示されません。

概要

[概要] セクションでは、名前、ポート、価格レベル、選ばれたキャッシュ メトリックなど、キャッシュに関する基本的な情報を表示します。

アクティビティ ログ

キャッシュに対して実行した操作を確認するには、 [アクティビティ ログ] を選択します。 また、フィルター処理を使用すれば、ビューを拡張してその他のリソースを含めることができます。 監査ログの処理の詳細については、Resource Manager の監査操作に関するページを参照してください。 Azure Cache for Redis イベントの監視の詳細については、「アラートを作成する」を参照してください。

アクセス制御 (IAM)

[アクセス制御 (IAM)] セクションでは、Azure portal での Azure ロールベースのアクセス制御 (Azure RBAC) のサポートが提供されます。 この構成により、組織は簡単かつ正確にアクセス管理要件を満たすことができます。 詳細については、Azure portal での Azure ロールベースのアクセス制御に関するページをご覧ください。

Tags

[タグ] セクションでは、リソースを整理できます。 詳細については、 タグを使用した Azure リソースの整理に関するページを参照してください。

問題の診断と解決

一般的な問題と、その問題を解決するための方法を確認するには、 [問題の診断と解決] を選択します。

イベント

[イベント] を選び、イベント サブスクリプションをキャッシュに追加します。 イベントを使用して、Azure に組み込まれているフル マネージドのイベント ルーティング サービスを使用して、待ち受け型でイベント ドリブン方式のアプリを構築します。

Event Grid では、クラウド インフラストラクチャへのオートメーションの組み込み、サーバーレス アプリの作成、サービスとクラウドの統合を行うことができます。 詳細については、「Azure Event Grid とは」を参照してください。

Redis コンソール

Redis コンソールを使用して Azure Cache for Redis インスタンスにコマンドを安全に発行できます。このコンソールは Basic、Standard、および Premium のキャッシュ レベルで、Azure portal で使用できます。

重要

Redis コンソールは VNet では機能しません。 キャッシュが VNet の一部である場合は、VNet のクライアントだけがキャッシュにアクセスできます。 Redis コンソールは、VNet の外部にあるローカル ブラウザーで実行されるため、キャッシュに接続できません。

Redis コンソールにアクセスするには、[リソース] メニューの作業ペインで [コンソール] タブを選びます。

Screenshot that highlights the Console button.

キャッシュ インスタンスに対してコマンドを発行するには、目的のコマンドをコンソールに入力します。

Screenshot that shows the Redis Console with the input command and results.

Note

Azure Cache for Redis では、すべての Redis コマンドがサポートされているわけではありません。 Azure Cache for Redis に対しては無効な Redis コマンドの一覧については、「Azure Cache for Redis でサポートされない Redis コマンド」セクションを参照してください。 Redis コマンドの詳細については、https://redis.io/commands を参照してください。

クラスター化された Premium キャッシュでの Redis コンソールの使用

クラスター化された Premium キャッシュで Redis コンソールを使用する場合は、キャッシュの単一のシャードにコマンドを発行できます。 コマンドを特定のシャードに発行するには、まず、シャード ピッカーで目的のシャードを選択して、そのシャードに接続します。

Redis console

接続したシャードとは別のシャードに格納されているキーにアクセスしようとすると、次のようなエラー メッセージが表示されます。

shard1>get myKey
(error) MOVED 866 13.90.202.154:13000 (shard 0)
shard1>get myKey
(error) MOVED 866 13.90.202.154:13000 (shard 0)

前の例ではシャード 1 を選択しましたが、エラー メッセージの (shard 0) 部分で示されているように、myKey はシャード 0 にあります。 この例では、myKey にアクセスするために、シャード ピッカーを使用してシャード 0 を選択してから、目的のコマンドを発行します。

新しいサブスクリプションへのキャッシュの移動

新しいサブスクリプションにキャッシュを移動するには、 [移動] を選択します。

Move Azure Cache for Redis

リソース グループ間、およびサブスクリプション間でのリソースの移動については、「 新しいリソース グループまたはサブスクリプションへのリソースの移動」をご覧ください。

設定

[設定] セクションでは、キャッシュに関する次の設定にアクセスして構成できます。

認証

認証には、アクセス キーと Microsoft Entra 認証の 2 つのオプションがあります。

アクセス キー

[アクセス キー] を選択すると、キャッシュのアクセス キーを表示したり、再生成したりできます。 これらのキーは、キャッシュに接続するクライアントによって使用されます。

Screenshot showing Authentication selected in the Resource menu and access Keys in the working pane.

(プレビュー) Microsoft Entra 認証

[(プレビュー) Microsoft Entra ID] を選択し、Microsoft Entra ID と統合することで、パスワード不要の認証メカニズムを利用できます。 この統合には、オープン ソース Redis でサポートされているアクセス制御リスト (ACL) を通じて提供されるロールベースのアクセス制御機能も含まれます。

Screenshot showing Authentication selected in the Resource menu and Microsoft Entra ID in the working pane.


詳細設定

次の設定は、左側にある [詳細設定] で構成します。

アクセス ポート

新しいキャッシュでは、TLS/SSL を使用しないアクセスが既定で無効になっています。 非 TLS ポートを有効にするには、左側の [詳細設定] にある [SSL によるアクセスのみ許可する][いいえ] をクリックしてから、 [保存] を選択します。

注意

Azure Cache for Redis に対する TLS アクセスでは現在、TLS 1.0、1.1、および 1.2 がサポートされていますが、バージョン 1.0 および 1.1 はまもなく廃止されます。 詳細については、TLS 1.0 および 1.1 の削除に関するページを参照してください。

Azure Cache for Redis Access Ports

メモリ ポリシー

キャッシュのメモリ ポリシーは、左側の[リソース] メニューの [詳細設定] にある [Maxmemory ポリシー][maxmemory-reserved][maxfragmentationmemory-reserved] の各設定を使用して構成します。 キャッシュを作成すると、maxmemory-reservedmaxfragmentationmemory-reserved の値がキャッシュ サイズである既定値の maxmemory の 10% になります。

Azure Cache for Redis Maxmemory Policy

[Maxmemory ポリシー] ではキャッシュの削除ポリシーが構成されます。次の削除ポリシーから選択できます。

  • volatile-lru: 既定の削除ポリシーです。 有効期限が指定されたすべてのキーの中で、最も長く使われていないキーを削除します。
  • allkeys-lru: 最も長く使われていないキーを削除します。
  • volatile-random: 有効期限が設定されたランダム キーを削除します。
  • allkeys-random: ランダム キーを削除します。
  • volatile-ttl: 設定された有効期限に基づいて、存続時間が最短のキーを削除します。
  • noeviction: 削除ポリシーはありません。 データを挿入しようとすると、エラー メッセージが返されます。
  • volatile-lfu: 有効期限が切れたフィールド セットを持つすべてのキーから、最も使用頻度の低いキーを削除します。
  • allkeys-lfu: すべてのキーから最も使用頻度の低いキーを削除します。

maxmemory ポリシーの詳細については、「Eviction policies (削除ポリシー)」をご覧ください。

maxmemory-reserved 設定は、フェールオーバー中のレプリケーションなどのキャッシュ以外の操作のために予約されるメモリの量をクラスター内のインスタンスあたりの MB 単位で構成するものです。 この値を設定すると、負荷が変化するときでも、Redis サーバーの稼働状態がより安定します。 大量のデータを書き込むワークロードでは、この値を高く設定する必要があります。 そのような操作に予約されているメモリは、キャッシュ データの保存には使用できません。 スライダーの最小値と最大値は 10% と 60% で、メガバイト単位で表示されます。 その範囲内の値を設定する必要があります。

maxfragmentationmemory-reserved 設定では、メモリの断片化に対応するために予約されるメモリ量をクラスター内のインスタンスあたりの MB 単位で構成します。 この値を設定すると、キャッシュがいっぱいになった場合や、キャッシュがほとんどいっぱいで断片化の割合が高い場合でも、Redis サーバーの動作がより安定します。 そのような操作に予約されているメモリは、キャッシュ データの保存には使用できません。 スライダーの最小値と最大値は 10% と 60% で、メガバイト単位で表示されます。 その範囲内の値を設定する必要があります。

新しいメモリ予約値 (maxmemory-reserved または maxfragmentationmemory-reserved) を選択する際には、この変更によってすでに大量のデータが入っているキャッシュがどのような影響を受けるのかを考慮する必要があります。 たとえば、53 GB のキャッシュに 49 GB のデータが入っているときに、予約値を 8 GB に変更した場合、この変更によりシステムで利用可能な最大メモリは 45 GB まで低下します。 現在の used_memory または used_memory_rss の値が新しい上限値の 45 GB よりも大きい場合、システムでは、used_memoryused_memory_rss の両方が 45 GB を下回るまでデータを削除する必要があります。 削除することによってサーバーの負荷やメモリの断片化が増える可能性もあります。 used_memoryused_memory_rss などのキャッシュ メトリックの詳細については、「独自のメトリックを作成する」を参照してください。

重要

maxmemory-reserved 設定と maxfragmentationmemory-reserved 設定は、Basic、Standard、Premium のキャッシュにのみ使用可能です。

キースペース通知 (詳細設定)

Redis キースペース通知は、左側の [詳細設定] で構成します。 キースペース通知により、特定のイベントが発生したときに、クライアントが通知を受信できます。

Azure Cache for Redis Advanced Settings )

重要

キースペース通知と notify-keyspace-events 設定は、Standard キャッシュと Premium キャッシュに対してのみ使用可能です。

詳細については、 Redis キースペース通知に関するトピックを参照してください。 サンプル コードについては、Hello world サンプルの KeySpaceNotifications.cs ファイルを参照してください。

スケール

キャッシュの価格レベルを表示または変更するには、 [スケール] を選択します。 スケーリングの詳細については、「Azure Cache for Redis のスケーリング方法」をご覧ください。

Azure Cache for Redis pricing tier

クラスター サイズ

クラスタリングが有効になっている実行中の Premium キャッシュのクラスター サイズを変更するには、 [クラスター サイズ] を選択します。

Cluster size

クラスター サイズを変更するには、スライダーを使用するか、 [シャード数] ボックスに 1 から 10 の範囲の数値を入力してください。 その後、 [OK] を選択して保存します。

データの永続化

[データ永続化] を選択して、Premium Cache のデータ永続化を有効にする、無効にする、または構成することができます。 Azure Cache for Redis では、RDB の永続化または AOF の永続化を使用して Redis の永続化を行うことができます。

詳細については、Premium Azure Cache for Redis の永続化の構成方法についてのページを参照してください。

重要

Redis のデータ永続化は、Premium Cache でのみ使用できます。

ID

ID を使用してマネージド ID を構成します。 マネージド ID は、開発者がシークレットとサインイン情報を管理する負担を最小限に抑えるのに役立つ、Azure で使用される一般的なツールです。

現時点では、ストレージにはマネージド ID のみを使用できます。 詳細については、「ストレージのマネージド ID」を参照してください。

注意

マネージド ID 機能は、ストレージで使用するために Premium レベルでのみ使用できます。

更新のスケジュール

[更新のスケジュール] セクションでは、キャッシュの Redis サーバー更新のメンテナンス期間を選択できます。

重要

このメンテナンス時間は、Redis サーバーの更新にのみ適用されます。Azure の更新や、キャッシュをホストする VM のオペレーティング システムへの更新には適用されません。

Schedule updates

メンテナンス期間を指定するには、目的の曜日のチェック ボックスをオンにします。 そのうえで、メンテナンス期間の開始時間を曜日ごとに指定し、 [OK] を選択します。 メンテナンス時間の時刻は UTC 時間です。

詳細と手順については、更新プログラム チャネルと更新プログラムのスケジュールに関するページを参照してください。

geo レプリケーション

[リソース] メニューの [geo レプリケーション] には、レベルが Premium である Azure Cache for Redis の 2 つのインスタンスをリンクするメカニズムが用意されています。 一方のキャッシュはプライマリ リンク キャッシュとして、もう一方のキャッシュはセカンダリ リンク キャッシュとして指定されます。 セカンダリ リンク キャッシュは読み取り専用になり、プライマリ キャッシュに書き込まれたデータがセカンダリ リンク キャッシュにレプリケートされます。 この機能は、Azure リージョン間でキャッシュをレプリケートする際に使用できます。

重要

geo レプリケーションは、Premium レベルのキャッシュにのみ使用できます。 詳細と手順については、Azure Cache for Redis の geo レプリケーションを構成する方法に関するページを参照してください。

Virtual Network

[Virtual Network] セクションでは、キャッシュの仮想ネットワークの設定を構成することができます。 仮想ネットワークは Premium キャッシュに制限されます。 VNET サポートでのプレミアム キャッシュの作成およびその設定の更新の詳細については、Premium Azure Cache for Redis の Virtual Network のサポートを構成する方法に関するページを参照してください。

重要

仮想ネットワークの設定は、キャッシュ作成時に VNet サポートで構成されたプレミアム キャッシュでのみ使用できます。

プライベート エンドポイント

[プライベート エンドポイント] セクションでは、キャッシュのプライベート エンドポイント設定を構成できます。 プライベート エンドポイントは、すべてのキャッシュ レベル (Basic、Standard、Premium、Enterprise) でサポートされています。 VNet の代わりにプライベート エンドポイントを使用することをお勧めします。 プライベート エンドポイントは簡単に設定または削除でき、すべてのレベルでサポートされ、一度に複数の異なる VNet にキャッシュを接続できます。

詳細については、「Azure Private Link を使用した Azure Cache for Redis」を参照してください。

ファイアウォール

  • ファイアウォール規則の構成は、Basic、Standard、Premium のすべてのレベルで使用できます。
  • ファイアウォール規則の構成は、Enterprise レベルまたは Enterprise Flash レベルでは使用できません。

キャッシュのファイアウォール ルールを表示して構成するには、 [ファイアウォール] を選択します。

Firewall

IP アドレス範囲の開始アドレスと終了アドレスで、ファイアウォール ルールを指定できます。 ファイアウォール ルールを構成すると、指定した IP アドレス範囲からのクライアント接続のみがキャッシュに接続できます。 ファイアウォール ルールを保存してからルールが有効になるまでに、短い遅延があります。 通常、この遅延は 1 分未満です。

重要

ファイアウォール ルールが構成されている場合でも、Azure Cache for Redis 監視システムからの接続は常に許可されます。

Properties

[プロパティ] を選択すると、キャッシュ エンドポイントやポートなど、キャッシュに関する情報を表示できます。

Azure Cache for Redis Properties

Locks

[ロック] セクションでは、サブスクリプション、リソース グループ、またはリソースにロックを適用し、組織の他のユーザーが誤って重要なリソースを削除したり変更したりするのを防止できます。 詳細については、「Azure Resource Manager によるリソースのロック」を参照してください。

管理の設定

[管理] セクションの設定では、キャッシュに対して次の管理タスクを実行できます。

Administration

インポート/エクスポート

Import/Export は、キャッシュ内のデータをインポートおよびエクスポートできる Azure Cache for Redis のデータ管理操作です。 premium キャッシュからの Azure Cache for Redis データベース (RDB) のスナップショットを、 Azure Storage アカウントのページ BLOB にインポートおよびエクスポートできます。 Import/Export を使用して、異なる Azure Cache for Redis インスタンス間での移行や、使用前のキャッシュへのデータ入力を行います。

任意のクラウドまたは環境で実行されている任意の Redis サーバーから、Redis 互換の RDB ファイルでインポートを使用できます。

  • Linux で実行されている Redis を含む
  • Windows
  • アマゾン ウェブ サービスなどの任意のクラウド プロバイダー

データをインポートすると、あらかじめデータが入力されたキャッシュを簡単に作成できます。 インポート処理中に、Azure Cache for Redis は RDB ファイルを Azure ストレージからメモリに読み込み、キーをキャッシュに挿入します。

Export では、Azure Cache for Redis に格納されたデータを、Redis と互換性のある RDB ファイルにエクスポートできます。 この機能を使えば、ある Azure Cache for Redis インスタンスから、別のインスタンスまたは別の Redis サーバーにデータを移動できます。 エクスポート処理中に、Azure Cache for Redis サーバー インスタンスをホストしている VM に一時ファイルが作成されます。 一時ファイルは、指定されたストレージ アカウントにアップロードされます。 エクスポート処理が完了したら、処理の成否にかかわらず、この一時ファイルは削除されます。

重要

Import/Export は、Premium レベル キャッシュにのみ使用可能です。 詳細および手順については、Azure Cache for Redis でデータをインポートまたはエクスポートすることに関するページを参照してください。

再起動

[再起動] 項目では、キャッシュのノードを再起動できます。 この再起動機能により、アプリケーションにキャッシュ ノードの障害が発生した場合の回復性をテストすることができます。

Reboot

クラスタリングが有効になっている Premium キャッシュがある場合は、再起動するキャッシュのシャードを選択できます。

Screenshot that shows where to select which shards of the cache to reboot.

キャッシュのノードを再起動するには、目的のノードを選択し、 [再起動] を選択します。 クラスタリングが有効になっている Premium キャッシュがある場合は、再起動するシャードを選び、[再起動] を選びます。 数分後、選択したノードが再起動され、さらに数分後にオンラインに戻ります。

重要

再起動を Enterprise レベルで使用することはまだできません。 再起動を他のすべてのレベルで使用することは可能です。 詳細および手順については、Azure Redis Cache の管理の再起動に関するページを参照してください。

監視

[監視] セクションでは、Azure Cache for Redis に対する診断および監視を構成できます。 Azure Cache for Redis の監視と診断の詳細については、「Azure Cache for Redis を監視する方法」を参照してください。

Diagnostics

洞察

[分析情報] を使用して、定義済みのタイルとグラフのグループを表示し、キャッシュ メトリックの出発点として使用します。

詳細については、「定義済みのグラフに Insights を使用する」を参照してください。

メトリック

[メトリック] を選んで独自のカスタム グラフを作成し、キャッシュについて表示するメトリックを追跡します。 詳細については、アラートの作成に関するページをご覧ください。

アラート

[アラート] を選び、Azure Cache for Redis のメトリックに基づくアラートを構成します。 詳細については、アラートの作成に関するページをご覧ください。

診断設定

既定では、Azure Monitor のキャッシュ メトリックは 30 日間格納され、その後削除されます。 キャッシュ メトリックを 30 日よりも長く保持するには、[診断設定] を選び、キャッシュ診断の格納に使用するストレージ アカウントを構成します。

Note

キャッシュ メトリックをストレージにアーカイブする以外に、イベント ハブにストリーム配信したり、Azure Monitor ログに送信したりできます。

Advisor の推奨事項

[Advisor の推奨事項] には、キャッシュに関する推奨事項が表示されます。 通常の操作中に推奨事項は表示されません。

Screenshot that shows where the Advisor recommendations are displayed but there are no current ones.

キャッシュの操作中に、差し迫った変更、高いメモリ使用量、ネットワーク帯域幅、またはサーバー負荷などの状況が発生した場合は、[リソース] メニューの [概要] にアラートが表示されます。

Screenshot that shows where alerts are displayed in when Overview is selected in the Resource menu.

詳細については、Azure portal の作業ペインの [推奨事項] を参照してください。

Screenshot that shows Advisor recommendations

これらのメトリックは、[リソース] メニューの [監視] セクションで監視できます。

Azure Cache for Redis のメトリック 詳細情報
ネットワーク帯域幅の使用量 キャッシュ パフォーマンス - 使用できる帯域幅
接続されているクライアント数 既定の Redis サーバー構成 - maxclients
サーバーの負荷 Redis サーバーの負荷
メモリ使用量 キャッシュのパフォーマンス - サイズ

キャッシュをアップグレードするには、 [今すぐアップグレード] を選択して、価格レベルを変更し、キャッシュのスケーリングを行います。 価格レベルの選択の詳細については、「適切なサービス レベルを選択する」を参照してください。

Workbooks

メトリック情報を一貫性のある効果的な方法で表示できるように、メトリックをグループにまとめます。

Automation

Azure Automation は、Azure 環境と非 Azure 環境の全体で一貫性ある管理をサポートするクラウドベースの自動化、オペレーティング システムの更新、および構成サービスを提供します。

タスク

[タスク] を選ぶと、Azure Cache for Redis リソースをより簡単に管理できます。 これらのタスクは、リソースの種類に基づいて、数と可用性が異なります。 現時点では、リソースの月額料金を送信テンプレートを使用するだけで、プレビュー中にタスクを作成できます。

詳細については、「自動化タスクを作成して Azure リソースを管理し、コストを監視する (プレビュー)」を参照してください。

テンプレートをエクスポートする

[テンプレートのエクスポート] を選び、将来のデプロイのために、デプロイ済みのリソースのテンプレートをビルドおよびエクスポートします。 テンプレートを操作する方法の詳細については、 Azure Resource Manager のテンプレートを使用したリソースのデプロイに関するページをご覧ください。

サポートおよびトラブルシューティング設定

[サポート + トラブルシューティング] セクションでは、キャッシュの問題を解決するためのオプションを設定できます。

Support and troubleshooting

リソース ヘルス

[リソース正常性] ではリソースが監視され、そのリソースが意図したとおりに動いているかどうかが示されます。 Azure Resource Health サービスの詳細については、「 Azure Resource Health の概要」を参照してください。

注意

現在、[リソース正常性] では、仮想ネットワークでホストされている Azure Cache for Redis インスタンスの正常性については報告できません。 詳細については、「 VNET でキャッシュをホストしている場合、キャッシュ機能はすべて動作しますか

新しいサポート要求

[新しいサポート リクエスト] を選択して、キャッシュのサポート リクエストを開きます。

既定の Redis サーバー構成

新しい Azure Cache for Redis インスタンスは、以下の既定の Redis 構成値を使用して構成されます。

注意

StackExchange.Redis.IServer.ConfigSet メソッドを使用してこのセクションの設定を変更することはできません。 このセクションのいずれかのコマンドでこのメソッドを呼び出すと、次の例のような例外がスローされます。

StackExchange.Redis.RedisServerException: ERR unknown command 'CONFIG'

max-memory-policy などの構成可能な値を、Azure Portal またはコマンド ライン管理ツール (Azure CLI、PowerShell など) を使用して構成できます。

設定 既定値 説明
databases 16 データベースの既定の数は 16 ですが、価格レベルに基づいてさまざまな数を構成できます。1 既定のデータベースは DB 0 です。dbid0databases - 1 の間の数値である connection.GetDatabase(dbid) を使用して、接続ごとに異なるデータベースを選択できます。
maxclients 価格レベルによって異なります。2 この値は、同時に接続が許可されているクライアントの最大数です。 制限に達すると、Redis はすべての新しい接続を終了し、"max number of clients reached" エラーを返します。
maxmemory-reserved maxmemory の 10% maxmemory-reserved の使用できる範囲は、maxmemory の 10% から 60% です。 これらの値を 10% 未満または 60% より大きい値に設定すると、再評価され、最小値 10% と最大値 60% に設定されます。 値はメガバイト単位でレンダリングされます。
maxfragmentationmemory-reserved maxmemory の 10% maxfragmentationmemory-reserved の使用できる範囲は、maxmemory の 10% から 60% です。 これらの値を 10% 未満または 60% より大きい値に設定すると、再評価され、最小値 10% と最大値 60% に設定されます。 値はメガバイト単位でレンダリングされます。
maxmemory-policy volatile-lru Maxmemory ポリシーとは、maxmemory (キャッシュ作成時に選択したキャッシュのサイズ) に達したときに、Redis サーバーが削除する項目を選択するために使用する設定です。 Azure Cache for Redis では、既定の設定は volatile-lru です。 この設定では、有効期限が設定されたキーが LRU アルゴリズムを使用して削除されます。 この設定は、Azure ポータルで構成できます。 詳細については、「メモリ ポリシー」をご覧ください。
maxmemory-samples 3 LRU アルゴリズムと最小 TTL アルゴリズムは精緻なアルゴリズムではなく、メモリを節約するための近似アルゴリズムです。 既定では、Redis はキーを 3 つ確認し、直近の使用頻度が比較的低いものを 1 つ選択します。
lua-time-limit 5,000 Lua スクリプトの最大実行時間 (ミリ秒)。 最大実行時間に達した場合は、Redis は、最大許容時間の後もスクリプトが実行中であることをログに記録し、クエリに対してエラーを知らせる応答を開始します。
lua-event-limit 500 スクリプト イベント キューの最大サイズです。
client-output-buffer-limit normal / client-output-buffer-limit pubsub 0 0 0 / 32mb 8mb 60 クライアントの出力バッファー制限は、なんらかの理由で十分な速度でサーバーからデータを読み取っていないクライアントを強制的に切断するために使用できます。 一般的な理由は、Pub クライアントまたは Sub クライアントがメッセージを使用する速度が、パブリッシャーがメッセージを生成するよりも遅いというものです。 詳細については、https://redis.io/topics/clientsを参照してください。

データベース

1databases の制限は、Azure Cache for Redis の価格レベルごとに異なっていて、キャッシュの作成時に設定できます。 キャッシュの作成中に databases を設定しない場合は、既定値の 16 が使用されます。

  • Basic キャッシュおよび Standard キャッシュ
    • C0 (250 MB) キャッシュ - 最大 16 のデータベース
    • C1 (1 GB) キャッシュ - 最大 16 のデータベース
    • C2 (2.5 GB) キャッシュ - 最大 16 のデータベース
    • C3 (6 GB) キャッシュ - 最大 16 のデータベース
    • C4 (13 GB) キャッシュ - 最大 32 のデータベース
    • C5 (26 GB) キャッシュ - 最大 48 のデータベース
    • C6 (53 GB) キャッシュ - 最大 64 のデータベース
  • Premium キャッシュ
    • P1 (6 GB ~ 60 GB) - 最大 16 のデータベース
    • P2 (13 GB ~ 130 GB) - 最大 32 のデータベース
    • P3 (26 GB ~ 260 GB) - 最大 48 のデータベース
    • P4 (53 GB ~ 530 GB) - 最大 64 のデータベース
    • P5 (120 GB ~ 1200 GB) - 最大 64 のデータベース
    • Redis クラスターが有効なすべての Premium キャッシュ - Redis クラスターは、データベース 0 の使用のみをサポートするため、Redis クラスターが有効な Premium キャッシュの databases の制限は、実質的に 1 で、 Select コマンドは使用できません。

データベースの詳細については、「What are Redis databases? (Redis データベースとは)」を参照してください

注意

databases の設定は、キャッシュの作成中にのみ構成できます。また、PowerShell、CLI、その他の管理クライアントを使用する必要があります。 PowerShell を使用して、キャッシュの作成中に databases を構成する例については、New-AzRedisCache に関するページをご覧ください。

Maxclients

2maxclients プロパティは Azure Cache for Redis の価格レベルごとに異なっています。

  • Basic キャッシュおよび Standard キャッシュ
    • C0 (250 MB) キャッシュ - 最大 256 接続
    • C1 (1 GB) キャッシュ - 最大 1,000 接続
    • C2 (2.5 GB) キャッシュ - 最大 2,000 接続
    • C3 (6 GB) キャッシュ - 最大 5,000 接続
    • C4 (13 GB) キャッシュ - 最大 10,000 接続
    • C5 (26 GB) キャッシュ - 最大 15,000 接続
    • C6 (53 GB) キャッシュ - 最大 20,000 接続
  • Premium キャッシュ
    • P1 (6 ~ 60 GB) - 最大 7,500 接続
    • P2 (13 ~ 130 GB) - 最大 15,000 接続
    • P3 (26 ~ 260 GB) - 最大 30,000 接続
    • P4 (53 ~ 530 GB) - 最大 40,000 接続
    • P5 (120 ~ 1200 GB) - 最大 40,000 接続

注意

各キャッシュのサイズが特定の接続数まで許容される一方で、Redis への各接続はそれにオーバーヘッドが関連付けられています。 このようなオーバーヘッドの例には、TLS/SSL 暗号化の結果としての CPU とメモリの使用量があります。 指定したキャッシュ サイズの最大接続数の上限は、負荷が低いキャッシュを想定しています。 接続オーバーヘッドからの読み込みに加えて、クライアントの操作からの読み込みがシステムの容量を超える場合、現在のキャッシュ サイズが接続数の上限を超えていない場合でも、キャッシュ容量の問題が発生する可能性があります。

Azure Cache for Redis でサポートされない Redis コマンド

Azure Cache for Redis インスタンスの構成と管理は Microsoft によって管理されるため、以下のコマンドが無効になります。 これらのコマンドを呼び出そうとすると、"(error) ERR unknown command" のようなエラー メッセージが送信されます。

  • ACL
  • BGREWRITEAOF
  • BGSAVE
  • CLUSTER - クラスターの書き込みコマンドは無効ですが、読み取り専用のクラスター コマンドは許可されます。
  • CONFIG
  • DEBUG
  • MIGRATE
  • PSYNC
  • REPLICAOF
  • REPLCONF - Azure Cache for Redis インスタンスでは、お客様が外部レプリカを追加することはできません。 通常、このコマンドはサーバーのみが送信します。
  • SAVE
  • SHUTDOWN
  • SLAVEOF
  • 同期

アクティブ geo レプリケーションを使用するキャッシュ インスタンスの場合、誤ってデータが失われるのを防ぐため、次のコマンドもブロックされます。

  • FLUSHALL
  • FLUSHDB

重要

Azure Cache for Redis インスタンスの構成と管理は Microsoft によって管理されるため、一部のコマンドは無効になります。 それらのコマンドの一覧は上にあります。 これらのコマンドを呼び出そうとすると、"(error) ERR unknown command" のようなエラー メッセージが送信されます。

Redis コマンドの詳細については、https://redis.io/commands を参照してください。