Infrastructure

Orchestrateur de conteneur

Afin de garantir une indépendance vis à vis du matériel et de la solution d’hébergement, la plateforme se déploie sur un cluster Kubernetes. L’ensemble des logiciels utilisés est adapté et profite pleinement de l’élasticité et de la souplesse apportée par cette solution. Des politiques de ségrégation des namespaces, via le mise en place des espaces, sont mises en œuvre augmentant la sécurité globale de la plateforme. Les quotas sont utilisés afin d’apporter une allocation de ressource optimale aux différents traitements tout en garantissant le maintien des temps de réponse.

Kubernetes permet de profiter aisément des offres des différents cloud provider en réduisant notamment la charge de maintenance d’une plateforme.

Afin de permettre un déploiement sur des clusters de machines propriétaires, la plateforme peut aussi être déployée sur un cluster OKD facilitant ainsi toutes les opérations d’installation, de mise à jour ou de maintenance.

Volumétrie

Les choix d’architecture ont été pris en compte avec les hypothèses suivantes :

  • Peu de modifications par rapport aux lectures par les utilisateurs

  • Un nombre restreint d’utilisateurs, néanmoins la scalabilité horizontal permet de circonvenir cette limite.

Les données max du tableau ci-dessous sont régies par plusieurs facteurs (taille max des body de request, taille max des disques, …​). C’est pourquoi, par exemple, il n’y a pas de corrélation directe entre un nombre d’item, la taille max d’un item et la taille max de l’ensemble des items.
Table 1. Table Volumétrie
Moyenne Max

Nombre de classes

100

500

Nombre de champs

200

1 000

Nombre d’items

1 000 000

40 000 000

Nombre d’attributs par objet

15

255

Taille max d’une donnée brute (un item)

1 Mo

3 Mo

Taille max des données brutes (ensemble des items d’un environnement)

2 Go

4 To

Utilisateurs simultanés en consultation

20

500

Utilisateurs simultanés en modification

5

20

Les tests de performances permettant de valider ou même d’étendre ces limites sont en cours de réalisation. Des lenteurs peuvent apparaître si il existe un grand nombre de classes sur les requêtes de type multiclasse. Des travaux sont en cours pour réduire les temps de réponse.