Deploy Syntho using Helm
Om de Syntho Applicatie te implementeren, gebruiken we de Helm kaart in dezelfde repository als eerder genoemd. De kaart kan worden gevonden in de Releases van de deployment-tools
repo of het kan direct worden gekloond van de Github repo, waardoor het pad naar de kaart helm/syntho-ui
wordt.
Om de UI te configureren kan het values.yaml
bestand in helm/syntho-ui
gebruikt worden. De volgende secties beschrijven de verschillende velden die kunnen worden ingesteld.
De UI configureren
Voor de UI moeten we eerst de image repository en tag instellen:
We moeten ook de domeinnaam voor de UI instellen.
Een ingress is nodig voor de UI en is onderdeel van de Helm chart, we kunnen de ingress configuratie als volgt instellen voor de UI:
Dit maakt een Ingress definitie aan voor zowel de UI als de backend applicatie. Een deel van het verkeer zal naar de backend gerouteerd worden om al het verkeer van dezelfde domeinnaam te kunnen bedienen.
Note: in het geval dat het SSL-certificaat een zelfondertekend certificaat is of een certificaat dat niet binnen de container kan worden geverifieerd, moeten we enkele extra variabelen instellen als de instantie het certificaat niet kan verifiëren.
Zie het volgende codeblok:
De backend configureren
De backend is verantwoordelijk voor het gebruikersbeheer en het beheer van de werkruimte. We moeten een paar variabelen correct instellen. Om te beginnen moeten we de image instellen:
Backend Database en Backend Redis
Vervolgens moeten we de database en Redis referenties instellen. Als de instanties gedefinieerd in de Helm grafiek worden gebruikt, zijn er geen wijzigingen nodig. Anders moet het volgende veranderd worden:
De Redis-sectie kan worden ingesteld zoals hierboven gedefinieerd als de Redis-instantie wordt gebruikt vanuit de Helm grafiek. Standaard wordt de Redis-instantie gebruikt die in de kaart is gedefinieerd. Als een andere Redis-instantie wordt gebruikt, moeten host
, port
en db
mogelijk worden gewijzigd.
De database sectie moet worden aangepast als een andere database wordt gebruikt. Standaard wordt de database-instantie gebruikt die in de kaart is gedefinieerd. Als een andere database buiten de Helm grafiek wordt gebruikt, moeten de host, poort, gebruiker, wachtwoord en databasenaam worden gewijzigd. Om het gebruik en de inzet van de database-instantie gedefinieerd in de kaart uit te schakelen, kan het volgende worden ingesteld:
Als de database wordt gebruikt vanuit de Helm grafiek, kan de waarde host
worden ingesteld op database
en port
op 5432
. De andere waarden kunnen worden gewijzigd als een andere gebruikersnaam, wachtwoord of databasenaam de voorkeur heeft. Dit past automatisch de database-instantie aan die is gedefinieerd in de Helm-kaart.
Backend Ingress
De backend ingress is geïmplementeerd als onderdeel van de ingress die is gedefinieerd voor de UI. We gebruiken padgebaseerde routering in de ingress om een deel van het verkeer naar de backend te routeren (specifiek alles wat naar /api/*
gaat). Er is geen extra ingress nodig voor de backend.
Admin user credentials
Het is ook nodig om de referenties voor de eerste administratieve gebruiker in te stellen. We kunnen deze gebruiker op de volgende manier definiëren:
Deze gebruiker kan worden gebruikt om in te loggen in de UI en andere gebruikers aan te maken.
Geheime sleutel
Tot slot moeten we een extra variabele instellen, zoals gedefinieerd in het onderstaande blok:
De Core API configureren
Om de Core API te configureren, moeten we eerst de juiste image instellen. Om de afbeelding in te stellen gebruiken we het image
veld in de core
sectie.
Verder moeten we de database hostnaam en credentials instellen:
De deployment kan eventueel de database-instantie zelf aanmaken. In dat geval moet het veld database_enabled
worden ingesteld op true
:
Dit maakt een database aan met de opgegeven gebruikersnaam, wachtwoord en databasenaam. De host voor deze database is backend
en de poort is 5432
omdat dit een Postgres database is.
Tot slot moeten we een geheime sleutel instellen voor encryptie, de referenties voor een Redis-instantie en het IP-adres of de hostnaam van de Ray head waarmee we verbinding moeten maken. De hostnaam van het Ray hoofd is degene die genoemd wordt in de sectie [Ray implementeren met Helm] (deploy-ray-using-helm/).
De fernet sleutel kan gegenereerd worden met de cryptography
bibliotheek in Python. Het uitvoeren van het volgende commando resulteert in een willekeurig gegenereerde fernet-sleutel in je CLI:
De Redis-instantie kan worden ingesteld door de redis:
sectie aan te passen. De standaardwaarden wijzen naar de Redis-instantie die is geïmplementeerd als onderdeel van de Helm chart.
Uitrollen
Om de Syntho Applicatie te implementeren, gebruiken we de Helm grafiek van het Syntho team. De kaart kan gevonden worden in de helm/syntho
map.
Last updated
Was this helpful?