Table des matières
Installer JIRA sous Linux
Le Guide
- Télécharger le binaire JIRA
See where JIRA will be installed and the settings that will be used. Installation Directory: /opt/atlassian/jira Home Directory: /var/atlassian/application-data/jira HTTP Port: 8081 RMI Port: 8005 Install as service: Yes
Désinstallation
Installer la clé SSH
La procédure officielle de Atlassian Running JIRA over SSL or HTTPS ne prends pas en compte qu'on a déjà un certificat, par exemple un wildcard.
Ayant la clé publique host.crt
et la clé privée host.key
, on peut créer un Keystore avec ces étapes:
# openssl pkcs12 -export -in host.crt -inkey host.key > host.p12
# keytool -importkeystore -srckeystore host.p12 -destkeystore host.jks -srcstoretype pkcs12
Configuration Apache
<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName jira.yourdomain.com ServerAlias www.jira.yourdomain.com RewriteEngine On RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [R] </VirtualHost> <VirtualHost *:443> ServerAdmin webmaster@localhost ServerName jira.yourdomain.com ServerAlias www.jira.yourdomain.com SSLEngine On SSLCertificateFile /etc/apache2/ssl/yourdomain.com.pem SSLCertificateKeyFile /etc/apache2/ssl/yourdomain.com.key SSLCertificateChainFile /etc/cert/STAR_yourdomain_com.ca-bundle SSLProxyEngine on ProxyPass / https://localhost:8443/ ProxyPassReverse / https://localhost:8443/ ProxyPreserveHost On #DocumentRoot /home/www/ ErrorLog /var/log/apache2/jira.yourdomain.com-error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/jira.yourdomain.com-access.log combined ServerSignature On </VirtualHost>
À partir d'Apache version 2.4+, il faut ajouter ceci dans le fichier .conf
du site:
SSLProxyEngine on SSLProxyVerify none SSLProxyCheckPeerCN off SSLProxyCheckPeerName off SSLProxyCheckPeerExpire off
Migration de serveur à serveur
Pour migrer JIRA sur un autre serveur, voici la procédure :
- Sur le serveur source :
- Faire un backup de la base de données (ex : dump SQL avec données) :
mysqldump --opt -u [user] -p[pass] jiradb > ~/jiradb.sql
- Faire une exportation des données JIRA : Dans JIRA, aller dans Administration → Système → Import / Export et faire l'exportation. Ceci créera un ZIP dans
/var/atlassian/application-data/jira/export
. - Arrêter JIRA :
/opt/atlassian/jira/bin/stop-jira.sh
- Faire un backup (fichier ZIP) du répertoire JIRA HOME
/var/atlassian/application-data/jira
.cd /var/atlassian/application-data/jira tar -czf ~/jira-home.tar.gz ./*
- Compresser les fichiers du répertoire d'installation de JIRA:
cd /opt/atlassian/jira tar -czf ~/jira-install.tar.gz ./*
- Si Reverse Proxy avec Apache, copier le fichier de configuration du site.
- Copier ces deux fichiers pour les transférer sur le serveur cible.
- Sur le serveur cible :
- Importer les données SQL sur MySQL à l'aide du fichier créé à l'étape 1a.
- Créer le répertoire
/Applications/JIRA
et décompresser le fichier contenant l'application JIRA. - Créer le répertoire
/Applications/JIRA/HOME
et y mettre les données du fichier compressé du créé à l'étape 1c. - Faire la configuration voulue de JIRA comme indiqué dans la procédure d'installation (JIRA_HOME, JAVA_HOME, server port, jira-application.properties).
- Aller sur la page de l'application (ex : http://localhost:8989/)
- Entrer les informations pour les paramètres de base
- Dans la deuxième étape, on offre le choix d'importer les données, utilisez cette option.
- Importer les données ZIP qui ont été créés à l'étape 1b.
- Ceci devrait compléter la procédure de migration.
Sur le serveur cible
- Décompresser le fichier d'application :
mkdir -p /opt/atlassian/jira cd /opt/atlassian/jira tar xzf jira-install.tar.gz .
- Décompresser les fichiers JIRA_HOME :
mkdir -p /var/atlassian/application-data/jira cd /var/atlassian/application-data/jira tar xzf jira-home.tar.gz .
- Créer la base de données :
mysql -h localhost -u [user] -p[password] mysql> CREATE DATABASE jiradb CHARACTER SET utf8 COLLATE utf8_bin;
- Créer l'utilisateur selon ce qui est dans
dbconfig.xml
(ce fichier ce trouve dans le répertoire racine du JIRA_HOME):mysql> CREATE USER jirauser IDENTIFIED BY 'password'; mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER,INDEX on jiradb.* TO 'jirauser'@'localhost' IDENTIFIED BY 'password'; mysql> FLUSH PRIVILEGES;
- Mettre le pilote MySQL (
mysql-connector-java-5.1.24-bin.jar
) dans/opt/atlassian/jira/lib
s'il n'existe pas. - Démarrer JIRA et aller sur l'application. Suivre les instructions, entrer le numéro de licence, etc.
- Copier le fichier backup dans
/var/atlassian/application-data/jira/import
et récupérer ce backup dans JIRA (Administration → System) - Une fois récupéré, JIRA va kicker-out le user. Se relogguer et les projets devraient apparaître.
- Réparer les permissions de fichiers ? (au redémarrage de JIRA, les images sont ok)
- Faire en sorte que JIRA démarre automatiquement quand le serveur redémarre.
Mise à jour de JIRA 7.0
La mise à jour s'est bien effectuée, sauf pour le HTTPS. En modifiant le server.xml
pour décommenter le connector 8443, ça n'a pas fonctionné, JIRA n'écoutait pas sur le port 8443. J'ai voulu utiliser config.sh
, mais j'ai dû upgrader Java de 1.7 à 1.8 1) pour démarrer le config.sh
.
J'ai spécifié le Keystore Path et Key alias dans la configuration et en redémarrant JIRA, le port 8443 est écouté.
Mise à jour de JIRA 7.1.2
- Encore la configuration SSL qui a été écrasée, il a fallut la reconfigurer.
- JIRA 7.1.x requiert que la collation de MySQL soit utf8-bin. Suivre cette procédure.
Historique des mises à jour de JIRA
Version de JIRA : System → Troubleshooting and Support → System Info
Date | Version antérieure | Version installée | Type d'opération |
---|---|---|---|
20130715 | 5.2.11 | 6.0.4 | Mise à jour, + achat nouvelle licence |
20130424 | 5.1.8 | 5.2.11 | Mise à jour |