AZURE CACHE FOR REDIS → STACKIT KEY VALUE STORE · HANDLEIDING
Azure Cache for Redis naar STACKIT Valkey, in de praktijk
De Key Value Store van STACKIT draait Valkey, dat clients via het Redis-protocol bereiken; de meeste applicaties wijzigen dus een hostnaam en inloggegevens. Deze handleiding beoordeelt op 4 november 2026 twee Azure-caches, een kleine Standard-cache en een Premium-cache met shards, zones en persistentie, en laat zien wat de engine opstelt en wat de engine aan u overlaat.
De handleiding in het kort
1. De caches in Terraform beschrijven
De demo heeft een virtueel netwerk, een subnet en twee azurerm_redis_cache-resources: redis-shop-ratelimit (Standard, family C) en redis-shop-sessions (Premium, twee shards, twee zones, RDB-persistentie, in het subnet geïnjecteerd).
2. Beoordelen
Beide caches zijn RECONFIGURE met zekerheidsniveau MEDIUM en een doel in Key Value Store. De klasse betekent dat de dienst een STACKIT-tegenhanger heeft, maar dat de configuratie geen kopie is.
3. Het concept lezen
Per cache schrijft de engine een stackit_valkey_instance en een stackit_valkey_credential, plus een gevoelige uitvoer voor het gegenereerde wachtwoord.
4. De variabelen invullen
Plannaam, Valkey-versie en de lijst met toegestane client-CIDR's zijn variabelen zonder standaardwaarde. De CIDR-lijst heeft een validatie die een lege lijst weigert.
5. Beslissen wat geen tegenhanger heeft
Sharding, uitsluitend privétoegang en het exacte evictiegedrag zijn beslissingen van de architect die in het architectenrapport staan.
6. De data plannen
Caches worden meestal opnieuw opgebouwd. Moeten ze toch worden meegenomen, dan noemt het bestand voor dataverplaatsing de eenheid en laat het de methode open.
Een Standard-cache wordt een Valkey-instance
Links: de cache van het niveau Standard zoals geschreven. Rechts: de blokken van de STACKIT-Terraform die de engine ervoor schreef, zonder de beoordelingsopmerkingen die erboven in het bestand staan.
resource "azurerm_redis_cache" "ratelimit" {
name = "redis-shop-ratelimit"
location = azurerm_resource_group.cache.location
resource_group_name = azurerm_resource_group.cache.name
capacity = 1
family = "C"
sku_name = "Standard"
minimum_tls_version = "1.2"
}resource "stackit_valkey_instance" "ratelimit" {
project_id = var.project_id
name = "redis-shop-ratelimit"
plan_name = var.ratelimit_plan_name
version = var.ratelimit_version
parameters = {
sgw_acl = join(",", var.ratelimit_allowed_cidrs)
}
}
resource "stackit_valkey_credential" "ratelimit" {
project_id = var.project_id
instance_id = stackit_valkey_instance.ratelimit.instance_id
}
output "ratelimit_valkey_credential_password" {
description = "The password STACKIT generated for the credential stackit_valkey_credential.ratelimit of azurerm_redis_cache.ratelimit. Sensitive: tofu output hides it from the plan, the state holds it in plain text."
value = stackit_valkey_credential.ratelimit.password
sensitive = true
}Grootte en family worden niet overgenomen
Capaciteit 1 van family C wordt niet vertaald naar een plan. Het concept noemt plan_name als variabele en vermeldt dat de cachegrootte aan u is om te kiezen. Het niveau geeft aan dat het doel een replica-plan nodig heeft, omdat hoge beschikbaarheid op STACKIT het plan is.
De toegangslijst vervangt de netwerkgrens
De variabele voor toegestane CIDR's heeft geen standaardwaarde. Zonder lijst past STACKIT zijn standaardtoegangslijst toe, die de adresbereiken van STACKIT-klanten in het algemeen omvat. Het concept weigert daarom een lege lijst.
Het wachtwoord wordt gegenereerd
De credential-resource geeft host, poort, gebruiker en wachtwoord terug. Het concept maakt het wachtwoord alleen beschikbaar als gevoelige uitvoer en maakt er geen secret voor aan: u leest het na de apply uit en geeft het vóór de cutover aan de clients.
Een Premium-cache met shards, zones en persistentie
Uit dezelfde run. Deze cache stelt bijna alles in waar een architect naar zou vragen. Het doelconcept bevat de instance, de toegangslijst en de credential, en de tabel hieronder laat zien wat er met de rest gebeurt.
resource "azurerm_redis_cache" "sessions" {
name = "redis-shop-sessions"
location = azurerm_resource_group.cache.location
resource_group_name = azurerm_resource_group.cache.name
capacity = 1
family = "P"
sku_name = "Premium"
non_ssl_port_enabled = false
minimum_tls_version = "1.2"
public_network_access_enabled = false
subnet_id = azurerm_subnet.cache.id
shard_count = 2
zones = ["1", "2"]
redis_configuration {
maxmemory_policy = "allkeys-lru"
rdb_backup_enabled = true
rdb_backup_frequency = 60
rdb_backup_max_snapshot_count = 1
rdb_storage_connection_string = var.rdb_connection_string
}
}resource "stackit_valkey_instance" "sessions" {
project_id = var.project_id
name = "redis-shop-sessions"
plan_name = var.sessions_plan_name
version = var.sessions_version
parameters = {
sgw_acl = join(",", var.sessions_allowed_cidrs)
}
}
resource "stackit_valkey_credential" "sessions" {
project_id = var.project_id
instance_id = stackit_valkey_instance.sessions.instance_id
}Tien openstaande punten bij één cache
Het architectenrapport laat 10 kritieke punten van deze cache aan een medewerker over (daarachter staan 12 bronattributen: blootstelling, back-upinstellingen, maxmemory-beleid, aantal shards, SKU, zones, de connection string voor back-ups, locatie, naam en resourcegroep), tegenover 4 punten bij de Standard-cache. In dat verschil zit de beoordelingstijd.
Uitsluitend privé wordt een toegangslijst
Een Valkey-instance staat niet binnen het projectnetwerk. Die heeft een eigen hostnaam en IPv4-adres en is bereikbaar vanuit STACKIT-adresbereiken en alles wat u aan de toegangslijst toevoegt. Het rapport adviseert de lijst te beperken tot de egress-adressen van de applicatie en de instance nooit voor alle adressen open te zetten.
Persistentie staat niet in het blok
Het rapport adviseert de snapshotfrequentie over te nemen in de parameter snapshot, maar het opgestelde blok stelt alleen de toegangslijst in. Voeg de parameter handmatig toe nadat u de frequentie hebt gekozen.
Wat elke Azure Redis-instelling wordt
| Azure-instelling (sessions-cache) | Op STACKIT Key Value Store | In de run |
|---|---|---|
| sku_name Premium, family P, capacity 1 | Een plan, single of replica, met vCPU, RAM en schijf | Variabele plan_name, grootte niet overgenomen |
| shard_count = 2 | Plannen zijn Single of Replica; geen sharding | Gemeld als niet ondersteund; de keyspace moet in één primary passen of de applicatie shardt zelf |
| zones = [1, 2] | Replica-plannen: drie nodes verdeeld over meerdere availability zones van de regio | De pagina met serviceplannen van STACKIT vermeldt dit; plannen met één node hebben die redundantie niet, dus kies een replica-plan |
| non_ssl_port_enabled = false, minimaal TLS 1.2 | TLS wordt afgedwongen, clients verbinden via rediss:// | Waarschuwing; er is geen TLS-attribuut om in te stellen |
| subnet_id, publieke netwerktoegang uit | Eigen host en IPv4-adres, toegangslijst | Variabele voor toegestane CIDR's, beslissing vastgelegd |
| rdb_backup_frequency, maximaal aantal snapshots | RDB-persistentie, back-ups door de dienst elke 4 uur, 14 dagen bewaard | Openstaande instellingen; de parameter snapshot voegt u zelf toe |
| rdb_storage_connection_string | Back-ups worden door de dienst zelf gemaakt; er is geen storage account om mee te verbinden | Instelling voor het omgaan met secrets, blijft ter beoordeling |
Linkerkolom uit de demo-invoer, middelste kolom uit de documentatie van STACKIT Key Value Store en het architectenrapport van de run, rechterkolom uit de run.
Controles voordat de eerste client verbindt
Het plan is een replica-plan waar de bron replica's had
STACKIT beschrijft single-instances als niet bedoeld voor productie, en het instancetype kan later niet meer worden gewijzigd.
De Valkey-versie past bij de clientbibliotheken
STACKIT adviseert de nieuwste versie te kiezen die uw clients ondersteunen; zelfs kleine versieverschillen kunnen voorkomen dat sommige clients verbinden.
De toegangslijst is smal
Alleen de egress-adressen van de applicaties, nooit 0.0.0.0/0.
Clients gebruiken TLS
Connection strings beginnen met rediss:// en de host komt uit de credential.
Eviction en verloop zijn getest
Het maxmemory-beleid van de bron is een openstaande instelling. Test het cachegedrag van de applicatie onder geheugendruk vóór de cutover.
Beheercommando's zijn uitgeprobeerd
Een opmerking in het concept vermeldt dat een test in een STACKIT-project het commando CONFIG weigerde voor een servicekey. Als een client of tool daarvan afhangt, zoek dat dan uit vóór de cutover.
De data verplaatsen, of niet
De run noemt beide caches stateful eenheden waarvan het mechanisme onbekend is. De run verplaatst niets.
Opnieuw opbouwen als het kan
Sessie- en rate-limitdata is meestal kortlevend. De koppelingsreden voor beide eenheden vermeldt dat data in de cache meestal opnieuw wordt opgebouwd in plaats van gemigreerd. Laat het verkeer de nieuwe instance vullen om die op te warmen.
Exporteren uit Azure
Import en export van RDB-snapshots in Azure bestaat voor de niveaus Premium en Enterprise, niet voor Basic en Standard. De Standard-cache in deze demo heeft zo'n export niet; de Premium-cache exporteert naar een page blob in een storage account.
Terugzetten in STACKIT
Het beheerde herstel van STACKIT richt zich op dezelfde instance en overschrijft die. Om een snapshot in een andere instance te laden, downloadt u de back-up, waarvoor een versleutelingssleutel nodig is, en zet u die zelf terug.
Keys live kopiëren
STACKIT publiceert een tutorial die keys kopieert door MIGRATE op de bron uit te voeren, waardoor ze direct naar het doel gaan, en die controleert met INFO KEYSPACE en een gesorteerde keydiff; gemiddeld ongeveer 50 seconden per GB. Die route werkt niet vanuit Azure: Microsoft noemt MIGRATE onder de commando's die Azure Cache for Redis uitschakelt. Exporteer voor de Premium-cache in plaats daarvan een RDB-bestand; voor de Standard-cache bouwt u opnieuw op of kopieert u met een tool aan de clientzijde.
Overschakelen
Stop de schrijvers op de bron, kopieer, controleer, schakel de connection strings om en houd de bron aan tot de controles slagen. Deze volgorde is algemene praktijk, geen uitvoer van de run.
Beslissingen die de architect neemt
Plan per cache
Single of replica, vCPU, RAM en schijf, op basis van de werkelijke datagrootte en belasting. De planningspagina van STACKIT rekent met RAM van minstens 125 % van de datagrootte en een schijf van ongeveer driemaal de datagrootte, en een plan kan wel worden opgeschaald maar niet worden verkleind.
Keyspace met sharding
In één primary laten passen, of in de applicatie sharden over meerdere instances.
Persistentie
Snapshotfrequentie, en of een back-upherstel een herstelpad is waarop u rekent.
Blootstelling
Welke CIDR's de instance bereiken en of dat acceptabel is voor een cache die privé was.
Timing
Microsoft heeft een tijdlijn voor de uitfasering van Azure Cache for Redis aangekondigd en beveelt Azure Managed Redis aan. Of u rechtstreeks naar STACKIT overstapt, is een platformbeslissing, geen cache-instelling.
Vragen over Redis naar Valkey
Is Valkey compatibel met mijn Redis-clients?
De documentatie van STACKIT en de koppeling beschrijven Valkey als bereikbaar via het Redis-protocol, dus de meeste clients wijzigen host, poort, inloggegevens en TLS-gebruik. De versie blijft ertoe doen: test de clientbibliotheken tegen de Valkey-versie die u kiest.
Wat gebeurt er met een geclusterde Premium-cache?
De plannen van STACKIT zijn Single of Replica, zonder sharding. De engine meldt het aantal shards als zonder tegenhanger. De keyspace moet in één primary passen, of de applicatie verdeelt de keys over meerdere instances.
Neemt het concept mijn Azure-toegangskeys over?
Nee. Het AUTH-token, de gebruikers en de toegangslijst van de bron worden niet gekopieerd. STACKIT genereert per instance een credential en het concept maakt het wachtwoord beschikbaar als gevoelige uitvoer.
Waarom is de klasse RECONFIGURE en niet REPLATFORM?
De run heeft het zo bepaald: de dienst heeft een STACKIT-tegenhanger en de clients behouden het protocol, maar instellingen voor grootte, toegang en persistentie moeten opnieuw worden geconfigureerd in plaats van gekopieerd.
Bronnen
- Data importeren en exporteren, Azure Cache for Redis (Microsoft Learn)
- Data migreren naar een nieuwe instance (STACKIT Key Value Store)
- Back-up en herstel van uw instances (STACKIT Key Value Store)
- Uw instance plannen (STACKIT Key Value Store)
- Azure Cache for Redis configureren (Microsoft Learn)
- Serviceplannen (STACKIT Key Value Store)
Uw volgende stap: STACKIT.
Vertel ons over uw omgeving, dan laten wij zien wat StackToIT daarvoor oplevert: doelarchitectuur, Terraform-artefacten en een gestructureerd migratieplan.
Laat uw gegevens achter, onze specialisten nemen contact met u op.
Liever zelf een e-mail sturen? connect@stacktoit.com
Hartelijk dank.
Uw verzoek is bij ons binnengekomen. Onze specialisten nemen contact met u op.