Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8,...
Transcript of Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8,...
![Page 1: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/1.jpg)
Eléments d’architecture technique
JPlatform 10
Juilet 2020
![Page 2: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/2.jpg)
Contexte et Objectifs
Jalios Digital Platform dans son écosystème
Architecture technique de la solution
> Composants logiciels
> Architecture physique
Prérequis d’installation
Compléments d’architecture
Accompagnement Jalios
Plan
![Page 3: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/3.jpg)
Contexte du document
3
Cas d’utilisation du document
• Support de présentation d’un atelier de travail avec Jalios pour préparer le
déploiement de la solution Jalios Digital Platform chez un hébergeur ou une
direction informatique
• Support d’aide aux équipes d’exploitation avant déploiement
Points abordés
• Architecture technique
• Pré requis d’installation
• Préconisation d’environnement technique
Objectifs
• Permettre de comprendre comment la solution s’intègre au sein du SI
• Elaborer une première esquisse de l’architecture logique et physique
![Page 4: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/4.jpg)
Autres ressources
4
Manuel d’installation et d’exploitation
• Mise à disposition par Jalios d’un guide technique détaillé, téléchargeable
depuis notre site communautaire (http://community.jalios.com),
(https://community.jalios.com/jplatform10-install-fr ) .
• Demande de création de compte nécessaire au préalable, directement sur le
site
Installation des modules
• Jalios Digital Platform est une solution modulaire (liste des modules
disponibles ici: http://community.jalios.com/jcms/frt_73857 )
• Chaque module possède sa propre documentation technique et est
téléchargeable depuis le site Jalios Community. Les habilitations de
téléchargement étant liées aux usages acquis par client.
![Page 5: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/5.jpg)
Ecosystème standard
5
Navigateur, Tablette, Smartphone
Applications
rest, rss, soap
Annuaire SSOMessagerie
pop, imap
ldap(s)smtp
Base de données relationnelle
Stockage de fichiers(fichiers bureautiques, images, etc.)
http(s)
Clients
Services communs du SI
Services de persistance dédiés à la solution
![Page 6: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/6.jpg)
Architecture technique JPlatform
6
Serveur Web
BDD relationnelle
Serveur J2EE
Stockage de fichiers
Op
en A
PI
Java
AP
I
Navigateur, Tablette, Smartphone
Applications
Store XMLGabarits JSPs
Annuaire SSO Messagerie
![Page 7: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/7.jpg)
Jalios Digital Platform 10.0
• Webapp Java EE6
• Non dépendante d’un système d’exploitation mais nécessite un serveur
d’application compatible Java EE (en particulier pour l’API Servlet 3.0)
• Requiert une version de java JDK en version 8 ou 11
Système d’exploitation
• Serveur compatible INTEL avec au choix:
• Windows 2012 R2, 2016, 2019
• Linux Debian 9/10 ou RedHat 7/8
• Ou autre distribution Linux équivalentes
Ressources
Serveur (physique ou VM) disposant d’au minimum de 2 cœurs (CPU), 6 Go
de Ram et 50 Go d’espace disque. Recommandé le double.
Dimensionnement à étudier pour chaque client en fonction des usages.
Equipement et configuration Serveur (1)
7
![Page 8: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/8.jpg)
Serveur d’application Java EE
• Application web conforme a Java EE6
Equipement et configuration Serveur (2)
8
Systèmes d’exploitation
Serveurs d’applications Windows Linux Solaris AIX
Apache Tomcat 8.5 ou 9 ● ● ●
IBM WebSphere AS 9.0 ● ●
JBoss EAP 7.0 ou 7.1 ● ●
![Page 9: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/9.jpg)
Base de données :
• PostgreSQL 9.6, 10, 11 et 12
• MySQL 5.7 et 8 (moteur de stockage InnoDB)
• Oracle 11g et 12c.
• Microsoft SQL Server 2012, 2016 et 2019
• IBM DB2 9.7
• MariaDB 10
Serveur Web
• Apache HTTP 2.4, avec le module mod_jk 1.2 ou mod_proxy_ajp comme connecteur Tomcat
• IBM HTTP Server (IHS) dans les environnements WebSphere AS.
Serveur SMTP
• Notifications : envoi de mail depuis JCMS 10
Equipement et configuration Serveur (3)
9
![Page 10: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/10.jpg)
Serveur POP3/IMAP (optionnel)
• Si le mail entrant est active, JCMS 10 requiert un domaine de messagerie
sur un serveur POP3 ou IMAP pour gérer ces mails entrants.
Annuaire LDAP/LDAPS (optionnel)
• Microsoft Active Directory
• Novell eDirectory
• OpenLDAP
• Oracle Directory Server
Equipement et configuration Serveur (4)
10
![Page 11: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/11.jpg)
Conversion des documents (optionnel)
• Permet la conversion automatique des documents bureautiques (word,
excel, powerpoint) au format Pdf
• Solutions disponibles :
• Utilisation du couple Jod Converter (webapp J2EE) et LibreOffice 6
• Connexion possible aux services tiers OnlyOffice et Collabora
Equipement et configuration Serveur (5)
11
![Page 12: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/12.jpg)
Navigateurs web
• Microsoft Edge
• Microsoft Internet Explorer 11 (sans aucun mode de compatibilité)
• Mozilla Firefox 52 ou +
• Google Chrome 24 ou +
• Safari 6 ou +
Mobilité
• Site Responsive Web Design assurant la compatibilité avec tablettes et téléphones mobiles pour les sites internet
• Module Smartphone: propose des interfaces dédiées aux terminaux de petite taille + possibilité d’utiliser l’application JMobile
Flash Player 9
• Si le navigateur n’est pas compatible HTML5 (lecture de vidéos)
Postes clients
12
![Page 13: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/13.jpg)
Module JDrive
• Compatible Windows XP, Windows Vista et Windows 7, Windows 8 et Windows 10, en 32-bits ou 64-bits
• Requiert le framework .Net 4.6
• Installation manuelle ou par stratégie de groupe (GPO)
• Paramétrage local par l’utilisateur (URL serveur JCMS, identifiant) en cas d’installation manuelle
• Compatible SSO Windows (Module Waffle) et module SAML
Module Outlook
• Compatible Microsoft Outlook 2010 et 2013
• Requiert le framework .Net 4.6
• Installation manuelle ou par stratégie de groupe (GPO)
• Paramétrage local par l’utilisateur (URL serveur JCMS, identifiant) en cas d’installation manuelle
• Compatible SSO Windows (Module Waffle)
Postes clients: installations supplémentaires
13
![Page 14: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/14.jpg)
Architecture logicielle classique
14
Serveur Web
BDDrelationnelle
Serveur Jalios
Stockage de fichiers
Messagerie instantanée
Conversion de documents
HTTP / HTTPS
JDBC
XMPP
AJP
Montage disque
Utilisateurs
Architecture logique avec l’ensemble des usages (Collaboratif, GED, RSE,…)
![Page 15: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/15.jpg)
Architecture logicielle avec accès externe
15
BDDrelationnelle
Serveur Jalios
Stockage de fichiers
Messagerie instantanée
Conversion de documents
Internaute Reverse Proxy Firewall
Intranaute
DMZ LAN
Serveur Web
HTTP / HTTPS
JDBC
XMPP
AJP
Montage disque
![Page 16: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/16.jpg)
Architecture logicielle répliquée
16
HTTP / HTTPS
JDBC
XMPP
AJP
Montage disque
JSync
BDDrelationnelle
Stockage de fichiers
Conversion de documents
Serveur Jalios 1
Serveur Jalios 2
Cluster Jalios
Serveur Web
Messagerie instantanée
Utilisateurs
Architecture avec utilisation de JSync (Jalios) en failover
![Page 17: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/17.jpg)
Architecture logicielle répliquée
17
HTTP / HTTPS
JDBC
XMPP
AJP
Montage disque
Serveur Web
Messagerie instantanée
Utilisateurs
BDDrelationnelle
Stockage de fichiers
Conversion de documents
Architecture avec utilisation de JSync (Jalios) en failover
Flux inactif si passif
JSync
Serveur Jalios 1
Serveur Jalios 2
![Page 18: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/18.jpg)
Architecture logicielle: exemple
18
Reverse Proxy Serveur JPlatform (J2EE )
Messagerie instantanée
Conversion de documents
BDD relationnelle
• Apache Http• mod_proxy_http
• Apache Tomcat• WebApp JPlatfrom
• Apache Tomcat• WebApp Jod Converter• LibreOffice
• PostgreSQL
• Openfire
Serveur Web
• Apache Http• mod_jk
![Page 19: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/19.jpg)
Référentiel utilisateurs
• JPlatform gère de façon autonome les utilisateurs, leurs groupes et leurs droits.
• JPlatform peut être couple avec un annuaire LDAP (ou LDAPS) pour valider les authentifications des membres et récupérer leurs informations (nom, email, ...).
• JPlatform complète l’intégration avec les annuaires LDAP en synchronisant les groupes LDAP et les utilisateurs qui les composent
Questions a se poser lors d’un couplage avec un LDAP :
• Quel est le modèle des DN (DistinguishName) des utilisateurs et des groupes ?
• Quel est le modèle des groupes (posixGroup, groupOfUniqueNames, ...) ?
• Quels champs contiennent les informations sur la personne (compte utilisateur, nom, prénom, email, fonction, ...)
• Quels filtres sur les utilisateurs et les groupes ? (ex: (&(objectClass=person)(objectClass=user)(sAMextensionAttributes1=jalios)
Gestion des utilisateurs
20
![Page 20: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/20.jpg)
Fonction native de délégation sécurisée d’utilisateur
JCMS propose en standard les modules SSO suivant pour se
coupler avec vos systèmes d’authentification
• Module SSO SAML v2
• Module SSO CAS
• Module SSO Waffle (NTLM & Kerberos)
• Compatible Windows Server uniquement
• Module SSO RSA ClearTrust et CA SiteMinder
Authentification forte (double-facteur)
• Le Module TOTP permet d’ajouter une seconde étape d’authentification sur
un appareil de confiance (smartphone) via une application d'authentification
suivant la RFC-6238.
Gestion des utilisateurs / SSO
21
![Page 21: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/21.jpg)
Fréquence d’accès (visiteurs/jour, hit/seconde)
• en moyenne
• en pic d’activité
Usages de la plate forme
• information, documentaire, collaboratif ou/et communautaire
Volumétrie des contenus
• contenus éditoriaux de type « intranet/internets » (article, ...)
• contenus « collaboratifs » (forum, commentaire, wiki, évènements,…)
• contenus « GED » (documents PDF, MS Office,…)
Temps de réponse serveur (contenus web 1s, recherche 3s, page liste 2s,…)
Niveau de service (SLA, 99,9%, 24/24h,…)
Critères de dimensionnement d’une architecture
22
![Page 22: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/22.jpg)
Pour une plateforme d’hébergement alliant simplicité et performance, Jalios recommande la plateforme technique suivante :
• Serveur Intel Xeon à 3 GHz avec 4 coeurs
• 12 Go de RAM
• 300 Go de disque
Avec la configuration logicielle suivante:
• Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10)
• JDK 11
• Tomcat 9
• Apache 2.4 + mod_jk
• PostgreSQL 12
Il est fortement recommandé de réaliser un atelier de cadrage afin d’étudier les usages attendus et d’adapter l’architecture et le dimensionnement des serveurs.
Recommandation de plateforme technique
23
![Page 23: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/23.jpg)
Les architectures physiques types
24
Nous rencontrons principalement 3 types d’architecture physique:
• Minimale
• Standard
• Redondée à 2 nœuds
Critère
Architecture type Simplicité Coût RobustesseMontée en
charge
Minimale ++ ++ - -
Standard + + + +
Redondée -- - ++ ++
![Page 24: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/24.jpg)
Architecture physique minimale
25
Utilisateurs
Messagerie instantanée
Conversion de documents
Serveur Web
Serveur JPlatform (J2EE )
BDD relationnelle
Machine Virtuelle • 4-6 vcpu• 10-12 Go de ram• 100-300 Go d’espace disque
Architecture logique avec l’ensemble des usages (Collaboratif, GED, RSE,…)
![Page 25: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/25.jpg)
Architecture physique standard
26
Utilisateurs
Messagerie instantanée
Conversion de documents
VM 4-6 vcpu / 8-10 Go ram / 100-300 Go Disque
Serveur Web
Serveur Jalios (J2EE )
BDD relationnelle
VM 2 vcpu / 4 Go ram / 50-100 go Disque
À partir de 200 utilisateurs simultanés avec l’ensemble des usages
(Hypothèse : 2 000 utilisateurs potentiels)
BDD relationnelle
![Page 26: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/26.jpg)
Architecture physique redondée
27
NAS( 500 Go)
VM 8 vcpu / 12 Go ram / 100 Go disque
Serveur Jalios (J2EE )
À partir de 800 utilisateurs simultanés avec l’ensemble des usages
Messagerie instantanée
Conversion de documents
VM 2-4 vcpu / 6 Go ram / 100 go disque
VM 2 vcpu / 4 Go de ram
Serveur Web
Serveur Jalios (J2EE )
VM 2-4 vcpu / 8 Go ram / 100 Go disque
BDD relationnelleBDD relationnelle
(Hypothèse : 10 000 utilisateurs potentiels)
VM 8 vcpu / 12 Go ram / 100 Go disque
![Page 27: Eléments d architecture technique JPlatform 10 · 2020. 8. 3. · Linux 64-bit (CentOS 8, RHEL 8, Ubuntu Server 18.04, Debian 10) • JDK 11 • Tomcat 9 • Apache 2.4 + mod_jk](https://reader035.fdocuments.net/reader035/viewer/2022071213/602da9f09cbc7773c51d2246/html5/thumbnails/27.jpg)
Questions ?