Как я ставил Jira datacenter локально


Дисклеймер:

Все описанные ниже шаги позволяют настроить Jira Datacenter локально на Mac Os. В целом для Linux и Windows систем мало что будет отличаться, но возможны и существенные отличия. Таким образом описанный гайд не претендует на звание кроссплатформенной инструкции для настройки Jira Datacenter  — за оной вы можете обратиться к официальным гайдам atlassian. Ссылки на них… а вот они прямо внизу….

Ссылки на официальные гайды:

Устанавливаем соединение между  mysql и  Jira (https://confluence.atlassian.com/adminjiraserver/connecting-jira-applications-to-mysql-938846854.html)

Устанавливаем и настраиваем Jira datacenter v1(https://developer.atlassian.com/server/jira/platform/configuring-a-jira-cluster/)

Устанавливаем и настраиваем  Jira datacenter v2 (https://confluence.atlassian.com/adminjiraserver/installing-jira-data-center-938846870.html)

Настройка  Apache как reverse proxy для Atlassian приложений (https://confluence.atlassian.com/kb/proxying-atlassian-server-applications-with-apache-http-server-mod_proxy_http-806032611.html)

Возможно есть какие-то ещё о которых я подзабыл, но вроде этого должно хватить.

Интересный факт: почему то ни в одном этом гайде нету ни слова про  Mac Os

Нам понадобится:

  • MySQL Community Server + MySQL java connector
  • Apache
  • Jira Software Server

Что по версиям:

  • MySQL Java Connector
    Тут атлассиан рекомендует именно версию 5.1 —  (https://dev.mysql.com/downloads/connector/j/5.1.html)
    Если коротко говорить про совместимость connector-а с версиями  MySQL  — то на сайте mysql (https://dev.mysql.com/doc/connector-j/8.0/en/connector-j-versions.html) можно найти вот такую табличку
  • MySQL Community Server
    Соответственно качаем подходящую версию MySQL Server-a, лично у меня стоит 5.7.24 (https://dev.mysql.com/downloads/mysql/5.7.html#downloads)
  • Apache
    Версия Apache как я понял из гайдов рекомендуется в диапазоне от 2.2  до 2.4 у меня стоит:

    Server built:   Nov  8 2018 08:14:31

    Server version: Apache/2.4.37 (Unix)

    При установке  Apache я пользовался инструкциями описанными на этом сайте(https://getgrav.org/blog/macos-mojave-apache-multiple-php-versions). В целом сама установка выливается в одну команду brew install httpd в терминале, если в системе установлен Homebrew.

  • Jira Software Server

    Я устанавливал последнюю доступную тогда для скачивания версию 7.12.3 (https://ru.atlassian.com/software/jira/download)

Процесс установки всего нужного

В общем весь процесс установки всего что нам нужно можно описать следующими большими шагами:

  1. Поднять  mysql  у себя на локальной машине и создать в ней базу данных в которую будет обращаться джира
  2. Поставить просто локальную версию Jira  и глянуть что она поднимается с  Mysql БД а не с H2( в целом этот шаг можно пропустить)
  3. Настроить Apache  как  reverse proxy  + load balancer на 80 порту и сказать ему на какие порты кидать коннект(проверить зайдя на  localhost:80 если не поднимать никаких нод джиры должно вывестить http 503 error) .
  4. Настроить обе ноды джиры.
  5. Поднять первую ноду джиры (идем на localhost:80 попадаем на localhost:80/secure/Dashboard  первой ноды ). Первые 2-3 минуты пока джира будет подниматься на localhost-е будет все тот же 503 error.(Чтобы проверить что нода не упала пока поднималась  — смотрим логи)
  6. Поднять вторую ноду джиры и проверить что обе ноды синхронизировались (создаем таск на одной ноде, видим его создание на другой и т.д и т.п)
  7. На всякий случай проверяем, что если вручную отрубить одну ноду, апач автоматом при переходе на localhost:80 перекинет нас на другую (этот шаг тоже можно пропустить)

Хинты : переключаемся между обоими нодами вручную изменяя порт в Url-e. Например я был на localhost:80/secure/Dashboard.jspa  и видел что узел на котором я сейчас это node1(внизу странички подписано). Чтобы попасть на вторую ноду я меняю URL на localhost:8081/secure/Dashboard после чего перейдя опять на localhost:80  буду видеть что я на node2. Обратно — аналогично, при этом стоит учесть что если работать с  datacenter-ом через вручную прописанный порт (8080 , 8081) то  Dashboard  не будет нормально грузится. Для этого переключившись между нодами(перейдя по одному из уже вручную прописанных URL-ов) снова идем на 80 порт , тогда все будет работать нормально.  Сам же узел в течении работы с ним по 80 порту — не поменяется(если только один из Jira инстансов не упадет).

А теперь более детально и по шагам установка и настройка

Часть 1 (Отрицание)

Качаем mysql и устанавливаем его, у него обычно есть gui который можно найти через Spotlight набрав в строке что-то вроде  mysql  —  все что в нем есть это включение и выключение самой СУБД, в моей версии например  тут вообще только одна кнопка (start/stop mysql). Нажимаем stop mysql  — поскольку прежде чем запускать нам надо его настроить. Чтобы понять где на маке лежит файл с настройками mysql делаем в консоли:  mysql —help | grep cnf

Мне выдает что-то вроде:

order of preference, my.cnf, $MYSQL_TCP_PORT,

/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf

Пути которые написаны в нижней строчке как раз и есть пути к нашим файлам конфигурации — лично у меня ни одного из этих файлов НЕТУ в системе по таким путям вообще. Поскольку как сказано тут (https://stackoverflow.com/questions/10757169/location-of-my-cnf-file-on-macos) — так и должно быть. Увы и ах, но нам все-таки нужно дополнительно настроить mysql, поэтому мы создаем по одному из этих путей нужный файл. Я создавал /etc/my.cnf и дописываем туда

[mysqld]
character-set-server = utf8
collation-server = utf8_bin
default-storage-engine = INNODB
max_allowed_packet = 256M
innodb_log_file_size = 2GB
transaction-isolation = READ-COMMITTED

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Также в официальном гайде просят отключить
// remove this if it exists sql_mode = NO_AUTO_VALUE_ON_ZERO
У меня он включен не был (посмотреть это можно зайдя в mysql(как это сделать написано 3-мя строчками ниже) и  выполнив  SHOW VARIABLES; ). 

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

Далее после настройки вновь запускаем mysql в desktop gui (start mysql) и заходим от root-a .

mysql -u root -p (если на root-е пароля нет, то -p можно опустить)

На всякий случай делаем  SHOW VARIABLES; и проверяем, что наши настройки были найдены и применены =)

После того как мы убедилсь, что mysql правильно настроен , создаем БД для джиры

CREATE DATABASE jiradb CHARACTER SET utf8 COLLATE utf8_bin;
(здесь jiradb - название базы данных для джиры)

Потом для MySQL 5.5, MySQL 5.6, and MySQL 5.7.0 to MySQL 5.7.5 делаем:

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER,INDEX on <JIRADB>.* TO '<USERNAME>'@'<JIRA_SERVER_HOSTNAME>' IDENTIFIED BY '<PASSWORD>';

flush privileges;

Для MySQL 5.7.6 и выше делаем:

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,ALTER,INDEX on <JIRADB>.* TO '<USERNAME>'@'<JIRA_SERVER_HOSTNAME>' IDENTIFIED BY '<PASSWORD>';

flush privileges;

Тут в целом все вроде ясно и не должно вызвать никаких проблем.

Чтобы проверить, что все это работает можно запустить 1 инстанс джиры настроить его для работы с  mysql и запустить.

Далее не обязательная часть проверки, можете смело переходить к части 2.

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Чтобы сделать это нужно распаковать архив с загруженной сервер версией джиры из папки  и запустить ./bin/config.sh  —  вылезет окошко для конфигурации джира инстанса.

Вкладка  JIRA Home

Тут мы указываем так называемый  JIRA Home — папку в которой запущенный джира инстанс будет хранить все файлы которые появляются у него во время выполнения — логи, плагины, кэши, конфигурацию подключения к базе данных

Вкладка Database

Тут мы указываем параметры подключения к базе данных(выбираем  mysql пишем localhost отсавляем дефолтный порт(3306) пишем название нашей созданной в mysql базы данных для джиры (jiradb в примере выше) , пишем username подключения для джиры ( у меня это jira_usr, мы создавали его второй командой в mysql ) и пишем его пароль, после этого данное подключение можно протестировать прямо из desktop gui настроек ( по крайней мере у меня такая кнопка есть — называется она test connection) .

Вкладка  Web Server

Тут указываются Control и Http порты для джиры  по дефолту 8005 и 8080 — можно оставить такие значения  и тип соединения http only

Вкладка  Advanced

А она нам не нужна

Далее нажимаем save settings и возвращаемся в консоль, делаем из папки bin ./start-jira.sh — и идем в браузер на localhost:8080  где уже стартует джира =)

Если что-то пошло не по плану то все логи можно найти в JIRA_HOME/log/atlassian-jira.log ( JIRA_HOME указывали при настройке, также в папке log лежат и другие логи — естественно).

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

Часть 2 (Гнев)

Теперь требуется настроить Apache

Как уже было сказано выше, я пользовался Homebrew , так что делаем:  brew install httpd

После установки, можно запустить Apache  и проверить что все установлено верно : apachectl -k start.  На  localhost:8080 должны увидеть приветственную надпись апача(It Works !)

Далее   выключаем апач: apachectl -k stop 

Приступаем к настройке: для конфигурации нам потребуется отредактировать файл httpd.conf его местоположение может отличаться на разных системах и при разных способах установки, насколько я понял homebrew кладет его в /usr/local/etc/httpd/httpd.conf ( по крайней мере у меня путь именно такой)

В файле httpd.conf  нам потребуется поменять строчку  Listen 8080  на Listen 80  , чтобы апач запускался на 80 порту, затем в свойстве DocumentRoot «/usr/local/var/www» задать свой собственный путь до файлов которые апач будет отдавать у меня это DocumentRoot «/Users/d.udovichenko/Documents/apache_dir» , также потребуется поменять содержимое строчки <Directory >  у меня это <Directory /Users/d.udovichenko/Documents/apache_dir>. Внтури блока <Directory> будет свойство AllowOverride   эта свойство должно выглядеть так  AllowOverride All

Также нам понадобится включить модуль  LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so — обычно эта строчка закоменчена  в таком случае комментарий надо снять.

Также в файле ищем свойства

User your_user 

Group staff

У меня они превращаются в

User d.udovichenko 

Group staff

Свойство ServerName localhost надо раскомментить  и оно должно указывать на localhost.

Далее нужно раскомментировать некоторое количество количество загрузок модулей =)

LoadModule proxy_module lib/httpd/modules/mod_proxy.so
LoadModule proxy_connect_module lib/httpd/modules/mod_proxy_connect.so 
LoadModule proxy_http_module lib/httpd/modules/mod_proxy_http.so 
LoadModule proxy_balancer_module lib/httpd/modules/mod_proxy_balancer.so
LoadModule slotmem_shm_module lib/httpd/modules/mod_slotmem_shm.so
LoadModule lbmethod_byrequests_module lib/httpd/modules/mod_lbmethod_byrequests.so

 

И наконец в самый конец файла httpd.conf добавить

<VirtualHost *:80>
        ProxyRequests off

        ServerName MyCompanyServer

        <Proxy balancer://jiracluster>
                # Jira node 1
                BalancerMember http://jira1.internal.atlassian.com:8080 route=node1
                # Jira node 2
                BalancerMember http://jira2.internal.atlassian.com:8080 route=node2

                # Security "we aren't blocking anyone but this the place to make those changes
                Order Deny,Allow
                Deny from none
                Allow from all

                # Load Balancer Settings
                # We are not really balancing anything in this setup, but need to configure this
                ProxySet lbmethod=byrequests
                ProxySet stickysession=JSESSIONID
        </Proxy>

        # Here's how to enable the load balancer's management UI if desired
        <Location /balancer-manager>
                SetHandler balancer-manager

                # You SHOULD CHANGE THIS to only allow trusted ips to use the manager 
                Order deny,allow
                Allow from all
        </Location>

        # Don't reverse-proxy requests to the management UI
        ProxyPass /balancer-manager !
        # Reverse proxy all other requests to the Jira cluster
        ProxyPass / balancer://jiracluster/
        ProxyPreserveHost on
</VirtualHost>

 

Заменив в нем

BalancerMember http://jira1.internal.atlassian.com:8080 route=node1

 

и

BalancerMember http://jira2.internal.atlassian.com:8080 route=node2

 

на свои пути

У меня это:

# JIRA node 1
BalancerMember http://localhost:8080 route=node1
# JIRA node 2
BalancerMember http://localhost:8081 route=node2

 

После этого нужно сохранить изменения в файл , перезапустить апач : apachectl -k start  и пойти на localhost:80 

Там, как и было написано выше, должно вывестись сообщение HTTP 503 service unavailable (джира узлы то мы ещё не подняли )

P.S.

Казалось бы, ну что тут может пойти не так? ¯ \ _ (ツ) _ / ¯  Но если все-таки что-то пошло не так, то на вопрос о том, что же все-таки случилось с апачом при старте нам поможет ответить лог и гугл. У меня лог лежит по пути: /usr/local/var/log/httpd/error_log

Часть 3 (Торг)

Далее требуется настроить обе ноды джиры.

На данный момент у нас имеется запущенный: серевер апача на 80 порту, который ждет, что к нему придут на 80 порт и он перенаправит пользователя на один из 2 портов(8080 и 8081 в моем случае). Следовательно, нам требуется настроить две ноды Jira так чтобы они поднимались на этих портах. У нас имеется папка полученная распаковыванием архива с  Jira server 7.12.3.tar( в моем случае)

Берем и создаем две таких папки в своей рабочей директории , называя их node1  и node2  соответственно. Теперь нам нужно настроить Tomacat чтобы он тоже слушал на нужных нам портах. Заходим в  node1/conf/server.xml и в нем требуется закомментировать строчку

<Connector acceptCount="100" bindOnInit="false" connectionTimeout="20000" disableUploadTimeout="true" enableLookups="false" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" port="8080" protocol="HTTP/1.1" redirectPort="8443" relaxedPathChars="[]|" relaxedQueryChars="[]|{}^\`&quot;&lt;&gt;" useBodyEncodingForURI="true"/>

 

и раскомментировать строчку

<Connector port="8080" relaxedPathChars="[]|" relaxedQueryChars="[]|{}^\`&quot;&lt;&gt;"
maxThreads="150" minSpareThreads="25" connectionTimeout="20000" enableLookups="false"
maxHttpHeaderSize="8192" protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443"
acceptCount="100" disableUploadTimeout="true" bindOnInit="false" scheme="http"
proxyName="localhost" proxyPort="80"/>

 

Connector port у меня 8080 (потому что первая нода джиры у меня будет подниматься на порту 8080) .
Также в строчке <Server port=»8005″ shutdown=»SHUTDOWN»>  Sever port должен быть именно 8005.
Сохраняем файл и проделываем те же самые операции в папке node2

НО! Connector port  = 8081 (поскольку вторая нода стартует на порту 8081) и Server port=»8006″

Далее в каждой из папок требуется запустить из папки bin  ./config.sh и конфигурируем каждый инстанс. У нас вылезет окошко для конфигурации джира инстанса:

————————————————————————————————————————————

Вкладка  JIRA Home

Тут мы указываем так называемый  JIRA Home — папку в которой запущенный джира инстанс будет хранить все файлы которые появляются у него во время выполнения — логи, плагины, кэши, конфигурацию подключения к базе данных. Здесь ВОЗМОЖНО важно, чтобы наш Jira Home был внутри Apache Directory , который мы указывали в настройках апача. По крайней мере я сделал именно так =)

Вкладка Database

Тут мы указываем параметры подключения к базе данных(выбираем  mysql пишем localhost отсавляем дефолтный порт(3306) пишем название нашей созданной в mysql базы данных для джиры (jiradb в примере выше) , пишем username подключения для джиры ( у меня это jira_usr, мы создавали его второй командой в mysql ) и пишем его пароль, после этого данное подключение можно протестировать прямо из desktop gui настроек ( по крайней мере у меня такая кнопка есть — называется она test connection) .

Вкладка  Web Server

Тут указываются Control и Http порты для джиры  по дефолту 8005 и 8080 — можно оставить такие значения  и тип соединения http only
(В СЛУЧАЕ СО ВТОРОЙ НОДОЙ ТУТ ПРИ КОНФИГУРАЦИИ ДОЛЖНО БЫТЬ 8006 и 8081)

Вкладка  Advanced

А она нам не нужна

————————————————————————————————————————————

После всех этих действий сохраняем конфигурацию у нас в директории апача должно было появиться две разных папки jira_home. В моем случае это Jira1  и Jira2.

Подытожим, на текущий момент у нас имеется следующее кол-во папок и файлов:

APACHE_DIRECTORY

  • jira1(jira_home для node1)
    -dbconfig.xml
  • jira2(Jira_home для node2)
    -dbconfig.xml
  • node1
    -conf
    -bin
    -…
  • node2
    -conf
    -bin
    -…

Ещё здесь нам понадобится добавить дополнительные параметры запуска jvm для каждого узла, для этого нам потребуется отредактировать файл setenv.sh в папке bin.

Ниже пример для текущей конфигурации и версии Jira 7.12.3:

  1. Заходим в папку node1
  2. Заходим в папку bin
  3. Открываем файл setenv.sh вашим любимым текстовым редактором
  4. У меня он выглядит как-то так
  5. Меняем в нем строчку JVM_EXTRA_ARGS=»-XX:-OmitStackTraceInFastThrow» на JVM_EXTRA_ARGS=»-XX:-OmitStackTraceInFastThrow -DjvmRoute=node1″
  6. Сохраняем файлик
  7. Повторяем все тоже самое для файла setenv.sh в папке node2, но строчка JVM_EXTRA_ARGS=»-XX:-OmitStackTraceInFastThrow»  теперь меняется на  JVM_EXTRA_ARGS=»-XX:-OmitStackTraceInFastThrow -DjvmRoute=node2″

Все что нам осталось сделать для настройки кластера это создать ещё одну папку с названием shared_home в  APACHE_DIRECTORY, после чего в каждой из папок Jira1 и jira2 создать файл с названием cluster.properties

cluster.properties  для jira1

cluster.properties  для jira2

На этом настройка кластера завершена (🎉🎉🎉) — итоговая конфигурация

APACHE_DIRECTORY

  • jira1(jira_home для node1)
    -dbconfig.xml
    -cluster.properties
  • jira2(Jira_home для node2)
    -dbconfig.xml
    -cluster.properties
  • node1
    -conf
    -bin
    -…
  • node2
    -conf
    -bin
    -…
  • shared_home

именно в такой конфигурции кластер должен и будет начинать работу(возможно для старта в будущем нам понадобится немного пошаманить с shared_home, но в конфигурации ничего меняться уже не будет)

Часть 4 (Депрессия)

Стартуем первый узел джиры(апач уже запущен на 80 порту)

./node1/bin/start-jira.sh

идем на localhost:80 и ждем пока поднимется(некоторое время пока джира поднимается может продолжать висеть 503 Service Unavailable). Для того чтобы чувствовать себя менее глупо в тот момент, когда нифига не пишется на экран, а якобы что-то там фоном работает — смотрим в лог =) (логи лежат в jira1/log/atlassian-jira.log).После того как инстанс джиры поднялся на localhost:80/secure/Dashboard.jspa должно быть написано внизу странички  node1.

Далее мы идем и поднимаем второй инстанс джиры:

./node2/bin/start-jira.sh

Все аналогично тому как мы стартовали первый инстанс , только теперь логи лежат в  jira2/log/atlassian-jira.log.
Как было описано выше, чтобы переключаться между двумя узлами джиры нужно вручную подредактировать порт у URL-a в браузере.

Далее когда мы подняли два узла есть два варианта

1-ый —  НАИБОЛЕЕ ВЕРОЯТНЫЙ, все поднялось и синхронизировалось, это хорошо здорово великолепно.

2-й  — менее вероятный (но все же возможный) у вас не засинхронизировались кэши двух нод между собой и ноды работают так сказать в разнобой( то есть ни одна из нод не видит изменения, которые сделаны в другой)

Здесь у нас могут возникнуть два вопроса:

А как проверить?

Это очень просто, создавайте задачи, создавайте новых пользователей, создавайте проекты и прочее, подключайте плагины , в общем поделайте изменения на одном узле, а потом, переключившись на другой, проверьте, что все изменения были «замечены» и верно отражены вторым узлом. + посмотрите что написано в логах обоих узлов

А чо делать если реально нифига не синхронизировалось?

Путь цапли: попробуйте выключить обе ноды(узла/инстанса) через ./node1/bin/stop-jira.sh  и ./node2/bin/stop-jira.sh и откатится к конфигурации директории, которая была до шага номер 4 (в конце шага 3). Перепроверьте все настройки (особенно тщательно настройки баз данных и tomcat). Когда я говорю откатится к конфигурации, то я имею в виду что вся папка будет выглядеть так как было описано выше — то есть все файлы из shared-home будут удалены а также файлы из Jira1 и jira2 , которые появились лишь при запуске узлов. После всего этого попробуйте вернуться на начало шага 4 и просто заново запустить кластер(то есть такая ситуация скорее всего могла возникунуть, если где-то был косяк в настройках или на солнце сегодня буря).

Да, но что если до сих пор нифига не стартует?

Что же, тогда стоит признать, что вам видимо предстоит путь тигра и поднятие кластера именно так как это описал в своем гайде атлассиан =)

Часть 5 (Принятие)

Что нужно сделать? Нужно ДО старта кластера и настройки его стартануть первый узел джиры локально так, как если бы у нас и не было никакого датацентра =)

Интересная задача, чтобы заниматься ей при каждом старте датацентра не так ли? Но увы, именно так написано в официальном гайде. Ну что ж…(хотя где-то глубоко в сознании закрадывается подозрение, что это сильно избыточные действия…)

Начнем, откройте файл node1/conf/server.xml  и ОТКАТИТЕ ваши изменения сделанный на шаге 3 =)

А именно нам нужно:

раскомментировать строчку

<Connector acceptCount="100" bindOnInit="false" connectionTimeout="20000" disableUploadTimeout="true" enableLookups="false" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" port="8080" protocol="HTTP/1.1" redirectPort="8443" relaxedPathChars="[]|" relaxedQueryChars="[]|{}^\`&quot;&lt;&gt;" useBodyEncodingForURI="true"/>

 

и закомментировать строчку

<Connector port="8080" relaxedPathChars="[]|" relaxedQueryChars="[]|{}^\`&quot;&lt;&gt;"
maxThreads="150" minSpareThreads="25" connectionTimeout="20000" enableLookups="false"
maxHttpHeaderSize="8192" protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443"
acceptCount="100" disableUploadTimeout="true" bindOnInit="false" scheme="http"
proxyName="localhost" proxyPort="80"/>

 

Теперь удалите из папки  jira1 все файлы кроме dbconfig.xml(cluster.properties советую сохранить где-нибудь на время он нам понадобится через пару минут снова)   и сделайте node1/bin/start-jira.sh у вас на  localhost:8080 должен подняться Jira server все как положено . Запустился? А теперь выключите его. И из папки Jira1  скопируйте в (пустую) папку shared_home все папки которые имеют название

  • data
  • plugins
  • logos
  • import
  • export

Восстановите файл cluster.propeties в папке jira1 и сделайте файл node1/conf/server.xml таким же как и на шаге 3(то есть отмените изменения, которые вы внесли только что). Что ж теперь ваша конфигруация должна иметь вид(заметьте в Jira2 нет никаких файлов кроме cluster.properties и dbconfig.xml)

APACHE_DIRECTORY

  • jira1(jira_home для node1)
    -dbconfig.xml
    -cluster.properties
    -файлы которые нагенерила джира при запуске как  Jira server
  • jira2(Jira_home для node2)
    -dbconfig.xml
    -cluster.properties
  • node1
    -conf
    -bin
    -…
  • node2
    -conf
    -bin
    -…
  • shared_home
    -файлы которые нагенерила джира при запуске как  Jira server

После этих , откровенно «шаманских» махинаций, вы можете запустить первый и второй узлы джиры ( node1/bin/start-jira.sh и node2/bin/start-jira.sh поочередно) и все должно работать верно, если вы нигде не ошиблись в настройках =)


Like it? Share with your friends!

551
551 points
Raschudesny

Comments

comments

Powered by Facebook Comments