Introduction
Avec plus de 35 000 clients dans le monde, la solution de gestion de projet JIRA Software est essentielle pour développer et gérer les meilleurs logiciels du marché.
S'adressant aux développeurs Agile de tout niveau, cet outil de gestion permet de planifier, suivre et livrer les développements rapidement et simplement.
Des fonctionnalités adaptées à l'agilité
- Planification flexible avec Scrum, Kanban, ou métholodie mixte
- Estimations précises personnalisables selon vos besoins
- Hiérarchisation et priorisations par glisser-déposer
- Reporting pour une meilleure communication et gestion du projet
Un outil de gestion évolutif
- Plus de 1000 extensions sont compatibles avec JIRA telles que Zephyr, Tempo Timesheet…
- JIRA Software est également compatible avec une centaines d'outils de développement tels que Confluence, Bitbucket ou encore HipChat.
Plateforme supportée
Cette section décrit les logiciels supplémentaires et l'infrastructure dont vous aurez besoin pour exécuter Jira Service Desk. Veuillez vérifier ces informations avant d’installer Jira Service Desk.
Navigateur web :
- Microsoft Edge
- Chrome
- Firefox
- Safari (Mac only)
Système d'exploitation :
- Microsoft Windows
- Linux
Base de donnée :
PostgreSQL:
- PostgreSQL 10
- PostgreSQL 9.6
MySQL:
- MySQL 5.7
Oracle:
- Oracle 19c
- Oracle 18c
- Oracle 12c Release 2
Microsoft SQL Server:
- SQL Server 2016
- SQL Server 2017
- Azure SQL
Déploiement de Jira Software
Déploiement du binaire
Pour le déploiement de Jira Software, nous allons récupérer le binaire d'installation depuis le site d'Atlassian.
# wget https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-8.6.0-x64.bin --2019-12-20 00:56:44-- https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-8.6.0-x64.bin Résolution de www.atlassian.com (www.atlassian.com)… 18.184.99.149, 18.184.99.150, 18.184.99.151 Connexion à www.atlassian.com (www.atlassian.com)|18.184.99.149|:443… connecté. requête HTTP transmise, en attente de la réponse… 301 Moved Permanently Emplacement : https://product-downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-8.6.0-x64.bin [suivant] --2019-12-22 18:15:13-- https://product-downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-8.6.0-x64.bin Résolution de product-downloads.atlassian.com (product-downloads.atlassian.com)… 2600:9000:21d7:d800:1f:ab86:b4a:17e1, 2600:9000:21d7:6800:1f:ab86:b4a:17e1, 2600:9000:21d7:1200:1f:ab86:b4a:17e1, ... Connexion à product-downloads.atlassian.com (product-downloads.atlassian.com)|2600:9000:21d7:d800:1f:ab86:b4a:17e1|:443… connecté. requête HTTP transmise, en attente de la réponse… 200 OK Taille : 392354762 (374M) [application/octet-stream] Sauvegarde en : « atlassian-jira-software-8.6.0-x64.bin » atlassian-jira-software-8.6.0-x 100%[======================================================>] 374,18M 1,88MB/s ds 3m 55s 2019-12-22 18:19:08 (1,60 MB/s) — « atlassian-jira-software-8.6.0-x64.bin » sauvegardé [392354762/392354762]
Une fois le binaire récupéré, on modifie les droits sur celui-ci et on lance l'installation :
# chmod +x atlassian-jira-software-8.6.0-x64.bin # ./atlassian-jira-software-8.6.0-x64.bin We couldn't find fontconfig, which is required to use OpenJDK. Press [y, Enter] to install it. For more info, see https://confluence.atlassian.com/x/PRCEOQ y Installing fontconfig... Atteint :1 http://security.debian.org/debian-security buster/updates InRelease Atteint :2 http://deb.debian.org/debian buster InRelease Atteint :3 http://deb.debian.org/debian buster-updates InRelease Lecture des listes de paquets... Fait Construction de l'arbre des dépendances Lecture des informations d'état... Fait Tous les paquets sont à jour. Lecture des listes de paquets... Fait Construction de l'arbre des dépendances Lecture des informations d'état... Fait Les paquets supplémentaires suivants seront installés : fontconfig-config fonts-dejavu-core libfontconfig1 Les NOUVEAUX paquets suivants seront installés : fontconfig fontconfig-config fonts-dejavu-core libfontconfig1 0 mis à jour, 4 nouvellement installés, 0 à enlever et 0 non mis à jour. Il est nécessaire de prendre 2 100 ko dans les archives. Après cette opération, 4 603 ko d'espace disque supplémentaires seront utilisés. Réception de :1 http://deb.debian.org/debian buster/main amd64 fonts-dejavu-core all 2.37-1 [1 068 kB] Réception de :2 http://deb.debian.org/debian buster/main amd64 fontconfig-config all 2.13.1-2 [280 kB] Réception de :3 http://deb.debian.org/debian buster/main amd64 libfontconfig1 amd64 2.13.1-2 [346 kB] Réception de :4 http://deb.debian.org/debian buster/main amd64 fontconfig amd64 2.13.1-2 [405 kB] 2 100 ko réceptionnés en 1s (1 437 ko/s) Préconfiguration des paquets... Sélection du paquet fonts-dejavu-core précédemment désélectionné. (Lecture de la base de données... 28747 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../fonts-dejavu-core_2.37-1_all.deb ... Dépaquetage de fonts-dejavu-core (2.37-1) ... Sélection du paquet fontconfig-config précédemment désélectionné. Préparation du dépaquetage de .../fontconfig-config_2.13.1-2_all.deb ... Dépaquetage de fontconfig-config (2.13.1-2) ... Sélection du paquet libfontconfig1:amd64 précédemment désélectionné. Préparation du dépaquetage de .../libfontconfig1_2.13.1-2_amd64.deb ... Dépaquetage de libfontconfig1:amd64 (2.13.1-2) ... Sélection du paquet fontconfig précédemment désélectionné. Préparation du dépaquetage de .../fontconfig_2.13.1-2_amd64.deb ... Dépaquetage de fontconfig (2.13.1-2) ... Paramétrage de fonts-dejavu-core (2.37-1) ... Paramétrage de fontconfig-config (2.13.1-2) ... Paramétrage de libfontconfig1:amd64 (2.13.1-2) ... Paramétrage de fontconfig (2.13.1-2) ... Regenerating fonts cache... done. Traitement des actions différées (« triggers ») pour man-db (2.8.5-2) ... Traitement des actions différées (« triggers ») pour libc-bin (2.28-10) ... Unpacking JRE ... Starting Installer ... This will install Jira Software 8.6.0 on your computer. OK [o, Enter], Cancel [c] o Click Next to continue, or Cancel to exit Setup. Choose the appropriate installation or upgrade option. Please choose one of the following: Express Install (use default settings) [1], Custom Install (recommended for advanced users) [2, Enter], Upgrade an existing Jira installation [3] 2 Select the folder where you would like Jira Software to be installed. Where should Jira Software be installed? [/opt/atlassian/jira] Default location for Jira Software data [/var/atlassian/application-data/jira] Configure which ports Jira Software will use. Jira requires two TCP ports that are not being used by any other applications on this machine. The HTTP port is where you will access Jira through your browser. The Control port is used to startup and shutdown Jira. Use default ports (HTTP: 8080, Control: 8005) - Recommended [1, Enter], Set custom value for HTTP and Control ports [2] 1 Jira can be run in the background. You may choose to run Jira as a service, which means it will start automatically whenever the computer restarts. Install Jira as Service? Yes [y, Enter], No [n] y Details on where Jira Software will be installed and the settings that will be used. Installation Directory: /opt/atlassian/jira Home Directory: /var/atlassian/application-data/jira HTTP Port: 8080 RMI Port: 8005 Install as service: Yes Install [i, Enter], Exit [e] i Extracting files ... Please wait a few moments while Jira Software is configured. Installation of Jira Software 8.6.0 is complete Start Jira Software 8.6.0 now? Yes [y, Enter], No [n] y Please wait a few moments while Jira Software starts up. Launching Jira Software ... Installation of Jira Software 8.6.0 is complete Your installation of Jira Software 8.6.0 is now ready and can be accessed via your browser. Jira Software 8.6.0 can be accessed at http://localhost:8080 Finishing installation ...
Déploiement MySQL Connector Java
Arrivé à cette étape, nous allons récupérer le mysql-connector-java depuis le site officiel MySQL pour pouvoir connecter notre plateforme Atlassian Jira Service Desk à la base de donnée AWS RDS MySQL
Ici on télécharge la dernière version stable à date (5.1.48)
# wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.48.tar.gz
On décompresser notre archive
# tar xvzf mysql-connector-java-5.1.48.tar.gz
On copie la “java lib” dans notre arborescence d'installation confluence (/opt/atlassian/jira/lib/)
# cp mysql-connector-java-5.1.48/mysql-connector-java-5.1.48.jar /opt/atlassian/jira/lib/
On relance jira et on continue le déploiement de la solution.
Configuration Post-Install
Une fois Jira Software installé, il faudra se rendre sur l'URL (http://IP_du_server:8080) ou FQDN (https://projet.<DOMAIN>.org)
Nous souhaitons déployer Jira Software dans un environnement de production, nous choisissons donc l'option : “je me charge de la configuration”. Cliquez sur “Suivant”
Nous allons renseigner les informations de connexion à la base de donnée. cliquez sur “Suivant”
Choisissez un titre (exemple JIRA) et cliquez sur “Suivant”
Entrer la clé de licence du produit, cliquez sur “Suivant”
Création du compte administrateur de la plateforme, cliquez sur “Suivant”
Nous configurerons plus tard la partie SMTP, cliquez sur “Suivant”
Choisissez la langue “Français”, cliquez sur “Suivant”
On ne choisis pas d'avatar, cliquez sur “Suivant”
L'installation de la plateforme Jira Software est terminée.
Exécutez Jira Software en tant que service systemd
Nativement, lorsque l'on installe la plateforme Jira Software, nous ne disposons pas du service systemd.
Nous allons mettre en place celui-ci rapidement.
Tout d'abord, nous allons arrêter le service.
# /opt/atlassian/jira/bin/stop-jira.sh
Maintenant, nous allons créer une entrée pour systemd.
# touch /lib/systemd/system/jira.service # chmod 664 /lib/systemd/system/jira.service
Éditer l'entrée.
# vi /lib/systemd/system/jira.service
Contenu du fichier “.service”. Faire attention à l'emplacement ou se trouve le produit.
[Unit] Description=Jira Software After=network.target [Service] Type=forking User=jira PIDFile=/opt/atlassian/jira/work/catalina.pid ExecStart=/opt/atlassian/jira/bin/start-jira.sh ExecStop=/opt/atlassian/jira/bin/stop-jira.sh TimeoutSec=200 LimitNOFILE=2048 LimitNPROC=2048 [Install] WantedBy=multi-user.target
On recharge systemd, active le démarrage automatique et on peut maintenant relancer le service via systemd.
# systemctl daemon-reload # systemctl enable jira.service # systemctl start jira.service # systemctl status jira.service
Reverse proxy sous Nginx
Nous allons déployer devant Jira Software un reverse-proxy sous nginx. Les certificats (SSL/TLS) du client seront portés par celui-ci.
Pour rappel, le serveur web nginx sera déployé sur la même instance hébergeant la solution Atlassian Jira Software.
Installation de nginx
On installe le package nginx
# apt install nginx
Configuration du vhost Jira Software
Nous allons également spécifier nos propres paramètres d'échange de clés Diffie-Hellman (DH).
# openssl dhparam -out /etc/nginx/dhparam.pem 2048
Création du virtualhost pour la solution Atlassian Jira Software
# nano /etc/nginx/sites-available/projet #------------------------------------------------------------------- COPY / PASTE server { listen 80; server_name projet.<DOMAIN>.org; root /space/www; access_log /var/logs/nginx/projet.access.log; error_log /var/logs/nginx/projet.errors.log; return 301 https://$host$request_uri; } server { listen 443; server_name projet.<DOMAIN>.org; ssl on; ssl_prefer_server_ciphers on; ssl_protocols TLSv1.2; ssl_session_cache builtin:1000 shared:SSL:10m; ssl_ciphers EECDH+AESGCM:EDH+AESGCM; ssl_ecdh_curve secp384r1; ssl_session_timeout 10m; ssl_session_cache shared:SSL:10m; ssl_session_tickets off; ssl_stapling on; ssl_stapling_verify on; ssl_dhparam /etc/nginx/dhparam.pem; ssl_certificate /etc/ssl/private/rdc.pem; ssl_certificate_key /etc/ssl/private/rdc.key; add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"; add_header X-Content-Type-Options nosniff; add_header X-XSS-Protection "1; mode=block"; access_log /var/logs/nginx/projet.access.log; error_log /var/logs/nginx/projet.errors.log; location / { client_max_body_size 100m; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://localhost:8080/; } }
On créer le lien pour activer le vhost
# cd /etc/nginx/sites-enabled/ # ln -s /etc/nginx/sites-available/projet
On vérifie la configuration
# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
On redémarre nginx
# systemctl restart nginx
Reconfiguration de Jira Software
Une fois notre reverse proxy sous nginx déployé, il faudra reparamétrer Jira Software.
Editer le fichier “server.xml” et définir le FQDN et le protocol
# nano /opt/atlassian/jira/conf/server.xml
Commenter le paragraphe suivant :
<!-- <Connector port="8080" relaxedPathChars="[]|" relaxedQueryChars="[]|{}^\`"<>" maxThreads="150" minSpareThreads="25" connectionTimeout="20000" enableLookups="false" maxHttpHeaderSize="8192" protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443" acceptCount="100" disableUploadTimeout="true" bindOnInit="false"/> -->
Et dé-commenter celui-ci, en définissant le paramètre “proxyName”.
<Connector port="8080" relaxedPathChars="[]|" relaxedQueryChars="[]|{}^\`"<>" maxThreads="150" minSpareThreads="25" connectionTimeout="20000" enableLookups="false" maxHttpHeaderSize="8192" protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443" acceptCount="100" disableUploadTimeout="true" bindOnInit="false" secure="true" scheme="https" proxyName="projet.<DOMAIN>.org" proxyPort="443"/>
Administration de la plateforme
Allocation mémoire
Par défaut, la configuration de confluence n'alloue que 2Go de ram à celui-ci. Il peut être nécessaire d'augmenter les ressources mémoire pour que le produit soit plus fluide.
Éditer le fichier “setenv.sh” et augmenter les valeurs “-Xms” et “-Xmx”
# nano /opt/atlassian/jira/bin/setenv.sh
Exemple pour allouer 4go de RAM.
Remplacer :
Note:
JVM_MINIMUM_MEMORY=“384m”
JVM_MAXIMUM_MEMORY=“2048m”
Par :
Note:
JVM_MINIMUM_MEMORY=“1024m”
JVM_MAXIMUM_MEMORY=“4096m”
Il faudra par la suite faire un arrêt/relance de la plateforme pour la prise en compte des nouveaux paramètres de la JVM.