Страница 1 из 1

Freebsd+atlassian-jira

Добавлено: 2012-09-09 13:56:47
disp
Имеем сервер

Код: Выделить всё

CPU: Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz real memory  = 34359738368 (32768 MB)
os FreeBSD 9.1-PRERELEASE amd64
дисковый масив работает под zfs имя gw в mirror-0
создавался с помошью mfsbsd сайт http://mfsbsd.vx.sk/

задача запустить atlassian-jira
сложность: мазахистический способ выноса мозга
вероятность потерять расудок высочайшая

почему FreeBSD 9.1-PRERELEASE amd64 после очередного обновления ядра и сборки мира обнаружил 9.1 пересобирать мир и ядро не хотелось поэтому работал с ним

опции сборки ядра

Код: Выделить всё

options         NULLFS
# по желанию 
options         RACCT
options         RCTL
для jail просто решил запустить atlassian-jira в jail

создали пулы

Код: Выделить всё

zfs create gw/root/home
zfs set recordsize=16k gw/root/home
zfs create gw/root/home/jails
директории mkdir /home/jails/jira

сеть настроена следующим образом rc.conf

Код: Выделить всё

ifconfig_igb1="inet 192.168.0.247 netmask 255.255.255.0"
ifconfig_igb1_alias1="inet 192.168.0.238 netmask 255.255.255.255"
resolv.conf

Код: Выделить всё

domain uetek.local.
nameserver      127.0.0.1
dns рабоатет

Код: Выделить всё

nslookup jira.uetek.local
Name:   jira.uetek.local
Address: 192.168.0.238
собираем jail как в учебнике http://www.freebsd.org/doc/en_US.ISO885 ... build.html

Код: Выделить всё

cd /usr/src
make buildworld 
make installworld DESTDIR=/home/jails/jira
make distribution DESTDIR=/home/jails/jira
mount -t devfs devfs /home/jails/jira/dev
настройки jail для jira rc.conf

Код: Выделить всё

#jail
syslogd_flags="-ss"
jail_enable="YES"
jail_interface="igb1"
jail_devfs_enable="YES"
jail_procfs_enable="NO"
jail_set_hostname_allow="NO"
jail_list="jira"


#jail jira
jail_jira_flags="-l -U root"
jail_jira_rootdir="/home/jails/jira/"
jail_jira_hostname="jira.uetek.local"
jail_jira_interface="igb1"
jail_jira_ip="192.168.0.238"
jail_jira_exec_start="/bin/sh /etc/rc"
jail_jira_exec_stop="/bin/sh /etc/rc.shutdown"
порты проброшены через nullfs
fstab

Код: Выделить всё

/usr/ports                      /home/jails/jira/usr/ports      nullfs  rw              0       0
стотрим

Код: Выделить всё

jls
   JID  IP Address      Hostname                      Path
    14  192.168.0.238   jira.uetek.local              /home/jails/jira
заходим в jail

Код: Выделить всё

jexec 14 tcsh
эксперементы были долгими

ставим из портов /usr/ports/java/diablo-jdk16
собераем по умолчанию
версия после сборки

Код: Выделить всё

java version "1.6.0_07"
Diablo Java(TM) SE Runtime Environment (build 1.6.0_07-b02)
Diablo Java HotSpot(TM) 64-Bit Server VM (build 10.0-b23, mixed mode)
собераем /usr/ports/java/jdk16
версия после сборки

Код: Выделить всё

java version "1.6.0_03-p4"
Java(TM) SE Runtime Environment (build 1.6.0_03-p4-root_07_sep_2012_06_16-b00)
Java HotSpot(TM) 64-Bit Server VM (build 1.6.0_03-p4-root_07_sep_2012_06_16-b00, mixed mode)
не забываем поставить галочку [*] JAIL Port is being built within a jail

создаем пользователя jira и с домашней директорией /usr/local/jira
создаем директорию /usr/local/jirawww
меняем владельца директории /usr/local/jirawww на jira
ставить /usr/ports/www/tomcat6
tomcat-6.0.35
делаем хитрый маке

Код: Выделить всё

make APP_HOME=/usr/local/jirawww TOMCAT_USER=jira TOMCAT_GROUP=jira JAVA_HOME=/usr/local/jdk1.6.0  JAVA_PORT=java/jdk16  HTTP_PORT=8080
обнаруживаем что томкат поставился /usr/local/apache-tomcat-6.0/
переписываем содержимое папки в /usr/local/jirawww
не забываем изменить пользователя на jira
также помним директории endorsed/ и lib/ в оригинале /usr/local/apache-tomcat-6.0/ имеют root:wheel
также должно быть и в /usr/local/jirawww
вспоминаем что tools.jar@ -> /usr/local/diablo-jdk1.6.0/lib/tools.jar
тк jira требует https://confluence.atlassian.com/displa ... +Platforms
о FreeBSD там не слова хоть java должна соотвествовать
копируем /usr/local/jdk1.6.0/lib/tools.jar -> /usr/local/jirawww/lib/
прозреваем с файла /usr/local/etc/rc.d/tomcat6 а именно со строки java_command="/usr/local/bin/java \ ...
далее по тексту .... выдыхаем копируем tomcat6 в jira меняем в файле jira /usr/local/bin/java на /usr/local/jdk1.6.0/bin/java
аа гулять так гулять )) полностью переписываем скрипт jira для этого меняем в нем tomcat6 на jira а apache-tomcat-6.0 на jirawww убеждаемся что он работает
не забваем прописать в rc.conf

Код: Выделить всё

jira_enable="YES"
jira_user="jira"
jira_java_home="/usr/local/jdk1.6.0/"
ps -wwwfax видим что то похожее на это
daemon: /usr/local/jdk1.6.0/bin/java и это /usr/local/jdk1.6.0/bin/java..............
не забывает про это
https://confluence.atlassian.com/displa ... mit_Buffer
для этого в rc.conf дописываем
jira_java_opts="-Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true"
вспоминаем веселенькую статейка
https://confluence.atlassian.com/pages/ ... eId=191069 и еще одну
https://confluence.atlassian.com/displa ... IRA+Memory
как оказалось после покурки ето еще не все
https://answers.atlassian.com/questions ... mory-usage
рекомендации atlassian https://confluence.atlassian.com/displa ... mory-Linux
JAVA_OPTS="-Xms256m -Xmx512m -XX:MaxPermSize=256m это подойдет если вы работаете 1 если работать будет человек 5 тогда
JAVA_OPTS="-Xmx1536m -Xms1536m -XX:MaxPermSize=256m -XX:MaxNewSize=128m" выглядит так
для этого правим /usr/local/etc/rc.d/jira строчку получаем такой вид
java_command="/usr/local/jdk1.6.0/bin/java -Xmx1536m -Xms1536m -XX:MaxPermSize=256m -XX:MaxNewSize=128m \ ....."
с параметрами можно играться если есть время и желание )) если выставить сильно малые параметры то jira запускаеться но при создании базы даных java вылетает с ошибкох в логах с нехваткой памяти при этом в браузере ничего не происходит

качаем файл http://www.atlassian.com/software/jira/ ... .4-war.zip
распокавываем содержимое архива в /usr/local/jira
собираем war файл sh build.sh копируем /usr/local/jira/dist-tomcat/tomcat-6/atlassian-jira-5.1.4.war в /usr/local/jirawww/webapps переиминовывыаем atlassian-jira-5.1.4.war в jira.war проверяем владельца должно быть jira:jira
копируем /usr/local/jira/dist-tomcat/tomcat-6/jira.xml в /usr/local/jirawww/conf/Catalina/localhost
меняем в нем <Context path="/jira" docBase="/usr/local/jira/dist-tomcat/tomcat-6/atlassian-jira-5.1.4.war" debug="0" useHttpOnly="true"> на <Context path="/jira" docBase="/usr/local/jirawww/webapps/jaira.war" debug="0" useHttpOnly="true">

курим https://confluence.atlassian.com/displa ... Tomcat+6.0
качаем https://confluence.atlassian.com/downlo ... 2474277487 распаковывает архив и копируем содержание в /usr/local/jirawww/lib

пускаем jira
sh /usr/local/etc/rc.d/jira start пробуем зайти на http://jira.uetek.local:8080/jira/ видым страницы с напаминанием установить
jira home курим https://confluence.atlassian.com/displa ... +Directory
останавливаем jira sh /usr/local/etc/rc.d/jira stop
создаем директорию /usr/local/jira/jiradb/ пользователь должен быть jira:jira
привам файл /usr/local/jirawww/webapps/jira/WEB-INF/classes/jira-application.properties
в нем должно быть jira.home=/usr/local/jira/jiradb/
пускаем jira sh /usr/local/etc/rc.d/jira start заходим на http://jira.uetek.local:8080/jira/
устанавливаем с внутриней базой даных (играться с внешней сил нет) ждем мин 3-5
помним что для инсталяции jira нужен лицензиный ключ или ищем другие методы )))

после установки видим два предупреждения

Код: Выделить всё

WARNING: You are running JIRA with JVM version '1.6.0_03-p4' which is known to have a bug that affects JIRA. Please upgrade to JVM version 1.6.0 Update 18 or later
с этим мы бороться не можем и

Код: Выделить всё

You are using HSQL DB, which is an in-memory database and susceptible to corruption when abnormally terminated. DO NOT USE THIS IN A PRODUCTION SYSTEM
тут можно поставить вшению базу даных и настроить ее дя работы

мы получили работоспособную jira на freebsd осталось только ее настроить и оптимизировать

Re: Freebsd+atlassian-jira

Добавлено: 2012-09-11 22:52:44
Dark_ASU
Норм там все работает и танцев никаких не надо.
И скажите товарищь дорогой как это вы java под 64 бита то поставили?
или в 9.1 что то поменяли?

Re: Freebsd+atlassian-jira

Добавлено: 2012-09-12 11:57:33
disp
с портов ставил

Re: Freebsd+atlassian-jira

Добавлено: 2013-12-30 1:47:23
dolphik
Dark_ASU писал(а):Норм там все работает и танцев никаких не надо.
И скажите товарищь дорогой как это вы java под 64 бита то поставили?
или в 9.1 что то поменяли?
Здраствуйте, а можно поподробней как без особых плясок внедрить на FreeBSD(9.2) JIRA+Confluence ? Может есть ссилочка на гайд?