Installatie
Yres draait volledig in jouw eigen Azure-tenant. Een installatie bestaat uit een set Azure-resources (Data Factory, Azure SQL IRIS_DWH, Key Vault, optioneel Data Lake) die Yres tijdens het aanmaken van een organisatie volgens de Yres-templates aanmaakt en configureert. Om dat te kunnen doen heeft Yres toegang tot je Azure-abonnement nodig via een App Registration met de juiste rollen en API-permissies.
De installatie verloopt in drie stappen, in deze volgorde:
- App Registration aanmaken in Microsoft Entra (de identiteit waarmee Yres jouw Azure beheert).
- Abonnement(en) en resource groups klaarzetten en de app als Owner toewijzen.
- Waarden aanleveren aan Yres/Plainwater, die op basis daarvan je organisatie en omgevingen aanmaakt en de resources uitrolt.
Stappen 1 en 2 (App Registration en Azure-rechten) bereid je als klant zelf voor. De waarden die daaruit komen lever je aan; het daadwerkelijk aanmaken van je organisatie en het uitrollen van de resources gebeurt aan de Yres-/Plainwater-kant (stap 3).
1. Voorbereiding — App Registration
- Maak in Microsoft Entra een nieuwe App Registration (bv.
Yres-dataplatform-user). Account type: Single tenant; redirect-URI leeg laten. Klik Register. - Open de app → API permissions → Add a permission en voeg toe:
- Azure Service Management → gedelegeerde permissie user_impersonation — laat Yres het Azure-abonnement, de resource groups en de resources beheren.
- Microsoft Graph → gedelegeerde permissie User.Read — voor het uitlezen van het ingelogde gebruikersprofiel.
- Azure Key Vault — voor het wegschrijven en uitlezen van bron-credentials in de Key Vault.
- Azure DevOps — voor de Git-/CI/CD-koppeling (DACPAC-deploy +
publish-datafactory).
- Ga naar Certificates & secrets → New client secret (bv. naam
WebApp), geldigheid max. 24 maanden (advies: 24). Kopieer de secret-waarde direct — die is later niet meer zichtbaar. - Verzamel deze vier waarden (op Overview en bij de Managed Application):
- Application (client) ID
- Directory (tenant) ID
- Object ID van de Managed Application (let op: niet de Object ID van het eerste Overview-scherm, maar die van de Enterprise/Managed Application)
- Client secret (de waarde uit stap 3)
Client secret, client ID, tenant ID en object ID heb je bij stap 3 nodig. Bewaar ze in een secure store; de client secret kun je na het aanmaken niet meer terugzien.
2. Abonnementen & resource groups
Beantwoord vooraf:
- Hoeveel omgevingen? De eerste omgeving is altijd
dev;prodis verplicht voor productie. Daartussen zijntest,acceptance(acc) enqualitymogelijk. - Eén abonnement, één per omgeving, of gemengd?
- Eén resource group, één per omgeving, of gemengd?
Het aantal omgevingen dat je mag uitrollen is licentie-gebonden. Essentials ondersteunt één omgeving (dev); Advanced twee; Ultimate onbeperkt. Voor een DTAP-straat (dev → test → prod) heb je dus minimaal Advanced of hoger nodig. Zie Prijzen voor de exacte tiers.
Advies: 2–4 omgevingen, elke omgeving een eigen resource group, in één abonnement (of elk een eigen abonnement).
Werk daarna de volgende punten af:
- Maak indien nodig het abonnement of de abonnementen aan en controleer de resource providers (
Microsoft.DataFactory,Microsoft.KeyVault,Microsoft.Sql,Microsoft.Storage). Zie troubleshooting → deployment rights. - Heb je dedicated abonnementen en voeg je de app als Owner op het abonnement toe? Dan maakt Yres de resource groups voor je — sla de volgende stap over.
- Anders: maak de resource groups zelf aan. Gebruik
devenprodverplicht in de naam; overige namen vrij (advies:test,acc,quality,prod). - Voeg de App Registration toe als Owner op elke resource group: Access control (IAM) → Add role assignment → Privileged administrator roles → Owner → je app selecteren → Review + assign.
De App Registration heeft Owner-rechten nodig, niet alleen Contributor. Yres moet tijdens de installatie namelijk rollen toewijzen aan de managed identities van de aangemaakte resources (bv. de Data Factory die de Key Vault en de SQL-database mag benaderen). Alleen een Owner mag roltoewijzingen maken. Verleen Owner op resource-group-niveau (aanbevolen) of op subscription-niveau.
3. Uitrol door Yres
Yres/Plainwater maakt op basis van de aangeleverde waarden je organisatie en omgevingen aan (dit gebeurt aan de Yres-kant). Je hoeft hiervoor zelf niets in te richten; je levert alleen de gegevens uit stap 1 en 2 aan.
Wat je aanlevert:
- De Azure-waarden uit de voorbereiding (stap 1): Directory (Tenant) ID, Object ID van de Managed Application, Application (client) ID en de client secret.
- De abonnement(en) en resource groups uit stap 2, met de App Registration als Owner. Bij meerdere abonnementen lever je per omgeving het subscription-ID aan; bij één abonnement wordt dat van
devvoor de overige omgevingen gebruikt. - De gewenste organisatienaam (minimaal 2 tekens, alleen letters en spaties) en de omgevingen die je wilt (minimaal
devenprod, afhankelijk van je licentie eventueeltest,acceptance,qualityertussen).
Heb je de resource groups in stap 2 al zelf aangemaakt? Geef dan de exacte namen door, zodat de uitrol hiermee matcht. In de naamgeving wordt de $ vervangen door de omgevingsnaam: een keyvault company-keyvault-$ wordt in prod bijvoorbeeld company-keyvault-prod. Zonder omgeving in de naam ontstaan conflicten (automatisch opgelost met een postfix, maar slechter herkenbaar).
Een nieuwe organisatie aanmaken kan even duren — de Azure-resources worden daadwerkelijk geprovisioneerd. Een typische installatie duurt in de orde van ~20 minuten.
Wat is er na de installatie aangemaakt?
Na een geslaagde uitrol heeft elke omgeving zijn eigen data-plane in je Azure-tenant:
- één Azure Data Factory (de orchestratie + Copy-activiteiten);
- één Azure SQL-database
IRIS_DWH(het warehouse + de laadengine); - een Azure Key Vault voor alle bron-credentials;
- optioneel een Azure Data Lake (Gen2) voor Parquet;
- de Azure DevOps-koppeling voor DACPAC-deploys en
publish-datafactory.
Volgende stap: koppel je eerste bron. Zie Databron koppelen en Aan de slag.