SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
05.02.2015 ESUP-Days #19 11
ESUP-Days
#19
05.02.2015
Paris
05.02.2015
Packaging Esup CAS
“Déploiement d’un serveur CAS”
Ludovic Auxepaules -- Direction des Systèmes d’Information
de l’Université Pierre et Marie Curie
ludovic.auxepaules@upmc.fr https://github.com/auxepaul/
https://github.com/EsupPortail/cas-toolbox-new
05.02.2015 ESUP-Days #19 2
“Recette” à suivre pour adopter CAS
 Utiliser la dernière version stable du serveur CAS
 Ajouter la « charte graphique » de l’établissement
 Ajouter la configuration de l’établissement
 Comment s’authentifient les utilisateurs ?
 Quels sont les attributs utilisateurs et d’où proviennent-ils ?
 Quelles sont les applications autorisées à utiliser CAS ?
 …
 Assembler, tester et déployer
 Maintenir à jour les clients CAS dans les applicatifs
05.02.2015 ESUP-Days #19 3
Historique des versions du serveur
https://www.apereo.org/tags/cas-product-release
https://github.com/Jasig/cas/releases/
 CAS Server 4.0.1 Janvier 2015
 CAS Server 4.0 Mai 2014 recommandée en juin 2014
 Patchs de sécurité pour SAML2 (e.g. Google Apps), attaques HTTP
 CAS Server 3.5.3 Janvier 2015
 CAS-server-security-filter 1.0 Aout 2014 2.0 Novembre 2014
 CAS Server 3.5.2.1 Avril 2014
 CAS Server 3.4.12.1 Avril 2014
 CAS Server 3.5.2 Février 2013 recommandée en juin 2013
...
 CAS Server 3.5.0 Juillet 2012
 CAS Server 3.4.12 Mai 2012 recommandée en juin 2012
…
 CAS Server 3.4.7 Mars 2011
…
 CAS Server 3.4.0 Mai 2010
…
05.02.2015 ESUP-Days #19 4
Prérequis pour déployer un serveur CAS
 Java JDK 6  7
 Conteneur de Servlets (Apache Tomcat 6  7)
 Apache Maven 3
 Serveur HTTP Apache 2.x avec mod_proxy_ajp
(Optionnel)
 Certificats SSL (pour la mise en production)
“CAS installation is a fundamentally source-oriented
process”
05.02.2015 ESUP-Days #19 5
Comment déployer un serveur CAS ?
 Installation d'une QuickStart Esup ou Jasig
 Idéal pour découvrir rapidement CAS, tester, réaliser des
formations, démos…
 Modification du code source d’une version stable
 Copie d’un WAR et modifications dans le webapps Tomcat
 Plus difficile pour faire les montées de version du serveur CAS
 Maven WAR Overlay
 Méthode actuellement recommandée pour déployer CAS (Apereo)
 Esup cas-toolbox et Esup cas-toolbox-new
 Facilite le déploiement en centralisant certains éléments de
configuration et en préconfigurant certains modules de CAS
05.02.2015 ESUP-Days #19 6
2008-2011 : Esup cas-toolbox v3
Maven WAR Overlay
2012-2014 : Esup cas-toolbox-new v3
2015 : Esup cas-toolbox-new v4 (en développement)
Packaging Esup CAS
“Déploiement d’un serveur CAS”
05.02.2015 ESUP-Days #19 7
2008-2011 : Esup cas-toolbox v3
 Déploiement d'un serveur CAS dans un Tomcat existant
 Simplification de la configuration de CAS
 Personnalisation du serveur CAS
 Assemblage de distributions Quickstart
 Dernière version sur sourceSup et basée sur CAS v3.4.7
 https://sourcesup.renater.fr/frs/?group_id=401&release_id=1461
 Documentations associées
 https://www.esup-portail.org/wiki/display/CAS/CAS+Toolbox+-
+Package+d%27installation+de+CAS+V3
 https://wiki.jasig.org/display/CAS/CAS-toolbox#CAS-toolbox-Overview
 https://subversion.renater.fr/cas-toolbox/tags/3.4.7-1/README
 Packaging Esup basé sur Ant et le serveur CAS v3 du Jasig
05.02.2015 ESUP-Days #19 8
2008-2011 : Esup cas-toolbox v3
 Téléchargement de cas-toolbox.X-Y.tar.gz
 Copie de build.sample.properties en build.properties
 Saisie de la propriété deploy.path property dans build.properties
 Copie de config.sample.properties en config.properties
 Configuration de config.properties (et ajout des personnalisations dans
le répertoire custom)
 Initialisation en lançant la commande ant init
 Déploiement dans le Tomcat existant en lançant ant deploy
 Lancement de Tomcat et ouverture de l'adresse
http://localhost:8080/cas
 Exemple de déploiement dans un Tomcat existant
GT Esup Authentification, 27 juin 2014
05.02.2015 ESUP-Days #19 9
2008-2011 : Esup cas-toolbox v3
 Interface utilisateur avec le thème Esup (v3.4.7)
05.02.2015 ESUP-Days #19 10
Maven WAR Overlay
 Gestion locale des sources contenant seulement les dépendances, les
configurations et les personnalisations spécifiques à l’établissement
 Fichier pom.xml (Project Object Model) décrivant le projet, ses
dépendances, les tâches automatisées…
 Fichiers .java, .properties, .xml,… ajoutés ou modifiés
 Attention aux déplacements de fichiers et répertoires lors des montées de version
 Reconstruction du WAR à déployer dans Tomcat
 A partir de la version d’origine du serveur CAS définie dans pom.xml
 Avec toutes les configurations et les personnalisations en superposition
(remplacement des fichiers d’origine)
 Documentations associées
 https://wiki.jasig.org/display/CASUM/Best+Practice+-
+Setting+Up+CAS+Locally+using+the+Maven+WAR+Overlay+Method
 http://jasig.github.io/cas/current/installation/Maven-Overlay-Installation.html
 Principes à retenir lors du déploiement
05.02.2015 ESUP-Days #19 11
Maven WAR Overlay
 Serveur CAS 3.4.1x
 https://subversion.renater.fr/cas-toolbox/branches/cas-toolbox-new/
 https://github.com/EsupPortail/cas-toolbox-new/tree/v3.4.x
 Serveur CAS 3.5.x
 https://github.com/UniconLabs/simple-cas-overlay-template
 https://github.com/Unicon/unicon-cas-overlay
 https://github.com/leleuj/cas-overlay-3.5.x
 Serveur CAS 4.0.x
 https://github.com/leleuj/cas-overlay-demo
 https://github.com/UniconLabs/simple-cas4-overlay-template
 https://github.com/EsupPortail/cas-toolbox-new/tree/v4.0.x
 Exemples connus pour le serveur CAS
05.02.2015 ESUP-Days #19 12
Esup cas-toolbox-new v3 et v4
 Possibilités offertes par le nouveau packaging
 Déploiement d’un serveur CAS dans un Tomcat existant
 Simplification et centralisation de la configuration
 Fichier config.properties, HandlersDiscover
 Pré-paramétrage des ajouts Esup
 Thème, LDAP, Logging, TraceMe, Stats, BlockAttack, SAML 1.1…
 A activer : Memcached, Rest, Kerberos, LPPE, Clearpass…
 Pas de quickstart construite avec Ant
 Possibilité d'utiliser jetty en localhost pour “tests” (envisagé)
 Restructuration et simplification du projet esup cas-toolbox (J. Marchal)
 https://subversion.renater.fr/cas-toolbox/branches/cas-toolbox-new/
 Svn2git de la branche svn et sauvegarde sur github (L. Auxepaules)
https://github.com/auxepaul/cas-toolbox-new
 Packaging basé sur Maven
05.02.2015 ESUP-Days #19 13
Esup cas-toolbox-new v3 et v4
cas-toolbox-core (ajouts et pré-configurations propres à Esup)
 src/main
– java
– webapp
 pom.xml
cas-toolbox-custom (changements de l’établissement)
 src/main
– webapp
 pom.xml
etc (guides HowTo, et exemples de « scripts »)
config.sample.properties (exemple de configuration en localhost)
pom.xml
 Meilleure différenciation des ajouts Esup (cas-toolbox-core), des
changements de l'établissement (cas-toolbox-custom)
 Architecture du packaging : « Double Overlays »
05.02.2015 ESUP-Days #19 14
Esup cas-toolbox-new v3 et v4
 git clone https://github.com/EsupPortail/cas-toolbox-new.git
 git checkout v4.0.x
 Copie de config.sample.properties en config.properties
 Saisie de la propriété deploy.path dans config.properties
 Configuration de config.properties
 (Ajout des personnalisations dans le répertoire cas-toolbox-custom)
 Initialisation et déploiement dans Tomcat : mvn clean package
 Lancement de Tomcat et ouverture de l'adresse
http://localhost:8080/cas
http://localhost:8080/cas-management
 Exemple de déploiement dans un Tomcat existant
05.02.2015 ESUP-Days #19 15
Esup cas-toolbox-new v3 et v4
 Interface utilisateur avec le thème Esup
05.02.2015 ESUP-Days #19 16
CAS v4.0.x
 Quelques nouveautés introduites par la version 4.0
 Nouveau protocole CAS v3
 Renvoi des attributs de l'utilisateur en plus de l'identifiant
 Meilleure modularité
 e.g. interface web de gestion des services séparée du serveur
 Remaniement des API d'authentification
 Mise à jour des dépendances
 e.g. remplacement de Spring LDAP par Ldaptive
 Améliorations de l’interface Utilisateur (“Responsive”)
 Code non rétro-compatible avec les versions 3.x
 Difficile de recopier directement certaines configurations et
modifications directement d’une version 3.x vers 4.x
http://jasig.github.io/cas/current/
05.02.2015 ESUP-Days #19 17
Démonstration du packaging
Esup cas-toolbox-new v4
Packaging Esup CAS
“Déploiement d’un serveur CAS”
05.02.2015 ESUP-Days #19 18
Démonstration
 Quickstart uPortal 4.1
 C:/portal
 Apache Maven 3.0.4
 Apache Tomcat 7.0.32
 Scripts de lancement de tomcat dans apache-tomcat-7.0.32/bin
– startup.bat et shutdown.bat
 Java JDK 1.7
 Variables d’environnement
 JAVA_HOME, JAVA_OPTS, CATALINA_OPTS
 Path : MAVEN_HOME%bin
 Git : Github pour Windows
 Environnement de demonstration sous Windows
05.02.2015 ESUP-Days #19 19
Démonstration
 Statistiques : cas/stats.jsp
 Monitoring : cas/status
 Gestion des services : cas-management
 Quelques pages

Contenu connexe

Tendances

Alphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et AdministrationAlphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et AdministrationAlphorm
 
eZ publish - Publication instantanée et fort trafic web
eZ publish - Publication instantanée et fort trafic webeZ publish - Publication instantanée et fort trafic web
eZ publish - Publication instantanée et fort trafic webGauthier Garnier
 
Alphorm.com Formation LXC
Alphorm.com  Formation LXCAlphorm.com  Formation LXC
Alphorm.com Formation LXCAlphorm
 
Performance serveur et apache
Performance serveur et apachePerformance serveur et apache
Performance serveur et apacheafup Paris
 
Apache flink - prise en main rapide
Apache flink - prise en main rapideApache flink - prise en main rapide
Apache flink - prise en main rapideBilal Baltagi
 
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMC
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMCRetour d'expérience : Mise en place de l'ENT v4 à l'UPMC
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMCLudovic A
 
Authentification et autorisation d'accès avec AWS IAM
Authentification et autorisation d'accès avec AWS IAMAuthentification et autorisation d'accès avec AWS IAM
Authentification et autorisation d'accès avec AWS IAMJulien SIMON
 
Cedric leblond migrer jenkins AWS vers Azure Devops
Cedric leblond migrer jenkins AWS vers Azure DevopsCedric leblond migrer jenkins AWS vers Azure Devops
Cedric leblond migrer jenkins AWS vers Azure DevopsFactoVia
 
Alphorm.com Formation Scripting Bash avancé pour GNU/Linux
Alphorm.com   Formation Scripting Bash avancé pour GNU/LinuxAlphorm.com   Formation Scripting Bash avancé pour GNU/Linux
Alphorm.com Formation Scripting Bash avancé pour GNU/LinuxAlphorm
 
Migrer de Jenkins vers Azure DevOps les Builds Java
Migrer de Jenkins vers Azure DevOps les Builds JavaMigrer de Jenkins vers Azure DevOps les Builds Java
Migrer de Jenkins vers Azure DevOps les Builds JavaCédric Leblond
 
Paris Scala User Group #43 - Spray (Magnet Pattern) + RxScala / ElasticSearch
Paris Scala User Group #43 - Spray (Magnet Pattern) + RxScala / ElasticSearchParis Scala User Group #43 - Spray (Magnet Pattern) + RxScala / ElasticSearch
Paris Scala User Group #43 - Spray (Magnet Pattern) + RxScala / ElasticSearchMourad DACHRAOUI
 
Kafka Connect & Kafka Streams - Paris Kafka User Group
Kafka Connect & Kafka Streams - Paris Kafka User GroupKafka Connect & Kafka Streams - Paris Kafka User Group
Kafka Connect & Kafka Streams - Paris Kafka User GroupHervé Rivière
 
Redeploiement d’une plateforme eZpublish multisites internationale
Redeploiement d’une plateforme eZpublish multisites internationaleRedeploiement d’une plateforme eZpublish multisites internationale
Redeploiement d’une plateforme eZpublish multisites internationaleKaliop-slide
 
Alphorm.com Formation Ansible : Le Guide Complet du Débutant
Alphorm.com Formation Ansible : Le Guide Complet du DébutantAlphorm.com Formation Ansible : Le Guide Complet du Débutant
Alphorm.com Formation Ansible : Le Guide Complet du DébutantAlphorm
 
SUSE Expert Days Paris 2018 – CaaSP
SUSE Expert Days Paris 2018 – CaaSPSUSE Expert Days Paris 2018 – CaaSP
SUSE Expert Days Paris 2018 – CaaSPSUSE
 

Tendances (18)

Alphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et AdministrationAlphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et Administration
 
eZ publish - Publication instantanée et fort trafic web
eZ publish - Publication instantanée et fort trafic webeZ publish - Publication instantanée et fort trafic web
eZ publish - Publication instantanée et fort trafic web
 
Alphorm.com Formation LXC
Alphorm.com  Formation LXCAlphorm.com  Formation LXC
Alphorm.com Formation LXC
 
Performance serveur et apache
Performance serveur et apachePerformance serveur et apache
Performance serveur et apache
 
Apache flink - prise en main rapide
Apache flink - prise en main rapideApache flink - prise en main rapide
Apache flink - prise en main rapide
 
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMC
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMCRetour d'expérience : Mise en place de l'ENT v4 à l'UPMC
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMC
 
Python + ansible = ♥
Python + ansible = ♥Python + ansible = ♥
Python + ansible = ♥
 
Authentification et autorisation d'accès avec AWS IAM
Authentification et autorisation d'accès avec AWS IAMAuthentification et autorisation d'accès avec AWS IAM
Authentification et autorisation d'accès avec AWS IAM
 
Cedric leblond migrer jenkins AWS vers Azure Devops
Cedric leblond migrer jenkins AWS vers Azure DevopsCedric leblond migrer jenkins AWS vers Azure Devops
Cedric leblond migrer jenkins AWS vers Azure Devops
 
Alphorm.com Formation Scripting Bash avancé pour GNU/Linux
Alphorm.com   Formation Scripting Bash avancé pour GNU/LinuxAlphorm.com   Formation Scripting Bash avancé pour GNU/Linux
Alphorm.com Formation Scripting Bash avancé pour GNU/Linux
 
Migrer de Jenkins vers Azure DevOps les Builds Java
Migrer de Jenkins vers Azure DevOps les Builds JavaMigrer de Jenkins vers Azure DevOps les Builds Java
Migrer de Jenkins vers Azure DevOps les Builds Java
 
Paris Scala User Group #43 - Spray (Magnet Pattern) + RxScala / ElasticSearch
Paris Scala User Group #43 - Spray (Magnet Pattern) + RxScala / ElasticSearchParis Scala User Group #43 - Spray (Magnet Pattern) + RxScala / ElasticSearch
Paris Scala User Group #43 - Spray (Magnet Pattern) + RxScala / ElasticSearch
 
FinistJUG - Apache TomEE
FinistJUG - Apache TomEEFinistJUG - Apache TomEE
FinistJUG - Apache TomEE
 
Kafka Connect & Kafka Streams - Paris Kafka User Group
Kafka Connect & Kafka Streams - Paris Kafka User GroupKafka Connect & Kafka Streams - Paris Kafka User Group
Kafka Connect & Kafka Streams - Paris Kafka User Group
 
Amazon Inspector
Amazon InspectorAmazon Inspector
Amazon Inspector
 
Redeploiement d’une plateforme eZpublish multisites internationale
Redeploiement d’une plateforme eZpublish multisites internationaleRedeploiement d’une plateforme eZpublish multisites internationale
Redeploiement d’une plateforme eZpublish multisites internationale
 
Alphorm.com Formation Ansible : Le Guide Complet du Débutant
Alphorm.com Formation Ansible : Le Guide Complet du DébutantAlphorm.com Formation Ansible : Le Guide Complet du Débutant
Alphorm.com Formation Ansible : Le Guide Complet du Débutant
 
SUSE Expert Days Paris 2018 – CaaSP
SUSE Expert Days Paris 2018 – CaaSPSUSE Expert Days Paris 2018 – CaaSP
SUSE Expert Days Paris 2018 – CaaSP
 

En vedette

"Esup CAS Packaging" : Deploy and customize easily a CAS4 server
"Esup CAS Packaging" : Deploy and customize easily a CAS4 server"Esup CAS Packaging" : Deploy and customize easily a CAS4 server
"Esup CAS Packaging" : Deploy and customize easily a CAS4 serverLudovic A
 
Deploying responsive uPortal 4.2 at UPMC - Sorbonne Universités
Deploying responsive uPortal 4.2 at UPMC - Sorbonne UniversitésDeploying responsive uPortal 4.2 at UPMC - Sorbonne Universités
Deploying responsive uPortal 4.2 at UPMC - Sorbonne UniversitésChristian Cousquer
 
Retour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMC
Retour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMCRetour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMC
Retour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMCLudovic A
 
DevoxxFR Présentation des portails en 2014
DevoxxFR Présentation des portails en 2014DevoxxFR Présentation des portails en 2014
DevoxxFR Présentation des portails en 2014Stéphane Liétard
 
Esupdays 21: Point sur le projet ESUP cas_toolbox
Esupdays 21: Point sur le projet ESUP cas_toolboxEsupdays 21: Point sur le projet ESUP cas_toolbox
Esupdays 21: Point sur le projet ESUP cas_toolboxLudovic A
 
Karuta: Les fonctions esentielles d'un portfolio électronique libre
Karuta:  Les fonctions esentielles d'un portfolio électronique libreKaruta:  Les fonctions esentielles d'un portfolio électronique libre
Karuta: Les fonctions esentielles d'un portfolio électronique libreRaynauld Jacques
 

En vedette (6)

"Esup CAS Packaging" : Deploy and customize easily a CAS4 server
"Esup CAS Packaging" : Deploy and customize easily a CAS4 server"Esup CAS Packaging" : Deploy and customize easily a CAS4 server
"Esup CAS Packaging" : Deploy and customize easily a CAS4 server
 
Deploying responsive uPortal 4.2 at UPMC - Sorbonne Universités
Deploying responsive uPortal 4.2 at UPMC - Sorbonne UniversitésDeploying responsive uPortal 4.2 at UPMC - Sorbonne Universités
Deploying responsive uPortal 4.2 at UPMC - Sorbonne Universités
 
Retour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMC
Retour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMCRetour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMC
Retour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMC
 
DevoxxFR Présentation des portails en 2014
DevoxxFR Présentation des portails en 2014DevoxxFR Présentation des portails en 2014
DevoxxFR Présentation des portails en 2014
 
Esupdays 21: Point sur le projet ESUP cas_toolbox
Esupdays 21: Point sur le projet ESUP cas_toolboxEsupdays 21: Point sur le projet ESUP cas_toolbox
Esupdays 21: Point sur le projet ESUP cas_toolbox
 
Karuta: Les fonctions esentielles d'un portfolio électronique libre
Karuta:  Les fonctions esentielles d'un portfolio électronique libreKaruta:  Les fonctions esentielles d'un portfolio électronique libre
Karuta: Les fonctions esentielles d'un portfolio électronique libre
 

Similaire à Esupdays 19 : Packaging Esup Cas

Déploiement dans Azure depuis VSTS
Déploiement dans Azure depuis VSTSDéploiement dans Azure depuis VSTS
Déploiement dans Azure depuis VSTSAZUG FR
 
2023-02-02 - Marvelous March
2023-02-02 - Marvelous March2023-02-02 - Marvelous March
2023-02-02 - Marvelous MarchFrederic Leger
 
Java in ze Cloud - INSA - nov. 2012
Java in ze Cloud - INSA - nov. 2012Java in ze Cloud - INSA - nov. 2012
Java in ze Cloud - INSA - nov. 2012Alexis Hassler
 
20081008 - Tours Jug - Apache Maven
20081008  - Tours Jug - Apache Maven20081008  - Tours Jug - Apache Maven
20081008 - Tours Jug - Apache MavenArnaud Héritier
 
Kubernetes Meetup Paris #5 - Metriques applicatives k8s
Kubernetes Meetup Paris #5 - Metriques applicatives k8sKubernetes Meetup Paris #5 - Metriques applicatives k8s
Kubernetes Meetup Paris #5 - Metriques applicatives k8sArnaud MAZIN
 
Alphorm.com Formation VMware vSphere 7 : What's New 2/2
Alphorm.com Formation VMware vSphere 7 : What's New 2/2Alphorm.com Formation VMware vSphere 7 : What's New 2/2
Alphorm.com Formation VMware vSphere 7 : What's New 2/2Alphorm
 
Un Voyage dans le Cloud - Dev & Test
Un Voyage dans le Cloud - Dev & Test Un Voyage dans le Cloud - Dev & Test
Un Voyage dans le Cloud - Dev & Test Amazon Web Services
 
Docker en Production (Docker Paris)
Docker en Production (Docker Paris)Docker en Production (Docker Paris)
Docker en Production (Docker Paris)Jérôme Petazzoni
 
Paris Container Day 2016 : Les nouveaux défis du déploiement (Xebia Labs)
Paris Container Day 2016 : Les nouveaux défis du déploiement (Xebia Labs)Paris Container Day 2016 : Les nouveaux défis du déploiement (Xebia Labs)
Paris Container Day 2016 : Les nouveaux défis du déploiement (Xebia Labs)Publicis Sapient Engineering
 
Qualité Logiciel - Outils Open Source pour Java et Web
Qualité Logiciel - Outils Open Source pour Java et WebQualité Logiciel - Outils Open Source pour Java et Web
Qualité Logiciel - Outils Open Source pour Java et WebChristophe Rochefolle
 
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier KrantzOps@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier KrantzOlivier DASINI
 
[DRAFT] Utiliser VmWare pour l'installation d'un Alfresco
[DRAFT] Utiliser VmWare pour l'installation d'un Alfresco[DRAFT] Utiliser VmWare pour l'installation d'un Alfresco
[DRAFT] Utiliser VmWare pour l'installation d'un AlfrescoPASCAL Jean Marie
 
Le Cloud IaaS & PaaS, OpenStack réseau et sécurité
Le Cloud IaaS & PaaS, OpenStack réseau et sécuritéLe Cloud IaaS & PaaS, OpenStack réseau et sécurité
Le Cloud IaaS & PaaS, OpenStack réseau et sécuritéNoureddine BOUYAHIAOUI
 
Chef - Paris BlockCamp - Nov 09
Chef - Paris BlockCamp - Nov 09Chef - Paris BlockCamp - Nov 09
Chef - Paris BlockCamp - Nov 09Olivier Gutknecht
 
20111220 lyon jug-packaging-natif
20111220 lyon jug-packaging-natif20111220 lyon jug-packaging-natif
20111220 lyon jug-packaging-natifHenri Gomez
 
05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdf05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdfbibouechristian
 
05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdf05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdfbibouechristian
 
Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...
Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...
Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...Alexandre Touret
 

Similaire à Esupdays 19 : Packaging Esup Cas (20)

Déploiement dans Azure depuis VSTS
Déploiement dans Azure depuis VSTSDéploiement dans Azure depuis VSTS
Déploiement dans Azure depuis VSTS
 
M211-V1-0909.pptx.pdf
M211-V1-0909.pptx.pdfM211-V1-0909.pptx.pdf
M211-V1-0909.pptx.pdf
 
2023-02-02 - Marvelous March
2023-02-02 - Marvelous March2023-02-02 - Marvelous March
2023-02-02 - Marvelous March
 
Java in ze Cloud - INSA - nov. 2012
Java in ze Cloud - INSA - nov. 2012Java in ze Cloud - INSA - nov. 2012
Java in ze Cloud - INSA - nov. 2012
 
20081008 - Tours Jug - Apache Maven
20081008  - Tours Jug - Apache Maven20081008  - Tours Jug - Apache Maven
20081008 - Tours Jug - Apache Maven
 
Kubernetes Meetup Paris #5 - Metriques applicatives k8s
Kubernetes Meetup Paris #5 - Metriques applicatives k8sKubernetes Meetup Paris #5 - Metriques applicatives k8s
Kubernetes Meetup Paris #5 - Metriques applicatives k8s
 
Alphorm.com Formation VMware vSphere 7 : What's New 2/2
Alphorm.com Formation VMware vSphere 7 : What's New 2/2Alphorm.com Formation VMware vSphere 7 : What's New 2/2
Alphorm.com Formation VMware vSphere 7 : What's New 2/2
 
Un Voyage dans le Cloud - Dev & Test
Un Voyage dans le Cloud - Dev & Test Un Voyage dans le Cloud - Dev & Test
Un Voyage dans le Cloud - Dev & Test
 
Docker en Production (Docker Paris)
Docker en Production (Docker Paris)Docker en Production (Docker Paris)
Docker en Production (Docker Paris)
 
Présentation1
Présentation1Présentation1
Présentation1
 
Paris Container Day 2016 : Les nouveaux défis du déploiement (Xebia Labs)
Paris Container Day 2016 : Les nouveaux défis du déploiement (Xebia Labs)Paris Container Day 2016 : Les nouveaux défis du déploiement (Xebia Labs)
Paris Container Day 2016 : Les nouveaux défis du déploiement (Xebia Labs)
 
Qualité Logiciel - Outils Open Source pour Java et Web
Qualité Logiciel - Outils Open Source pour Java et WebQualité Logiciel - Outils Open Source pour Java et Web
Qualité Logiciel - Outils Open Source pour Java et Web
 
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier KrantzOps@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
 
[DRAFT] Utiliser VmWare pour l'installation d'un Alfresco
[DRAFT] Utiliser VmWare pour l'installation d'un Alfresco[DRAFT] Utiliser VmWare pour l'installation d'un Alfresco
[DRAFT] Utiliser VmWare pour l'installation d'un Alfresco
 
Le Cloud IaaS & PaaS, OpenStack réseau et sécurité
Le Cloud IaaS & PaaS, OpenStack réseau et sécuritéLe Cloud IaaS & PaaS, OpenStack réseau et sécurité
Le Cloud IaaS & PaaS, OpenStack réseau et sécurité
 
Chef - Paris BlockCamp - Nov 09
Chef - Paris BlockCamp - Nov 09Chef - Paris BlockCamp - Nov 09
Chef - Paris BlockCamp - Nov 09
 
20111220 lyon jug-packaging-natif
20111220 lyon jug-packaging-natif20111220 lyon jug-packaging-natif
20111220 lyon jug-packaging-natif
 
05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdf05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdf
 
05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdf05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdf
 
Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...
Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...
Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...
 

Esupdays 19 : Packaging Esup Cas

  • 1. 05.02.2015 ESUP-Days #19 11 ESUP-Days #19 05.02.2015 Paris 05.02.2015 Packaging Esup CAS “Déploiement d’un serveur CAS” Ludovic Auxepaules -- Direction des Systèmes d’Information de l’Université Pierre et Marie Curie ludovic.auxepaules@upmc.fr https://github.com/auxepaul/ https://github.com/EsupPortail/cas-toolbox-new
  • 2. 05.02.2015 ESUP-Days #19 2 “Recette” à suivre pour adopter CAS  Utiliser la dernière version stable du serveur CAS  Ajouter la « charte graphique » de l’établissement  Ajouter la configuration de l’établissement  Comment s’authentifient les utilisateurs ?  Quels sont les attributs utilisateurs et d’où proviennent-ils ?  Quelles sont les applications autorisées à utiliser CAS ?  …  Assembler, tester et déployer  Maintenir à jour les clients CAS dans les applicatifs
  • 3. 05.02.2015 ESUP-Days #19 3 Historique des versions du serveur https://www.apereo.org/tags/cas-product-release https://github.com/Jasig/cas/releases/  CAS Server 4.0.1 Janvier 2015  CAS Server 4.0 Mai 2014 recommandée en juin 2014  Patchs de sécurité pour SAML2 (e.g. Google Apps), attaques HTTP  CAS Server 3.5.3 Janvier 2015  CAS-server-security-filter 1.0 Aout 2014 2.0 Novembre 2014  CAS Server 3.5.2.1 Avril 2014  CAS Server 3.4.12.1 Avril 2014  CAS Server 3.5.2 Février 2013 recommandée en juin 2013 ...  CAS Server 3.5.0 Juillet 2012  CAS Server 3.4.12 Mai 2012 recommandée en juin 2012 …  CAS Server 3.4.7 Mars 2011 …  CAS Server 3.4.0 Mai 2010 …
  • 4. 05.02.2015 ESUP-Days #19 4 Prérequis pour déployer un serveur CAS  Java JDK 6  7  Conteneur de Servlets (Apache Tomcat 6  7)  Apache Maven 3  Serveur HTTP Apache 2.x avec mod_proxy_ajp (Optionnel)  Certificats SSL (pour la mise en production) “CAS installation is a fundamentally source-oriented process”
  • 5. 05.02.2015 ESUP-Days #19 5 Comment déployer un serveur CAS ?  Installation d'une QuickStart Esup ou Jasig  Idéal pour découvrir rapidement CAS, tester, réaliser des formations, démos…  Modification du code source d’une version stable  Copie d’un WAR et modifications dans le webapps Tomcat  Plus difficile pour faire les montées de version du serveur CAS  Maven WAR Overlay  Méthode actuellement recommandée pour déployer CAS (Apereo)  Esup cas-toolbox et Esup cas-toolbox-new  Facilite le déploiement en centralisant certains éléments de configuration et en préconfigurant certains modules de CAS
  • 6. 05.02.2015 ESUP-Days #19 6 2008-2011 : Esup cas-toolbox v3 Maven WAR Overlay 2012-2014 : Esup cas-toolbox-new v3 2015 : Esup cas-toolbox-new v4 (en développement) Packaging Esup CAS “Déploiement d’un serveur CAS”
  • 7. 05.02.2015 ESUP-Days #19 7 2008-2011 : Esup cas-toolbox v3  Déploiement d'un serveur CAS dans un Tomcat existant  Simplification de la configuration de CAS  Personnalisation du serveur CAS  Assemblage de distributions Quickstart  Dernière version sur sourceSup et basée sur CAS v3.4.7  https://sourcesup.renater.fr/frs/?group_id=401&release_id=1461  Documentations associées  https://www.esup-portail.org/wiki/display/CAS/CAS+Toolbox+- +Package+d%27installation+de+CAS+V3  https://wiki.jasig.org/display/CAS/CAS-toolbox#CAS-toolbox-Overview  https://subversion.renater.fr/cas-toolbox/tags/3.4.7-1/README  Packaging Esup basé sur Ant et le serveur CAS v3 du Jasig
  • 8. 05.02.2015 ESUP-Days #19 8 2008-2011 : Esup cas-toolbox v3  Téléchargement de cas-toolbox.X-Y.tar.gz  Copie de build.sample.properties en build.properties  Saisie de la propriété deploy.path property dans build.properties  Copie de config.sample.properties en config.properties  Configuration de config.properties (et ajout des personnalisations dans le répertoire custom)  Initialisation en lançant la commande ant init  Déploiement dans le Tomcat existant en lançant ant deploy  Lancement de Tomcat et ouverture de l'adresse http://localhost:8080/cas  Exemple de déploiement dans un Tomcat existant GT Esup Authentification, 27 juin 2014
  • 9. 05.02.2015 ESUP-Days #19 9 2008-2011 : Esup cas-toolbox v3  Interface utilisateur avec le thème Esup (v3.4.7)
  • 10. 05.02.2015 ESUP-Days #19 10 Maven WAR Overlay  Gestion locale des sources contenant seulement les dépendances, les configurations et les personnalisations spécifiques à l’établissement  Fichier pom.xml (Project Object Model) décrivant le projet, ses dépendances, les tâches automatisées…  Fichiers .java, .properties, .xml,… ajoutés ou modifiés  Attention aux déplacements de fichiers et répertoires lors des montées de version  Reconstruction du WAR à déployer dans Tomcat  A partir de la version d’origine du serveur CAS définie dans pom.xml  Avec toutes les configurations et les personnalisations en superposition (remplacement des fichiers d’origine)  Documentations associées  https://wiki.jasig.org/display/CASUM/Best+Practice+- +Setting+Up+CAS+Locally+using+the+Maven+WAR+Overlay+Method  http://jasig.github.io/cas/current/installation/Maven-Overlay-Installation.html  Principes à retenir lors du déploiement
  • 11. 05.02.2015 ESUP-Days #19 11 Maven WAR Overlay  Serveur CAS 3.4.1x  https://subversion.renater.fr/cas-toolbox/branches/cas-toolbox-new/  https://github.com/EsupPortail/cas-toolbox-new/tree/v3.4.x  Serveur CAS 3.5.x  https://github.com/UniconLabs/simple-cas-overlay-template  https://github.com/Unicon/unicon-cas-overlay  https://github.com/leleuj/cas-overlay-3.5.x  Serveur CAS 4.0.x  https://github.com/leleuj/cas-overlay-demo  https://github.com/UniconLabs/simple-cas4-overlay-template  https://github.com/EsupPortail/cas-toolbox-new/tree/v4.0.x  Exemples connus pour le serveur CAS
  • 12. 05.02.2015 ESUP-Days #19 12 Esup cas-toolbox-new v3 et v4  Possibilités offertes par le nouveau packaging  Déploiement d’un serveur CAS dans un Tomcat existant  Simplification et centralisation de la configuration  Fichier config.properties, HandlersDiscover  Pré-paramétrage des ajouts Esup  Thème, LDAP, Logging, TraceMe, Stats, BlockAttack, SAML 1.1…  A activer : Memcached, Rest, Kerberos, LPPE, Clearpass…  Pas de quickstart construite avec Ant  Possibilité d'utiliser jetty en localhost pour “tests” (envisagé)  Restructuration et simplification du projet esup cas-toolbox (J. Marchal)  https://subversion.renater.fr/cas-toolbox/branches/cas-toolbox-new/  Svn2git de la branche svn et sauvegarde sur github (L. Auxepaules) https://github.com/auxepaul/cas-toolbox-new  Packaging basé sur Maven
  • 13. 05.02.2015 ESUP-Days #19 13 Esup cas-toolbox-new v3 et v4 cas-toolbox-core (ajouts et pré-configurations propres à Esup)  src/main – java – webapp  pom.xml cas-toolbox-custom (changements de l’établissement)  src/main – webapp  pom.xml etc (guides HowTo, et exemples de « scripts ») config.sample.properties (exemple de configuration en localhost) pom.xml  Meilleure différenciation des ajouts Esup (cas-toolbox-core), des changements de l'établissement (cas-toolbox-custom)  Architecture du packaging : « Double Overlays »
  • 14. 05.02.2015 ESUP-Days #19 14 Esup cas-toolbox-new v3 et v4  git clone https://github.com/EsupPortail/cas-toolbox-new.git  git checkout v4.0.x  Copie de config.sample.properties en config.properties  Saisie de la propriété deploy.path dans config.properties  Configuration de config.properties  (Ajout des personnalisations dans le répertoire cas-toolbox-custom)  Initialisation et déploiement dans Tomcat : mvn clean package  Lancement de Tomcat et ouverture de l'adresse http://localhost:8080/cas http://localhost:8080/cas-management  Exemple de déploiement dans un Tomcat existant
  • 15. 05.02.2015 ESUP-Days #19 15 Esup cas-toolbox-new v3 et v4  Interface utilisateur avec le thème Esup
  • 16. 05.02.2015 ESUP-Days #19 16 CAS v4.0.x  Quelques nouveautés introduites par la version 4.0  Nouveau protocole CAS v3  Renvoi des attributs de l'utilisateur en plus de l'identifiant  Meilleure modularité  e.g. interface web de gestion des services séparée du serveur  Remaniement des API d'authentification  Mise à jour des dépendances  e.g. remplacement de Spring LDAP par Ldaptive  Améliorations de l’interface Utilisateur (“Responsive”)  Code non rétro-compatible avec les versions 3.x  Difficile de recopier directement certaines configurations et modifications directement d’une version 3.x vers 4.x http://jasig.github.io/cas/current/
  • 17. 05.02.2015 ESUP-Days #19 17 Démonstration du packaging Esup cas-toolbox-new v4 Packaging Esup CAS “Déploiement d’un serveur CAS”
  • 18. 05.02.2015 ESUP-Days #19 18 Démonstration  Quickstart uPortal 4.1  C:/portal  Apache Maven 3.0.4  Apache Tomcat 7.0.32  Scripts de lancement de tomcat dans apache-tomcat-7.0.32/bin – startup.bat et shutdown.bat  Java JDK 1.7  Variables d’environnement  JAVA_HOME, JAVA_OPTS, CATALINA_OPTS  Path : MAVEN_HOME%bin  Git : Github pour Windows  Environnement de demonstration sous Windows
  • 19. 05.02.2015 ESUP-Days #19 19 Démonstration  Statistiques : cas/stats.jsp  Monitoring : cas/status  Gestion des services : cas-management  Quelques pages