{"id":156885,"date":"2025-01-16T08:28:48","date_gmt":"2025-01-16T16:28:48","guid":{"rendered":"https:\/\/blog.everpuredata.com\/?p=156885"},"modified":"2025-02-16T00:59:51","modified_gmt":"2025-02-16T08:59:51","slug":"sql-server-distributed-availability-groups-and-kubernetes","status":"publish","type":"post","link":"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/","title":{"rendered":"SQL Server gedistribueerde beschikbaarheidsgroepen en Kubernetes"},"content":{"rendered":"\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-7387b849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column has-medium-font-size is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:70%\">\n<div class=\"wp-block-group has-border-color has-pure-orange-100-border-color has-primary-background-color has-background is-layout-flow wp-block-group-is-layout-flow\" style=\"border-width:2px;border-top-left-radius:16px;border-top-right-radius:16px;border-bottom-left-radius:16px;border-bottom-right-radius:16px;padding-top:30px;padding-right:30px;padding-bottom:30px;padding-left:30px\">\n<h3 class=\"wp-block-heading\" id=\"h-summary\">Samenvatting<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This article shows how to seed a database from a SQL instance that is in a Windows availability group into a SQL instance running in a pod in a Kubernetes cluster using a distributed availability group.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-group pdf-print-hide is-content-justification-right is-nowrap is-layout-flex wp-container-core-group-is-layout-f726d978 wp-block-group-is-layout-flex\"><div class=\"pdfprnt-buttons\"><a href=\"https:\/\/blog.everpuredata.com\/nl\/wp-json\/wp\/v2\/posts\/156885?print=pdf\" class=\"pdfprnt-button pdfprnt-button-pdf\" target=\"_blank\" ><img decoding=\"async\" src=\"https:\/\/blog.everpuredata.com\/wp-content\/plugins\/pdf-print-pro\/images\/pdf.png?1953174090\" alt=\"image_pdf\" title=\"View PDF\" \/><\/a><a href=\"https:\/\/blog.everpuredata.com\/nl\/wp-json\/wp\/v2\/posts\/156885?print=print\" class=\"pdfprnt-button pdfprnt-button-print\" target=\"_blank\" ><img decoding=\"async\" src=\"https:\/\/blog.everpuredata.com\/wp-content\/plugins\/pdf-print-pro\/images\/print.png?245231721\" alt=\"image_print\" title=\"Print Content\" \/><\/a><\/div>\n<\/div>\n\n\n\n<div id=\"CONTENT\" class=\"wp-block-group is-layout-flow wp-block-group-is-layout-flow\">\n<p class=\"has-text-align-center wp-block-paragraph\"><em>Dit artikel over SQL Server gedistribueerde beschikbaarheidsgroepen verscheen oorspronkelijk op <\/em><a href=\"https:\/\/dbafromthecold.com\/\" target=\"_blank\" rel=\"noreferrer noopener\"><em>Andrew Pruski&#8217;s blog<\/em><\/a><em>. Het is opnieuw gepubliceerd met het krediet en de toestemming van de auteur.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Een tijdje geleden schreef ik over het gebruik van een <a href=\"https:\/\/dbafromthecold.com\/2024\/07\/26\/sql-server-cross-platform-availability-groups-and-kubernetes\/\" target=\"_blank\" rel=\"noreferrer noopener\">platformonafhankelijke (of clusterloze) beschikbaarheidsgroep<\/a> om een database van een Windows SQL-instantie in een pod in Kubernetes te plaatsen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ik had vorige week een gesprek met een collega en ze vroegen: &#8220;Wat als de bestaande Windows-instantie al in een beschikbaarheidsgroep zit?&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dit is een eerlijke vraag, omdat het vrij zeldzaam is (naar mijn ervaring) om een standalone SQL-instantie in productie te draaien&#8230; de meeste gevallen zijn in een vorm van HA-setup, of het nu een failover-clusterinstantie of een beschikbaarheidsgroep is.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Failover-clusterinstances werken met een clusterloze beschikbaarheidsgroep, maar het is een ander verhaal als het gaat om bestaande beschikbaarheidsgroepen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Een Linux-node kan niet worden toegevoegd aan een bestaande Windows-beschikbaarheidsgroep (vertrouw me, ik heb het langer geprobeerd dan ik zou toegeven), dus de enige manier om het te doen is door een <a href=\"https:\/\/learn.microsoft.com\/en-us\/sql\/database-engine\/availability-groups\/windows\/configure-distributed-availability-groups?view=sql-server-ver16&amp;tabs=automatic%2Csql22\" target=\"_blank\" rel=\"noreferrer noopener\">gedistribueerde beschikbaarheidsgroep<\/a> te gebruiken.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Laten we het proces dus eens doornemen!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Hier is de bestaande Windows-beschikbaarheidsgroep:\u00a0<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXfG3A13oYNJlUXsGM2CeQUUuxJXKSflYtBu6qg1blcSIL0Y31qUznBW7Ap0tXVF2A8QN8D6RLDFNXVcFWdFFvJeLRMCBIx90xE6eA_Y3buKL7OE29jsDetGHq4P3z-vFozaW6ReTw?key=Cllw4N2t9SVERAcoDnITi1xj\" alt=\"\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Gewoon een standaard AG met twee knooppunten met \u00e9\u00e9n database die al over de knooppunten is gesynchroniseerd. Het is die database die we gaan gebruiken voor de pod die op het Kubernetes-cluster draait met behulp van een gedistribueerde beschikbaarheidsgroep.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Hier is het Kubernetes-cluster:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>kubectl krijgt nodes<\/code><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXff7LVm7D6CB4d-w4cU2TFAqqJV5nEnpl-IpKZJTIO4W_xU3cQR-yoE4QDWIEeUvpOpOLIZ7ffzJZTS8-eqv5Gd1JLHF4T_TCPNe4V2YzEcnYzSuwC0OxVKViwsqHCDkfzYX16Nag?key=Cllw4N2t9SVERAcoDnITi1xj\" alt=\"\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Vier nodes, \u00e9\u00e9n besturingsvlaknode en drie workernodes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">OK, dus het eerste wat u moet doen is een <em>statefulset<\/em> implementeren met \u00e9\u00e9n SQL Server-pod (met behulp van een bestand genaamd <em>sqlserver-statefulset.yaml<\/em>):\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>kubectl apply -f .\\sqlserver-statefulset.yaml<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dit is het manifest van de statefulset:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>apiVersion: apps\/v1kind: StatefulSetmetadata: naam: mssql-statefulsetspec: serviceNaam: \"mssql\" replica's: 1 podManagementBeleid: Parallelle selector: matchLabels: naam: mssql-pod template:Metadata: labels: naam: mssql-pod annotaties:stork.libopenstorage.org\/disableHyperconvergence: \"true\" spec: beveiligingContext: fsGroep: 10001 hostAliases: - ip: \"10.225.115.129\" hostnamen: - \"z-ap-sql-10\" containers: - naam: Afbeelding mssql-container: mcr.microsoft.com\/mssql\/server:2022-CU15-ubuntu-20.04ports: - containerPort: 1433 Naam: mssql-port env: - naam: MSSQL_PID\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0value: \"Ontwikkelaar\" - naam: ACCEPT_EULA\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0value: \"Y\" - naam: MSSQL_AGENT_ENABLED\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0value: \"1\" - naam: MSSQL_ENABLE_HADR\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0value: \"1\" - naam: MSSQL_SA_PASSWORD\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0value: \"Testing1122\"-volumeMontages: - naam: sqlsystem mountPath: \/var\/opt\/mssql - naam: sqldata mountPath: \/var\/opt\/sqlserver\/datavolumeClaimTemplates: - Metadata: naam: sqlsystem spec: accessModes: - ReadWriteOnce resources: requests: storage: 1GistorageClassName: mssql-sc - Metadata: naam: sqldata spec: accessModes: - ReadWriteOnce resources: verzoeken: opslag: 25GistorageClassName: mssql-sc<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Net als bij mijn laatste bericht is dit behoorlijk onoverzichtelijk. Geen resourceslimieten, toleranties, etc. Het heeft twee persistente volumes: \u00e9\u00e9n voor de systeemdatabases en \u00e9\u00e9n voor de gebruikersdatabases van een opslagklasse die al in het cluster is geconfigureerd.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">E\u00e9n ding om op te merken:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>1234 hostAliases:- ip: \"10.225.115.129\" hostnamen: - \"z-ap-sql-10\"<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Hier wordt een invoer in het hostsbestand van de pod gemaakt voor de luisteraar van de Windows-beschikbaarheidsgroep.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Het volgende wat u moet doen is twee diensten implementeren: \u00e9\u00e9n zodat we verbinding kunnen maken met de SQL-instantie (op poort 1433) en \u00e9\u00e9n voor de AG (poort 5022):\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>kubectl apply -f .\\sqlserver-services.yaml<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dit is het manifest voor de diensten:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>12345678910111213141516171819202122232425 apiVersie: v1kind: Servicemetadata: naam: mssql-servicespec: poorten: - naam: mssql-poorten poort: 1433 targetPort: 1433 selector: naam: mssql-pod type: LoadBalancer---apiVersie: v1kind: Servicemetadata: naam: mssql-ha-servicespec: poorten: - naam: mssql-ha-ports poort: 5022 targetPort: 5022 selector: naam: mssql-pod type: LoadBalancer<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Opmerking:<\/strong> We zouden slechts \u00e9\u00e9n dienst kunnen gebruiken met meerdere geconfigureerde poorten, maar ik houd ze hier gescheiden om te proberen de zaken zo duidelijk mogelijk te houden.<\/p>\n\n\n\n<p class=\"has-text-align-center wp-block-paragraph\"><a href=\"https:\/\/blog.everpuredata.com\/purely-technical\/using-t-sql-snapshot-backup-point-in-time-recovery\/\"><em>T-SQL Snapshot Backup gebruiken: Point-in-time herstel<\/em><\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Controleer of alles er goed uitziet:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>kubectl krijg alles<\/code><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXefdcaPNNNGsf1z_vwCxamw2L-eipbLfDA5LyCQhwYM4WAC8UpPWKAsLhhqgZAAwdfpYWRl0r0NaTaNWAlaAB_rTTJPK9i-cNhToJQAMVVyLH6iI7ZViKYqlgs5o6NriYSd40MGZQ?key=Cllw4N2t9SVERAcoDnITi1xj\" alt=\"\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Nu moeten we in alle gevallen de mastersleutel, login en gebruiker aanmaken:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>123 <strong>CRE\u00cbER<\/strong> DE <strong>BELANGRIJKSTE<\/strong> INSCHRIJVING <strong>DOOR<\/strong> HET <strong>WACHTWOORD<\/strong> = '<c0m9l3xp>';<strong>CRE\u00cbER<\/strong> INLOGGEN [dbm_login] <strong>MET<\/strong> <strong>WACHTWOORD<\/strong> = '<c0m9l3xp>';<strong>CRE\u00cbER<\/strong> GEBRUIKER dbm_user <strong>VOOR<\/strong> INLOGGEN dbm_login;<\/c0m9l3xp><\/c0m9l3xp><\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Maak vervolgens een certificaat in de SQL-instantie in de pod:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code><strong>CRE\u00cbER<\/strong> CERTIFICAAT dbm_certificate <strong>MET<\/strong> ONDERWERP = 'Mirroring_certificate', EXPIRY_DATE = '20301031'<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Maak een back-up van dat certificaat:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>123456 BACK-UPCERTIFICAAT dbm_certificate<strong>NAAR<\/strong> BESTAND = '\/var\/opt\/mssql\/data\/dbm_certificate.cer'<strong>MET<\/strong> PRIVATE <strong>KEY<\/strong> (BESTAND = '\/var\/opt\/mssql\/data\/dbm_certificate.pvk',\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0ENCRYPTION <strong>PER<\/strong> <strong>WACHTWOORD<\/strong> = '<c0m9l3xp>' );<\/c0m9l3xp><\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kopieer het certificaat lokaal:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>12 kubectl cp mssql-statefulset-0:var\/opt\/mssql\/data\/dbm_certificate.cer .\/dbm_certificate.cer -n prodkubectl cp mssql-statefulset-0:var\/opt\/mssql\/data\/dbm_certificate.pvk .\/dbm_certificate.pvk -n prod<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En kopieer vervolgens de bestanden naar de Windows-boxen:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>1234 Copy-Item dbm_certificate.cer \\\\z-ap-sql-02\\E$\\SQLBackup1\\ -ForceCopy-Item dbm_certificate.pvk \\\\z-ap-sql-02\\E$\\SQLBackup1\\ -ForceCopy-Item dbm_certificate.cer \\\\z-ap-sql-03\\E$\\SQLBackup1\\ -ForceCopy-Item dbm_certificate.pvk \\\\z-ap-sql-03\\E$\\SQLBackup1\\ -ForceCopy-Item<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Zodra de bestanden op de Windows-boxen staan, kunnen we het certificaat in elke Windows SQL-instantie maken:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>1234567 <strong>CRE\u00cbER<\/strong> dbm_certificate\u00a0\u00a0\u00a0\u00a0<strong>CERTIFICAATAUTORISATIE<\/strong> dbm_user\u00a0\u00a0\u00a0\u00a0<strong>VANUIT<\/strong> BESTAND = 'E:\\SQLBackup1\\dbm_certificate.cer'\u00a0\u00a0\u00a0\u00a0<strong>MET<\/strong> <strong>PRIV\u00c9SLEUTEL<\/strong> (BESTAND = 'E:\\SQLBackup1\\dbm_certificate.pvk',\u00a0\u00a0\u00a0\u00a0DECRYPTION <strong>PER<\/strong> <strong>WACHTWOORD<\/strong> = '')<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ok\u00e9, geweldig! Nu moeten we een mirroring eindpunt cre\u00ebren in de SQL-instantie in de pod:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>123456789101112 [Hadr_endpoint]EINDPUNTSTATUS <strong>CRE\u00cbREN<\/strong> = <strong>GESTARTALS<\/strong> TCP (\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0LISTENER_PORT = 5022,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0LISTENER_IP = ALL)<strong>VOOR<\/strong> DATA_MIRRORING (ROL = ALL, AUTHENTICATIE = WINDOWS CERTIFICAAT [dbm_certificate], ENCRYPTIE = VEREIST ALGORITME AES );<strong>ALTER<\/strong> [Hadr_endpoint]EINDPUNTSTATUS = GESTART;<strong>GRANT<\/strong> <strong>CONNECT<\/strong> <strong>OP<\/strong> EINDPUNT::[Hadr_endpoint] <strong>AAN<\/strong> [dbm_login];<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Er zijn al eindpunten in de Windows-instanties, maar we moeten ze bijwerken om het certificaat te gebruiken voor authenticatie:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>12345678910 [Hadr_endpoint]EINDPUNTSTATUS <strong>WIJZIGEN<\/strong> = <strong>GESTARTALS<\/strong> TCP (\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0LISTENER_PORT = 5022,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0LISTENER_IP = ALL)<strong>VOOR<\/strong> DATABASE_MIRRORING (VERIFICATIE = WINDOWS-CERTIFICAAT [dbm_certificate], ENCRYPTIE = VEREIST ALGORITME AES );<strong>GRANT<\/strong> <strong>CONNECT<\/strong> <strong>OP<\/strong> EINDPUNT:[Hadr_endpoint] <strong>AAN<\/strong> [dbm_login];<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nu kunnen we een clusterloze beschikbaarheidsgroep met \u00e9\u00e9n knooppunt cre\u00ebren in de SQL-instantie in de pod:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>12345678910111213 <strong>CRE\u00cbER<\/strong> <strong>BESCHIKBAARHEIDSGROEPMET<\/strong>[AG2]<strong><\/strong> (CLUSTER_TYPE=NONE)\u00a0\u00a0\u00a0<strong>FOR<\/strong>REPLICA <strong>OP<\/strong>'mssql-statefulset-0' <strong>MET<\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0(\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0ENDPOINT_URL = 'TCP:\/\/mssql-statefulset-0.com:5022',\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0FAILOVER_MODE = MANUAL\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0,AVAILABILITY_MODE = SYNCHRONOUS_COMMIT\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0,BACKUP_PRIORITY = 50\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0,SEEDING_MODE = = AUTOMATIC\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0,SECONDARY_ROLE(ALLOW_CONNECTIONS = <strong>NEE<\/strong>) )<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Geen luisteraar hier; we gaan de <em>mssql-ha-service<\/em> gebruiken als eindpunt voor de gedistribueerde beschikbaarheidsgroep.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ok\u00e9, dus op het primaire knooppunt van de Windows-beschikbaarheidsgroep kunnen we de gedistribueerde beschikbaarheidsgroep cre\u00ebren:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>1234567891011121314151617 <strong>CRE\u00cbER<\/strong> <strong>BESCHIKBAARHEIDSGROEPMET<\/strong> [DistributedAG]<strong><\/strong> (GEDISTRIBUEERD) <strong>BESCHIKBAARHEIDSGROEP<\/strong> <strong>OP<\/strong>'AG1' <strong>MET<\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0(\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0LISTENER_URL = 'tcp:\/\/Z-AP-SQL-10:5022', \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0FAILOVER_MODE = = MANUAL,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0SEEDING_MODE = AUTOMATISCH ), 'AG2' <strong>MET<\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0(\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0LISTENER_URL = 'tcp:\/\/10.225.115.131:5022',\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0FAILOVER_MODE = MANUAL,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0SEEDING_MODE = = AUTOMATISCH );<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We konden een hostbestandsinvoer gebruiken voor de URL in AG2 (dat deed ik in het vorige bericht), maar hier gebruiken we gewoon het IP-adres van de mssql-ha-service.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ok\u00e9, bijna klaar! We moeten nu lid worden van de beschikbaarheidsgroep in de SQL-instantie in de pod:\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>1234567891011121314151617 <strong>NA<\/strong> <strong>BESCHIKBAARHEIDSGROEP<\/strong> SLUIT [DistributedAG]U AAN BIJ <strong>BESCHIKBAARHEIDSGROEP<\/strong> <strong>OP<\/strong>'AG1' <strong>MET<\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0(\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0LISTENER_URL = 'tcp:\/\/Z-AP-SQL-10:5022', \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0FAILOVER_MODE = = MANUAL,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0SEEDING_MODE = AUTOMATISCH ), 'AG2' <strong>MET<\/strong>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0(\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0LISTENER_URL = 'tcp:\/\/10.225.115.131:5022',\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0FAILOVER_MODE = MANUAL,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0SEEDING_MODE = = AUTOMATISCH );<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En dat zou het moeten zijn! Als we nu verbinding maken met de SQL-instantie in de pod, is de database er!<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXeVnFQoHBmHIaElbeYgdM6o24JTaYgVUEX31J9OKs-nVXQkXJwRO2atp5tkDmgSsK93zA4fx8J7U8gur6M3SG1p2NQJdhNHybqd2B2euZB-weSxP0Ok-0oQF3n7L_2CKjdg5DVZSQ?key=Cllw4N2t9SVERAcoDnITi1xj\" alt=\"\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Daar is het! Ok\u00e9, \u00e9\u00e9n ding dat ik hier niet heb meegemaakt is hoe ik automatisch zoeken vanuit Windows naar een Linux SQL-instantie kan laten werken. Ik heb in <a href=\"https:\/\/dbafromthecold.com\/2024\/07\/26\/sql-server-cross-platform-availability-groups-and-kubernetes\/\">mijn vorige bericht<\/a> doorgenomen hoe dat werkt, maar de gist is, zolang de databasegegevens en logbestanden zich onder de standaardgegevens en het logpad van de Windows SQL-instantie bevinden, zullen ze automatisch worden geplaatst op de standaardgegevens en logpaden van de Linux SQL-instantie.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Zo zet u een database uit een SQL-instantie in een Windows-beschikbaarheidsgroep in een SQL-instantie die in een Kubernetes-cluster draait met behulp van een gedistribueerde beschikbaarheidsgroep.<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/pixel.welcomesoftware.com\/px.gif?key=YXJ0aWNsZT02ZDUyOGUzMmQ0MjMxMWVmYTI2YTBlY2JjZjE2MjQyMA==\" alt=\"\"\/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:30%\">\n<div class=\"wp-block-group sticky-content has-mint-green-500-background-color has-background is-layout-flow wp-block-group-is-layout-flow\" style=\"border-radius:20px;padding-top:20px;padding-right:20px;padding-bottom:20px;padding-left:20px\">\n<h2 class=\"wp-block-heading has-text-align-center has-ash-gray-500-color has-text-color has-link-color wp-elements-6cba6dc0a49af9d240e1e0430b1319a5\" id=\"h-title\" style=\"font-size:px\">Stellar Storage<\/h2>\n\n\n\n<p class=\"has-text-align-center has-ash-gray-500-color has-text-color has-link-color wp-elements-612f4ebc85a08a18babb164dc60dfbaa wp-block-paragraph\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.208), 1rem);\">Boost performance for SQL Server with Pure Storage.<\/p>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-f8bdad00 wp-block-buttons-is-layout-flex\" style=\"margin-top:1em;margin-bottom:1em\">\n<div class=\"wp-block-button is-style-outline button-sticky is-style-outline--2\"><a class=\"wp-block-button__link has-cloud-white-500-color has-basil-green-500-background-color has-text-color has-background has-link-color has-inter-font-family has-custom-font-size wp-element-button\" href=\"https:\/\/www.purestorage.com\/solutions\/databases-applications\/microsoft\/sql.html\" style=\"border-style:none;border-width:0px;border-radius:4px;padding-top:14px;padding-right:16px;padding-bottom:14px;padding-left:16px;font-size:clamp(14px, 0.875rem + ((1vw - 3.2px) * 0.208), 16px);\" target=\"_blank\" rel=\"noreferrer noopener\">Explore Solutions<\/a><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>In dit artikel vindt u het proces voor het gebruik van een gedistribueerde beschikbaarheidsgroep om een database te plaatsen uit een SQL-instantie die zich in een Windows-beschikbaarheidsgroep bevindt.<\/p>\n","protected":false},"author":720,"featured_media":154192,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[14635],"tags":[15192,14381,14822,14506,14649],"content-position":[14978,15818],"ppma_author":[14501],"class_list":["post-156885","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-purely-technical","tag-database-nl","tag-database","tag-kubernetes-nl","tag-storage-administration-nl","tag-sql-server-nl","content-position-featured-articles-kubernetes","content-position-featured-articles-kubernetes-nl"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.4 (Yoast SEO v28.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>SQL Server gedistribueerde beschikbaarheidsgroepen en Kubernetes | Everpure Blog<\/title>\n<meta name=\"description\" content=\"Ontdek het proces voor het gebruik van een gedistribueerde beschikbaarheidsgroep om een database uit een SQL-instantie in een Windows-beschikbaarheidsgroep te plaatsen.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/\" \/>\n<meta property=\"og:locale\" content=\"nl_NL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SQL Server gedistribueerde beschikbaarheidsgroepen en Kubernetes\" \/>\n<meta property=\"og:description\" content=\"Ontdek het proces voor het gebruik van een gedistribueerde beschikbaarheidsgroep om een database uit een SQL-instantie in een Windows-beschikbaarheidsgroep te plaatsen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/\" \/>\n<meta property=\"og:site_name\" content=\"Everpure Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/PureStorage\" \/>\n<meta property=\"article:published_time\" content=\"2025-01-16T16:28:48+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-02-16T08:59:51+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/01\/SQL-Server-Distributed-Availability-Groups.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2163\" \/>\n\t<meta property=\"og:image:height\" content=\"1414\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Andrew Pruski\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@purestorage\" \/>\n<meta name=\"twitter:site\" content=\"@purestorage\" \/>\n<meta name=\"twitter:label1\" content=\"Geschreven door\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andrew Pruski\" \/>\n\t<meta name=\"twitter:label2\" content=\"Geschatte leestijd\" \/>\n\t<meta name=\"twitter:data2\" content=\"13 minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/purely-technical\\\/sql-server-distributed-availability-groups-and-kubernetes\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/purely-technical\\\/sql-server-distributed-availability-groups-and-kubernetes\\\/\"},\"author\":{\"name\":\"Andrew Pruski\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/#\\\/schema\\\/person\\\/6ea5791774ae9b840fc0bd9d07b1db0c\"},\"headline\":\"SQL Server gedistribueerde beschikbaarheidsgroepen en Kubernetes\",\"datePublished\":\"2025-01-16T16:28:48+00:00\",\"dateModified\":\"2025-02-16T08:59:51+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/purely-technical\\\/sql-server-distributed-availability-groups-and-kubernetes\\\/\"},\"wordCount\":704,\"publisher\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/purely-technical\\\/sql-server-distributed-availability-groups-and-kubernetes\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2025\\\/01\\\/SQL-Server-Distributed-Availability-Groups.png\",\"keywords\":[\"Database\",\"Databases\",\"Kubernetes\",\"Opslagbeheer\",\"SQL-server\"],\"articleSection\":[\"Purely Technical\"],\"inLanguage\":\"nl-NL\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/purely-technical\\\/sql-server-distributed-availability-groups-and-kubernetes\\\/\",\"url\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/purely-technical\\\/sql-server-distributed-availability-groups-and-kubernetes\\\/\",\"name\":\"SQL Server gedistribueerde beschikbaarheidsgroepen en Kubernetes | Everpure Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/purely-technical\\\/sql-server-distributed-availability-groups-and-kubernetes\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/purely-technical\\\/sql-server-distributed-availability-groups-and-kubernetes\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2025\\\/01\\\/SQL-Server-Distributed-Availability-Groups.png\",\"datePublished\":\"2025-01-16T16:28:48+00:00\",\"dateModified\":\"2025-02-16T08:59:51+00:00\",\"description\":\"Ontdek het proces voor het gebruik van een gedistribueerde beschikbaarheidsgroep om een database uit een SQL-instantie in een Windows-beschikbaarheidsgroep te plaatsen.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/purely-technical\\\/sql-server-distributed-availability-groups-and-kubernetes\\\/#breadcrumb\"},\"inLanguage\":\"nl-NL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/purely-technical\\\/sql-server-distributed-availability-groups-and-kubernetes\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/purely-technical\\\/sql-server-distributed-availability-groups-and-kubernetes\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2025\\\/01\\\/SQL-Server-Distributed-Availability-Groups.png\",\"contentUrl\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2025\\\/01\\\/SQL-Server-Distributed-Availability-Groups.png\",\"width\":2163,\"height\":1414,\"caption\":\"SQL Server Distributed Availability Groups\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/purely-technical\\\/sql-server-distributed-availability-groups-and-kubernetes\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SQL Server gedistribueerde beschikbaarheidsgroepen en Kubernetes\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/#website\",\"url\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/\",\"name\":\"Everpure Blog\",\"description\":\"Unleash the power of your data with an intelligent, unified storage and data management platform built for resilience and AI.\",\"publisher\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"nl-NL\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/#organization\",\"name\":\"Pure Storage\",\"url\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2019\\\/08\\\/download-5.png\",\"contentUrl\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2019\\\/08\\\/download-5.png\",\"width\":302,\"height\":167,\"caption\":\"Pure Storage\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/PureStorage\",\"https:\\\/\\\/x.com\\\/purestorage\",\"https:\\\/\\\/www.instagram.com\\\/purestorage\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/pure-storage\",\"https:\\\/\\\/www.youtube.com\\\/user\\\/purestorage\",\"https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/Pure_Storage\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/#\\\/schema\\\/person\\\/6ea5791774ae9b840fc0bd9d07b1db0c\",\"name\":\"Andrew Pruski\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2025\\\/01\\\/Andrew-Pruski.png6dfc675849dda73d4ddea62eabc1629a\",\"url\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2025\\\/01\\\/Andrew-Pruski.png\",\"contentUrl\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2025\\\/01\\\/Andrew-Pruski.png\",\"caption\":\"Andrew Pruski\"},\"description\":\"Andrew is a seasoned SQL Server DBA with over 15 years of hands-on experience. Currently, he serves as a Principal Field Solutions Architect at Everpure.\",\"url\":\"https:\\\/\\\/blog.everpuredata.com\\\/nl\\\/author\\\/andrew-pruski\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"SQL Server gedistribueerde beschikbaarheidsgroepen en Kubernetes | Everpure Blog","description":"Ontdek het proces voor het gebruik van een gedistribueerde beschikbaarheidsgroep om een database uit een SQL-instantie in een Windows-beschikbaarheidsgroep te plaatsen.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/","og_locale":"nl_NL","og_type":"article","og_title":"SQL Server gedistribueerde beschikbaarheidsgroepen en Kubernetes","og_description":"Ontdek het proces voor het gebruik van een gedistribueerde beschikbaarheidsgroep om een database uit een SQL-instantie in een Windows-beschikbaarheidsgroep te plaatsen.","og_url":"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/","og_site_name":"Everpure Blog","article_publisher":"https:\/\/www.facebook.com\/PureStorage","article_published_time":"2025-01-16T16:28:48+00:00","article_modified_time":"2025-02-16T08:59:51+00:00","og_image":[{"width":2163,"height":1414,"url":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/01\/SQL-Server-Distributed-Availability-Groups.png","type":"image\/png"}],"author":"Andrew Pruski","twitter_card":"summary_large_image","twitter_creator":"@purestorage","twitter_site":"@purestorage","twitter_misc":{"Geschreven door":"Andrew Pruski","Geschatte leestijd":"13 minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/#article","isPartOf":{"@id":"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/"},"author":{"name":"Andrew Pruski","@id":"https:\/\/blog.everpuredata.com\/nl\/#\/schema\/person\/6ea5791774ae9b840fc0bd9d07b1db0c"},"headline":"SQL Server gedistribueerde beschikbaarheidsgroepen en Kubernetes","datePublished":"2025-01-16T16:28:48+00:00","dateModified":"2025-02-16T08:59:51+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/"},"wordCount":704,"publisher":{"@id":"https:\/\/blog.everpuredata.com\/nl\/#organization"},"image":{"@id":"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/01\/SQL-Server-Distributed-Availability-Groups.png","keywords":["Database","Databases","Kubernetes","Opslagbeheer","SQL-server"],"articleSection":["Purely Technical"],"inLanguage":"nl-NL"},{"@type":"WebPage","@id":"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/","url":"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/","name":"SQL Server gedistribueerde beschikbaarheidsgroepen en Kubernetes | Everpure Blog","isPartOf":{"@id":"https:\/\/blog.everpuredata.com\/nl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/#primaryimage"},"image":{"@id":"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/01\/SQL-Server-Distributed-Availability-Groups.png","datePublished":"2025-01-16T16:28:48+00:00","dateModified":"2025-02-16T08:59:51+00:00","description":"Ontdek het proces voor het gebruik van een gedistribueerde beschikbaarheidsgroep om een database uit een SQL-instantie in een Windows-beschikbaarheidsgroep te plaatsen.","breadcrumb":{"@id":"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/#breadcrumb"},"inLanguage":"nl-NL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/"]}]},{"@type":"ImageObject","inLanguage":"nl-NL","@id":"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/#primaryimage","url":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/01\/SQL-Server-Distributed-Availability-Groups.png","contentUrl":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/01\/SQL-Server-Distributed-Availability-Groups.png","width":2163,"height":1414,"caption":"SQL Server Distributed Availability Groups"},{"@type":"BreadcrumbList","@id":"https:\/\/blog.everpuredata.com\/nl\/purely-technical\/sql-server-distributed-availability-groups-and-kubernetes\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.everpuredata.com\/nl\/"},{"@type":"ListItem","position":2,"name":"SQL Server gedistribueerde beschikbaarheidsgroepen en Kubernetes"}]},{"@type":"WebSite","@id":"https:\/\/blog.everpuredata.com\/nl\/#website","url":"https:\/\/blog.everpuredata.com\/nl\/","name":"Everpure Blog","description":"Unleash the power of your data with an intelligent, unified storage and data management platform built for resilience and AI.","publisher":{"@id":"https:\/\/blog.everpuredata.com\/nl\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.everpuredata.com\/nl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"nl-NL"},{"@type":"Organization","@id":"https:\/\/blog.everpuredata.com\/nl\/#organization","name":"Pure Storage","url":"https:\/\/blog.everpuredata.com\/nl\/","logo":{"@type":"ImageObject","inLanguage":"nl-NL","@id":"https:\/\/blog.everpuredata.com\/nl\/#\/schema\/logo\/image\/","url":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2019\/08\/download-5.png","contentUrl":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2019\/08\/download-5.png","width":302,"height":167,"caption":"Pure Storage"},"image":{"@id":"https:\/\/blog.everpuredata.com\/nl\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/PureStorage","https:\/\/x.com\/purestorage","https:\/\/www.instagram.com\/purestorage","https:\/\/www.linkedin.com\/company\/pure-storage","https:\/\/www.youtube.com\/user\/purestorage","https:\/\/en.wikipedia.org\/wiki\/Pure_Storage"]},{"@type":"Person","@id":"https:\/\/blog.everpuredata.com\/nl\/#\/schema\/person\/6ea5791774ae9b840fc0bd9d07b1db0c","name":"Andrew Pruski","image":{"@type":"ImageObject","inLanguage":"nl-NL","@id":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/01\/Andrew-Pruski.png6dfc675849dda73d4ddea62eabc1629a","url":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/01\/Andrew-Pruski.png","contentUrl":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/01\/Andrew-Pruski.png","caption":"Andrew Pruski"},"description":"Andrew is a seasoned SQL Server DBA with over 15 years of hands-on experience. Currently, he serves as a Principal Field Solutions Architect at Everpure.","url":"https:\/\/blog.everpuredata.com\/nl\/author\/andrew-pruski\/"}]}},"authors":[{"term_id":14501,"user_id":720,"is_guest":0,"slug":"andrew-pruski","display_name":"Andrew Pruski","avatar_url":{"url":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/01\/Andrew-Pruski.png","url2x":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/01\/Andrew-Pruski.png"},"author_category":"","first_name":"Andrew","last_name":"Pruski","user_url":"","job_title":"","description":"Andrew is a seasoned SQL Server DBA with over 15 years of hands-on experience. Currently, he serves as a Principal Field Solutions Architect at Pure Storage."}],"_links":{"self":[{"href":"https:\/\/blog.everpuredata.com\/nl\/wp-json\/wp\/v2\/posts\/156885","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.everpuredata.com\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.everpuredata.com\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.everpuredata.com\/nl\/wp-json\/wp\/v2\/users\/720"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.everpuredata.com\/nl\/wp-json\/wp\/v2\/comments?post=156885"}],"version-history":[{"count":0,"href":"https:\/\/blog.everpuredata.com\/nl\/wp-json\/wp\/v2\/posts\/156885\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.everpuredata.com\/nl\/wp-json\/wp\/v2\/media\/154192"}],"wp:attachment":[{"href":"https:\/\/blog.everpuredata.com\/nl\/wp-json\/wp\/v2\/media?parent=156885"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.everpuredata.com\/nl\/wp-json\/wp\/v2\/categories?post=156885"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.everpuredata.com\/nl\/wp-json\/wp\/v2\/tags?post=156885"},{"taxonomy":"content-position","embeddable":true,"href":"https:\/\/blog.everpuredata.com\/nl\/wp-json\/wp\/v2\/content-position?post=156885"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blog.everpuredata.com\/nl\/wp-json\/wp\/v2\/ppma_author?post=156885"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}