Aller au contenu principal

Déploiement

Architecture

Architecture Schéma d'architecture logiciel de la plateforme QALITA

deployed Schéma des container du control plane de la plateforme QALITA déployés

Matrice de Flux

Schéma de flux réseau QALITA Platform

Ingress:PortService:PortPod:Port
--qalita-postgresql:5432qalita-postgresql-0:5432
--qalita-redis-master:6379qalita-redis-master-0:6379
--seaweedfs-s3:8333seaweedfs:8333
api.domain.comqalita-backend-service:3080qalita-backend:3080
doc.domain.comqalita-doc-service:80qalita-doc:80
domain.comqalita-frontend-service:3000qalita-frontend:3000
info

Les agents doivent pouvoir communiquer avec le backend du control plane, bien penser à faire une ouverture de flux vers l'Ingress Point (point de terminaison ou encore url) du backend !

Prérequis

Plateforme

Puissance de calcul

Le control plane de la plateforme comprend le frontend avec son backend ainsi que la documentation. Elle nécessite peu de puissance de calcul.

Azure NodeSpecs
compute nodeNode specs : linux/amd64 - 4 vCPU - 16 Gio RAM - 100 Go SSD Fast Storage
UtilisationMémoireCPU
Au repos500 Mo0.5
En utilisation2 Go1
Optimal4 Go2

Stockage

statefulsets

Le stockage comprend :

  • La base relationnelle Postgresql contient les données de gestion de la plateforme, les métriques, ainsi que les logs d'activités utilisateurs.
  • Le cache redis permet d'accélérer l'interface et les requêtes au backend.
  • Le stockage Seaweedfs comprend les logs des tâches, les assets (archives des packs).
UtilisationPostgresqlSeaweedfs
Minimal1 Go1 Go
Dépend du volume des métriques et fréquence des analyses10+ Go10+ Go

Agents

Les caractéristiques de l'agent dépendent grandement de la typologie ainsi que la volumétrie des sources pour lesquels il effectue les analyses.

UtilisationMémoireCPU
Minimal50 Mo0.2
Dépend du volume des sources et fréquence des analyses..

I Déploiement Cloud SaaS

Qalita Platform propose une solution entièrement managé et hébergé sur cloud européen HDS et SecNumCloud.

Architecture

Schéma d'architecture de la plateforme Qalita en mode SaaS

S'inscrire gratuitement sur la plateforme SaaS

II Déploiement sur Kubernetes

kubernetes-deployment Schéma d'architecture de la plateforme Qalita déployé sur Kubernetes

Prérequis

Pour déployer sur un cluster Kubernetes managé, il vous faudra :

Dependencies

Installation du helm chart Qalita

astuce

Pour avoir la documentation la plus à jour possible pour le helm chart : Allez directement sur le site Artifacthub

1. Créer un namespace

Créer un namespace qalita dans votre cluster Kubernetes.

2. Créer un secret

Créer un secret qalita-license dans votre namespace qalita contenant votre clé de licence.

3. Adding the chart Repository

helm repo add qalita https://helm.qalita.io/
helm repo update

4. Resolve dependencies

helm dependency update

5. Install

astuce

Il va vous falloir modifier les values pour correspondre le mieux à votre organisation. Voir un exemple de fichier de values

helm install qalita qalita/qalita -f values.yaml

6. Use it

The chart will deploy the following resources:

  • QALITA App
  • QALITA API
  • QALITA Doc
  • QALITA Postgresql Database
  • QALITA Redis Cache Database
  • QALITA Seaweedfs S3 Storage

With cluster.domain=example.com Creates the following endpoints:

Values

astuce

Il va vous falloir modifier les values pour correspondre le mieux à votre organisation. Voir un exemple de fichier de values

attention

Pour une utilisation en production, il est fortement recommandé de déployer la plateforme sur un cluster Kubernetes managé.

QALITA offre une solution entièrement managée et hébergée sur cloud européen HDS et SecNumCloud.

Contactez-nous

III Déploiement Docker Compose

Voir le tutoriel : Déploiement Docker Compose

Configurations possibles Agents <-> Sources

1. Même namespace :

  1. Déploiement avec agent dans le même namespace agent.enabled=true
  2. Déploiement de data sources dans le même namespace

2. Autre namespace :

  1. Déploiement d'un agent dans un autre namespace
  2. Déploiement de data sources dans le même namespace

3. Autre namespace + source délocalisé :

  1. Déploiement d'un agent dans un autre namespace
  2. Pour se connecter à une source dans tout autre environnement (vm, localhost etc...)

4. Totalement Délocalisé :

  1. Déploiement d'un agent dans tout autre environnement (vm, localhost etc...)
  2. Pour se connecter à une source localisé dans tout autre environnement (vm, localhost etc...)

Pour savoir comment déployer un agent voir agent