Delen via


Een Valkey-cluster implementeren in Azure Kubernetes Service (AKS)

In dit artikel bekijken we de uitdagingen voor het correct gebruik van Azure-beschikbaarheidszones bij het uitvoeren van een Valkey-cluster op AKS, delen we enkele overwegingen bij het schalen en stellen we een oplossing voor.

Belangrijk

Opensource-software wordt vermeld in AKS-documentatie en -voorbeelden. Software die u implementeert, is uitgesloten van AKS-serviceovereenkomsten, beperkte garantie en ondersteuning voor Azure. Wanneer u opensource-technologie naast AKS gebruikt, raadpleegt u de beschikbare ondersteuningsopties van de respectieve community's en projectonderhouders om een plan te ontwikkelen.

De Ray GitHub-opslagplaats beschrijft bijvoorbeeld verschillende platforms die variëren in reactietijd, doel en ondersteuningsniveau.

Microsoft neemt de verantwoordelijkheid voor het bouwen van de opensource-pakketten die we implementeren op AKS. Deze verantwoordelijkheid omvat het volledige eigendom van het build-, scan-, teken-, validatie- en hotfixproces, samen met controle over de binaire bestanden in containerinstallatiekopieën. Zie Beveiligingsbeheer voor AKS- en AKS-ondersteuningsdekking voor meer informatie.

Wat is Valkey?

Valkey is een fork van het Redis-project dat de oorspronkelijke opensource-licentie behoudt. Valkey is een database met hoge prestaties die ondersteuning biedt voor een sleutel-waardegegevensarchief en u kunt deze gebruiken voor caching, sessieopslag, berichtenwachtrijen en meer. Een Valkey-cluster heeft meerdere knooppunten die verantwoordelijk zijn voor het hosten van uw Valkey-gegevensarchieven. Valkey shards gegevens in kleinere delen en verspreidt deze over de knooppunten. In een vereenvoudigd Valkey-cluster dat bestaat uit drie primaire knooppunten, ondersteunt één replicaknooppunt elk knooppunt om basisfailovermogelijkheden mogelijk te maken. De gegevens worden verdeeld over de knooppunten, waardoor het cluster kan blijven functioneren, zelfs als een van de knooppunten uitvalt.

Schermopname van een Valkey-cluster op AKS.

Zie de Valkey-documentatie voor meer informatie.

Overzicht van Valkey-oplossingen

Het doel van deze oplossing is het implementeren van Valkey op AKS met hetzelfde serviceniveau als de Azure Cache voor Redis Premium-laag.

De volgende tabel bevat de belangrijkste functies van de Azure Cache voor Redis Premium-laag en de voorgestelde Valkey-oplossing:

Azure Cache voor Redis Premium-laag Valkey-oplossing
Geheugen tot 1,2 TB Met behulp van drie Valkey-primaries die worden uitgevoerd op de Standard_E64_v5 SKU.
Replicatie Ten minste één replicapod per primaire pod toevoegen.
Zoneredundantie Primaire en replicapods in verschillende beschikbaarheidszones plaatsen.

We maken twee afzonderlijke StatefulSet resources: één voor de Valkey-primaries en één voor de replica's. De spec.affinity API StatefulSet plaatst de primaire pods in twee verschillende beschikbaarheidszones en de replicapods in een andere derde beschikbaarheidszone. Deze aanpak zorgt ervoor dat een storing in één zone geen invloed heeft op de beschikbaarheid van valkey-shards.

Notitie

Houd er rekening mee dat de oplossing die in dit artikel wordt voorgesteld, verschilt van de Valkey-documentatie, waarbij clusterpods tot één StatefulSetbehoren en dat de spec.affinity pods alleen op verschillende knooppunten worden geplaatst. De automatische initialisatie van het Valkey-cluster die wordt weergegeven in de Valkey-documentatie, zorgt er niet voor dat de primaire pods en replicapods voor dezelfde shard in verschillende beschikbaarheidszones worden geplaatst.

Volgende stappen

Medewerkers

Microsoft onderhoudt dit artikel. De volgende inzenders hebben het oorspronkelijk geschreven:

  • Nelly Kiboi | Service Engineer
  • Saverio Proto | Principal Customer Experience Engineer
  • Hoog | Principal Customer Engineer
  • LaBrina Loving | Principal Service Engineer
  • Ken Kilty | Principal TPM
  • Russell de Tina | Principal TPM
  • Colin Mixon | ProductManager
  • Ketan Chawda | Senior klanttechnicus
  • Naveed Kharadi | Klantervaringstechnicus
  • Erin Schaffer | Inhoudsontwikkelaar 2