如何設定 Azure 受控 Redis (預覽版)
本文說明 Azure 受控 Redis 實例可用的組態。 本文也涵蓋 Azure 受控 Redis 實例的預設 Redis 伺服器 組態。
設定 Azure 受控 Redis 設定
您可以使用 [資源功能表] 檢視及設定下列設定。
概觀
[概觀] 區段提供實例的基本資訊,例如名稱、端點、定價層、模組、異地復寫狀態,以及選取的快取計量。
活動記錄檔
選取 [活動記錄] 以檢視對快取執行的動作。 您也可以使用篩選,來展開此檢視以包含其他資源。 如需使用稽核記錄的詳細資訊,請參閱使用 Resource Manager 來稽核作業。 如需監視活動記錄的詳細資訊,請參閱活動記錄。
存取控制 (IAM)
[存取控制 (IAM)] 區段提供 Azure 入口網站中對於 Azure 角色型存取控制 (Azure RBAC) 的支援。 此設定可協助組織簡單而精準地符合其存取管理需求。 如需詳細資訊,請參閱 Azure 入口網站中的 Azure 角色型存取控制。
標籤
[標記] 區段有助於您組織資源。 如需詳細資訊,請參閱 使用標記組織您的 Azure 資源。
診斷並解決問題
選取 [診斷並解決問題] 將提供您這些常見問題和解決問題的策略。
Redis 主控台
Azure 受控 Redis 尚不支援直接存取 Redis 主控台。 相反地,請考慮使用 Redis CLI 或 Redis Insight 之類的工具。
將您的快取移動到新的訂用帳戶
您可以選取 [移動],將快取移至新的訂閱。
如需將資源從某個資源群組移到另一個資源群組,以及從某個訂用帳戶移到另一個訂用帳戶的相關資訊,請參閱 將資源移動到新的資源群組或訂用帳戶。
設定
[設定] 區段中的設定可讓您存取和設定下列快取設定。
驗證
您有兩個驗證選項:存取密鑰和 Microsoft Entra Authentication。 建議使用 Microsoft Entra Authentication,因為它更安全。
選取 [存取金鑰] 以檢視或重新產生快取的存取金鑰。 這些金鑰是由連線到您的快取的用戶端所使用。
進階設定
下列設定是在左側的 [進階設定] 上進行設定。
存取連接埠
根據預設,只會針對新的快取啟用 TLS 存取。 若要啟用非 TLS 存取,請選取 [僅啟用非 TLS 存取],然後選取 [儲存]。
注意
Azure 受控 Redis 支援 TLS 1.2 和 1.3。 如需詳細資訊,請參閱 TLS 通訊協定的組態設定為何?
記憶體原則
當您建立快取時,大約 20% 的實例記憶體會保留為複寫和其他系統進程的記憶體緩衝區。 這有助於實例更有效率地運作。
收回原則 會設定快取的收回原則,並可讓您從下列收回原則中選擇:
volatile-lru
:預設收回原則。 它會從已設定到期日的所有金鑰中移除最近最少使用的金鑰。allkeys-lru
:移除最近最少使用的金鑰。volatile-random
:移除已設定到期日的隨機金鑰。allkeys-random
:移除隨機金鑰。volatile-ttl
:根據已設定的到期日,移除存留時間最短的金鑰。noeviction
:沒有收回原則。 如果您嘗試插入資料,則會傳回錯誤訊息。volatile-lfu
:從已設定到期欄位的所有金鑰中收回最少使用的金鑰。allkeys-lfu
:從所有金鑰中收回最少使用的金鑰。
如需詳細資訊,請參閱 收回原則。
Keyspace 通知
Redis keyspace 通知是使用 notify-keyspace-events 方塊來設定。 Keyspace 通知可讓用戶端在特定事件發生時收到通知。 Keyspace 通知可用來 根據 Redis 實例上的活動來觸發 Azure Functions 。
如需詳細資訊,請參閱 Redis Keyspace 通知(英文)。
資料持續性
數據持續性 可讓您啟用、停用或設定 Redis 實例的數據持續性。 Azure 受控 Redis 會使用 RDB 持續性或 AOF 持續性來提供 Redis 持續性。
如需詳細資訊,請參閱 設定 Azure 受控 Redis 實例的數據持續性。
加密
選取 [加密 ] 以加密儲存在磁碟上的任何數據,例如從 實例匯出的數據持續性檔案或檔案。 如需詳細資訊,請參閱 使用客戶管理的密鑰設定 Azure 受控 Redis 實例的磁碟加密
作用中異地複寫
在 [資源] 功能表上,主動式異地複寫提供一種機制,可在主動-主動設定中連結最多五個 Azure 受控 Redis 實例。 這項功能可用來跨 Azure 區域復寫快取,以提供更高的數據持久性和可用性。 如需詳細資訊,請參閱 設定 Azure 受控 Redis 實例的作用中異地複寫
調整
選取 [ 調整] 以檢視或變更 Redis 實例的大小和效能層級。 如需有關調整的詳細資訊,請參閱 如何調整 Azure 受控 Redis。
更新排程
Azure 受控 Redis 中尚未提供排程的更新。
屬性
選取 [屬性 ] 以檢視實例的相關信息,包括端點、Redis DB 版本和叢集原則。
鎖定
[鎖定] 區段可讓您鎖定訂用帳戶、資源群組或資源,以防止組織中的其他使用者不小心刪除或修改重要資源。 如需詳細資訊,請參閱使用 Azure Resource Manager 來鎖定資源。
系統管理
[系統管理] 區段可讓您存取並設定 Redis 實例的下列設定:
匯入/匯出
匯入/導出是 Azure 受控 Redis 數據管理作業,可讓您匯入和匯出 Redis 實例的數據。 您可以從 Azure 儲存體 帳戶匯入和匯出 Redis 資料庫 (RDB) 快照集。 使用匯入/匯出在不同的 Azure 受控 Redis 實例之間移轉,或在使用之前填入數據快取。
您可以從幾乎任何雲端或環境中執行的任何 Redis 伺服器,使用與 Redis 相容的 RDB 檔案匯入,包括:
- 在 VM 或容器上執行的 Redis
- 雲端提供者,例如 Amazon Web Services 或其他提供者
匯入資料是使用預先填入資料建立快取的輕鬆方式。 在匯入程式期間,Azure 受控 Redis 會將 RDB 檔案從 Azure 記憶體載入記憶體,然後將金鑰插入快取中。
匯出可讓您將儲存在 Azure 受控 Redis 中的數據匯出至 Redis 相容的 RDB 檔案。 您可以使用此功能將資料從一個 Azure 受控 Redis 實例移至另一個或另一個 Redis 伺服器。 在導出程式期間,會在裝載 Azure 受控 Redis 實例的 VM 上建立暫存盤。 此暫存檔案會上傳至指定的儲存體帳戶。 當匯出作業完成時的狀態為成功或失敗時,都會刪除暫存檔案。
如需詳細資訊和指示,請參閱 在 Azure 受控 Redis 中匯入和匯出數據。
私人端點
[私人端點] 區段可讓您設定實例的私人端點設定。 我們建議針對所有生產工作負載使用私人端點。
如需詳細資訊,請參閱使用 Azure Private Link 的 Azure Cache for Redis。
監視
[監視] 區段可讓您設定 Azure 受控 Redis 實例的診斷和監視。
- 如需 Azure 受控 Redis 監視和診斷的詳細資訊,請參閱 監視 Azure 受控 Redis。
- 如需 Azure 受控 Redis 中使用的計量清單,請參閱 Azure 受控 Redis 監視數據參考。
警示
選取 [ 警示 ] 以根據 Azure 受控 Redis 計量來設定警示。 如需詳細資訊,請參閱建立警示。
計量
選取 [計量] 以建立您自己的自訂圖表,並追蹤您要查看的快取計量。 如需詳細資訊,請參閱建立您自己的計量。
Advisor 建議
[Advisor 建議] 會顯示快取建議。 在一般作業期間,不會顯示任何建議。
如果快取作業期間發生任何狀況 (例如,即將發生的變更、高記憶體使用量、網路頻寬或伺服器負載),[資源] 功能表的 [概觀] 中會顯示警示。
您可以在 Azure 入口網站的工作窗格中的 [建議] 看到更多資訊。
診斷設定計量
根據預設,Azure 監視器中的快取計量會儲存 30 天,而後刪除。 若要保存快取計量超過 30 天,請選取 [診斷設定 - 計量 ] 來 設定用來儲存快取診斷的記憶體帳戶 。
注意
除了將快取計量封存至儲存體,您也可以將其串流至事件中樞或將其傳送至 Azure 監視器記錄。
診斷設定稽核
使用 診斷設定 - 稽核 來記錄對 Azure 受控 Redis 實例進行的連線,包括成功和失敗的連線嘗試。 如需詳細資訊,請參閱 使用診斷設定監視 Azure 受控 Redis 數據
自動化
Azure 自動化提供雲端式自動化、作業系統更新和設定服務,並支援 Azure 和非 Azure 環境間的一致管理。
工作
選取 [ 工作 ] 以協助您更輕鬆地管理 Azure 受控 Redis 資源。 這些工作的數目和可用性會根據資源類型而不同。 目前在預覽期間,您只能使用資源的每月傳送成本範本建立工作。
如需詳細資訊,請參閱建立自動化工作管理 Azure 資源並監視成本。
匯出範本
選取 [匯出範本] 組建並匯出已部署的資源範本,供日後部署使用。 如需使用範本的詳細資訊,請參閱 使用 Azure Resource Manager 範本部署資源。
說明
[說明] 區段中的設定提供您解決快取問題的選項。
資源健康情況
資源健康狀態 會監看您的資源,並告知您資源是否正如預期般執行。 Azure 受控 Redis 尚不支持資源健康情況。 如需 Azure 資源健康狀態服務的詳細資訊,請參閱 Azure 資源健康狀態概觀。
支援和疑難解答
選取 [支援 + 疑難解答 ] 以開啟快取的支援要求。
其他組態資訊
預設 Redis 伺服器組態
新的 Azure 受控 Redis 實例會使用下列預設 Redis 組態值來設定:
設定 | 預設值 | 說明 |
---|---|---|
maxclients |
取決於定價層2 | 此值是允許同時連線的用戶端數目上限。 一旦達到限制,Redis 會關閉所有新的連線,並傳送「達到用戶端的數目上限」錯誤。 |
maxmemory-reserved |
20% 的 maxmemory |
20% 的記憶體會保留給複寫緩衝區和其他系統進程。 無法變更此參數。 |
maxmemory-policy |
noeviction |
Redis 伺服器使用 [maxmemory 原則] 設定,在達到 maxmemory (您在建立快取時選取的快取大小) 時,選取要移除哪些內容。 使用 Azure 受控 Redis 時,預設設定為 noeviction 。 如果您嘗試將數據插入完整的 Redis 實例,此設定會傳回錯誤訊息。 此設定可以在 Azure 入口網站中設定。 如需詳細資訊,請參閱記憶體原則。 |
maxmemory-samples |
3 | 為了節省記憶體,LRU 和最小 TTL 演算法是近似的演算法而不是精確的演算法。 依預設 Redis 將檢查三個金鑰,並挑選最近較少使用的金鑰。 |
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。 |
注意
Azure 受控 Redis 僅支援 Redis 組態設定的子集。 某些最常使用的組態設定,例如 max-memory-policy,可透過 azure CLI 或 PowerShell 等 Azure 入口網站 或命令行管理工具進行設定。
您可以使用 命令來設定 CONFIG SET
其他值。 如需詳細資訊,請參閱 與 Redis Community Edition 組態設定 的相容性。
資料庫
目前,Azure 受控 Redis 僅支援每個實例的單一資料庫。
用戶端數目上限
每個 maxclients
Azure 受控 Redis SKU 的屬性都不同。
如需每個 SKU 連線限制的詳細資訊,請參閱 Azure 受控 Redis 定價頁面。
注意
每個快取大小都可允許以某個數目為「上限」的連線數,而每個連到 Redis 的連線則都有相關的額外負荷。 因 TLS/SSL 加密而產生的 CPU 與記憶體使用量即是這類額外負荷的其中一例。 所指定快取大小的連線數上限是假設快取負載情況為輕度。 如果來自連線額外負荷的負載「加上」來自用戶端作業的負載超過系統的容量,則即使您尚未超出目前快取大小的連線限制,快取也會發生容量問題。
Azure 受控 Redis 中不支援 Redis 命令
Azure 受控 Redis 實例的設定和管理是由 Microsoft 管理,這會停用數個命令,以確保服務的安全且一致。
如果您嘗試叫用它們,會收到類似 "(error) ERR unknown command"
的錯誤訊息。
封鎖的指令包括:
- BGREWRITEAOF
- BGSAVE
- CLUSTER - 叢集寫入命令已停用,但允許唯讀的叢集命令。
- 模組載入
- MOVE
- PSYNC
- REPLICAOF
- REPLCONF - Azure 受控 Redis 實例不允許客戶新增外部複本。 此命令通常只由伺服器傳送。
- SAVE
- SHUTDOWN
- SELECT
- SYNC
如需封鎖命令的完整清單,請參閱 與 Redis Community Edition 命令的相容性
對於使用作用中異地複寫的快取執行個體,也會封鎖下列命令以避免不小心遺失資料:
- FLUSHALL
- FLUSHDB
請改為透過入口網站、PowerShell 或 CLI 使用 控制平面排清作業 。