Sidehistorik
...
Hardware: At least 2 CPU's and at least 3 GB Ram
Mysql Settings
Preferred Database: MySQL (or Postgres)
...
Kodeblok | ||
---|---|---|
| ||
[mysqld] transaction#transaction-isolation = READ-COMMITTED (Seems obsolete with binlog_format=row) log-bin=mysql-bin binlog_format=row default-table-type=innodb default-storage-engine=innodb max_allowed_packet=32M64M [mysql] default-character-set=utf8 |
...
Kodeblok | ||
---|---|---|
| ||
[mysqld] innodb_lock_wait_timeout = 300 |
SMTP Access for sending mail
IMAP Access for picking up mail
Installation
Prepare database
Create the Database
Kodeblok |
---|
mysql> createCREATE databaseDATABASE jira CHARACTER SET utf8 COLLATE utf8_bin; mysql> grant all privilegesGRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER,INDEX on jira.* to jira@localhost identified by '*******'; Query OK, 0 rows affected (0.00 sec) |
Install binaries
Download JIRA from http://www.atlassian.com/software/jira/download
Download the MySQL JDBC from http://dev.mysql.com/downloads/connector/j/
For the binary installer, JAVA is integrated, for EAR or WAR files this must be downloaded and installed separately.
Kodeblok |
---|
sh ./atlassian-confluencejira-56.1.15-x64.bin |
Follow the required steps (remember path to JIRA_HomeInstall and JIRA_DataHome) and connect to the tomcat instance started
Advarsel |
---|
Configuration should (if possible) be done directly at the host:8080 - going through a proxy or trafficmanager add a risk that pages time out, leaving the JIRA server (and the client) in an unknown state |
Postinstall
This is where the tweaking comes into place, to avoid common problems:
setenv.sh
This file is found in the JIRA_HomeInstall/bin
Add support for UTF-8 File system by adding -Dfile.encoding=UTF-8 to the JAVA_OPTS:
Kodeblok |
---|
JAVA_OPTS="-Xms1024m -Xmx1024m -XX:MaxPermSize=512m $JAVA_OPTS -Djava.awt.headless=true -XX:NewSize=512m -Dfile.encoding=UTF-8" export JAVA_OPTS |
...
server.xml
This file is found in JIRA_HomeInstall/conf
Binding to a fixed IP Address, add the address= to the connector. Also the port= can be changed (Under Linux only root can bind to 0-1023):
...
If behind a traffic Manager or Apache Proxy, add scheme=, proxyName= and proxyPort to the context (See Apache2 Proxy Passing or Proxy Passing section belov):
...
There are good reasons for using an Apache or Traffic Manager in fron front of the Confluence Installation, some are:
- No port changing (non-root users can assign to ports below 1024)
- Use of URL Rewrite
- Use of URL Blocking
- Use of Allow/Denial
- SSL offloading/handling outside the Confluence
Se my example in Apache2 Proxy Passing
Time And Date Setup
Time and Date should be set up 2 places according to
...
Kodeblok |
---|
Time Format HH:mm Day Format dd-MM-yyyy HH:mmdd-MM-yyyy Complete Date/Time Format dd-MM-yyyy HH:mm Day/Month/Year Format dd-MM-yyyy jira.date.picker.java.format dd-MM-yyyy jira.date.picker.javascript.format %d-%m-%Y jira.date.time.picker.java.format dd-MM-yyyy HH:mm jira.date.time.picker.javascript.format %d-%m-%Y %H:%M |
Performace inprovement
For setenv.sh (Reference: https://answers.atlassian.com/questions/327828/tomcat-uses-100-cpu-after-jira-upgrade)
Kodeblok |
---|
-Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true
-Dmail.mime.decodeparameters=true |
Logfiles
Logrotate
Set up logrotate to avoid ever growing catalina.out log file. Here JIRA_Home is /opt/jira, logs are rotated daily and keept kept for 7 days:
Kodeblok | ||
---|---|---|
| ||
/opt/jira/logs/catalina.out { daily rotate 7 compress copytruncate delaycompress missingok size 10M notifempty } |