이전 편의 간략한 소개에 이어 설치로 넘어가보도록 하겠습니다. [Jira Installation]Jira설치에 앞서 환경을 결정해야하는데, 크게 나누어서 전통적인 서버형 설치의 온프레미스와 클라우드 환경의 오프프레미스가 있으며Jira의 경우 양쪽 다 지원합니다. 다만 현재로써는 서버설치형의 방식이 Jira자체의 권한을 제어하는데 있어서 조금 더 많은 권한을 가지고 있으며,Atlassian의 방향성은 클라우드에 서버형의 기능을 추가하는 등, 클라우드 방향으로 나아가는 중입니다. 
본 문서에서는 필자에게 익숙한 서버 설치형으로, OS까지 준비되어 있는 상태에서 DataBase와 Jira를 설치하는 부분부터 진행하며, 누구나 쉽게 접할 수 있는 오픈소스 위주로 환경을 구성합니다. Database는 테스트용도일 경우 내장DB인 h2sql을 써도 되긴하지만, 가능하면 간단한 mysql정도는 사용하는 것을 권장합니다. 

  • Operating System: CentOS 7.x 
  • DataBase: Mysql-Community-Server 5.5 ~ 
  • JIRA: Jira Software 7.2.x

사내 서버관리 등이 어렵거나 귀찮을 경우, 클라우드 AWS(아마존 웹서비스)에 OS인스턴스를 생성하여 인프라 관리를 맡기는(과금전사형)방법도 있습니다. Jira를 7.2버전 이상으로 적은 이유는 한글팩이 해당 릴리즈부터 내장되었기 때문이며, 다른 큰 이유는 없습니다. 
여차저차하여, OS가 준비되면 우선적으로 기본적으로 실행 중인 Selinux와 Firewalld의 사용을 종료하는 편을 권장하며,(특히 selinux는 일반인이 다룰만한 내용이 아닙니다)Selinux는 설정 변경 후 OS 재시작이 필요합니다. Firewalld는 내리는 것에 마음 한 켠이 불편하실 경우, firewall명령을 통해 Jira와 Confluence의 기본포트인 8080과 8090포트만 열어주시기 바랍니다. 

  • #vi /etc/sysconfig/selinux 
  • SELINUX=disabled
  • #systemctl stop firewalld

이제 Jira를 설치해봅시다. 우선 서버형 설치 시에는 다시 두 가지의 방법으로 나뉘며, 한 가지는 Tomcat서버에 Jira war파일을 디플로이하는 방법, 다른 한 가지는 Jira Installer파일을 사용하는 방법입니다. 어느 방법이던지 상관없지만 초심자의 입장에선 Installer설치가 쉽고 편리하다고 개인적으로 생각하며, 다음과 같이 Jira 홈페이지에서 다운로드가 가능합니다. 

캡처 더럽게 크네요CentOS이므로, Linux 64 Bit를 받아줍니다. 이전 버전을 받고 싶으실 경우 왼쪽 하단의 모든 서버 버전을 클릭 시 가능합니다.파일을 다운로드하여 서버에 업로드하는 시간이 아까우니 이 때 Database를 설치해봅니다. 외부인터넷이 되지 않는 환경이라면 RPM 패키지로, 그렇지 않다면 yum명령으로 설치하시면 됩니다. (CentOS7기준, yum install mysql로 설치해도 MariaDB가 설치되니 주의가 필요하며, mysql-community버전 설치방법은 구글에 잘 나와있습니다)
여기서 굳이 mysql을 강조하는 이유는 MariaDB도 동작에는 전혀 지장이 없으나, 차후 Atalssian Support로부터 지원을 받을 일이 생겼을 때,MariaDB이기 때문에 지원을 받기가 어려운 경우가 생기기 때문입니다. (PostgreSQL과 PPAS도 같은 느낌)공식적인 Jira 지원 Database는 다음과 같으며, Jira 버전별로 지원되는 DB버전의 경우 구글이 잘 알려줍니다. 

  • Oracle
  • Mysql
  • PostgreSQL
  • MicrosoftSQL
  • H2

어찌되었던 Mysql-server가 설치되면, Mysql을 구동하기 전에 /etc/my.cnf 파일에 다음의 내용을 추가합니다. [mysqld]innodb_log_file_size = 512Mmax_allowed_packet = 512Mcharacter-set-server=utf8collation-server=utf8_bindefault-storage-engine=innodb
위 옵션을 살짝 설명하자면, 그냥 저게 권장옵션이라서입니다. (옵션대로 설정하지 않으면 Jira설치완료 후 로그인 시 귀찮은 Warning팝업 창을 자꾸 보게 될 것입니다)
이후엔 Mysql 구동 후, Jira Schema 생성 및 권한을 부여합니다. Ex)#create database jira;#grant all privileges on jira.* to jira@’localhost’ identified by ‘jira’;#grant all privileges on jira.* to jira@’127.0.0.1′ identified by ‘jira’;#grant all privileges on jira.* to jira@’%’ identified by ‘jira’;exit
이제 Jira 파일이 업로드 되었으면 파일에 실행권한을 부여한 뒤, 실행합니다. Ex)#chmod 755 atlassian-jira-software7.x.bin#./atlassian-jira-software7.x.bin

실행 후, 옵션이 세 가지가 있는데 1번은 자동설치, 2번은 커스텀설치, 3번은 업그레이드입니다. 처음하시는 분들은 망설임없이 1번 선택 후 엔터만 계속 눌러주시면 설치가 완료되며, 기본 설치 시 다음과 같이 설치됩니다. 
<Jira Installation Directory>/opt/atlassian/jira/
<Jira Data Directory>/var/atlassian/application-data/jira
<Port>Server Port: 8005Connector Port: 8080
“그래서 저게 뭔데?” 라고 생각하실 것이기에 간단히 설명하자면, <Installation Directory>Tomcat 엔진이라고 보시면됩니다.Installer 파일로 설치 시 Tomcat서버가 내장되어 설치되기에 앞에서 이야기했던, war파일을 기존 Tomcat서버에 디플로이하는 방법이 아니어도 설치가 가능한 것이지요. 어찌되었던 이 디렉토리는 간단히 생각해서 Jira서비스의 실행 및 중지, Jira의 Heap Memory설정 등 Jira의 실행에 관련된 디렉토리라고 생각하시면됩니다. 
<Jira Data Directory>Jira의 데이터와 Database Config파일 등이 들어있으며 주로 첨부파일(이미지, 동영상)들이 저장되는 위치입니다. 보통 용량이 크기에 따로 디렉토리를 copy하는 등의 백업을 권장합니다. 
<Port>의미 그대로 Server Port는 Jira 서버가 실행되기 위한 포트, Connector Port는 웹브라우저에서 접근할 수 있는 포트입니다. 당연히 둘 다 열리지 않거나 충돌하면 안되겠죠. 

자, 설치가 끝났으면 몇 가지 추가 설정을 위해 다음 명령으로 Jira 서비스를 종료합니다. #./opt/atlassian/jira/bin/stop-jira.sh
그리고 다음 위치에 가서 JDBC를 다운받습니다. (귀찮지만 가입해주도록 합니다…)https://dev.mysql.com/downloads/connector/j/
받은 파일의 압축을 풀면 이런 파일(mysql-connector-java-5.x-bin.jar)이 있을텐데, 이걸 다음의 위치로 복사해줍니다. /opt/atlassian/jira/lib
그리고 선택사항으로 OS에 메모리가 여유가 좀 있다면 다음의 옵션에서 Jira의 HeapMemory를 좀 올려주면 조금 더 빠른 Jira 사용이 가능합니다. 예시엔 2G를 할당했지만 OS메모리 여유보고 바꾸세요. 메모리는 free -m 명령으로 볼 수 있고, Jira의 기본은 MAX가 768m정도입니다. 
#vi /opt/atlassian/jira/bin/setenv.sh

  • JVM_MINIMUM_MEMORY=”2048m”
  • JVM_MAXIMUM_MEMORY=”2048m”

그리고 Installation Directory와 Data Directory의 소유권을 Jira로 변경해줍니다. Jira나 Confluence의 경우 Installer로 설치 시 자동으로 OS에 Jira와 Confluence 사용자를 생성하기에 바로 명령이 가능합니다. #chown -Rf jira:jira /opt/atlassian/jira/#chown -Rf jira:jira /var/atlassian/application-data/jira
여기까지 되었다면, 이제 드디어 실행할 시간입니다. 다음의 명령으로 다시 Jira를 구동합니다. #./opt/atlassian/jira/bin/start-jira.sh
문제가 없다면 브라우저에서 다음의 주소로 접속이 가능합니다. (Chrome이나 Firefox를 권장합니다. IE는 결제 시에나 쓰는걸로)https://<서버 IP주소>:8080다음과 같이 문제없이 화면이 뜰 경우, 아래의 I’ll set it up myself를 클릭 후 Next로 넘어갑니다(슬슬 그림이 없으면 지루함과 불안감이 생기기에 그림을 넣기 시작합니다)

Mysql을 설치해두었으므로, My Own Database를 선택 후 Mysql을 선택합니다.

Hostname은 Jira용 Database 설치한 서버 ip를 적으시면 되는데 DB분리하지 않은 이상 일반적으로 localhost로 주시면 됩니다. Database에도 앞에서 jira라는 이름의 schema로 만들었기에 jira를, Username도 jira, Password도 jira를 넣고 Test Connection을 누릅니다.(스크린샷이 이상한 건 절대 다시깔기 귀찮아서 타 사이트에서 긁어왔기 때문이 아닙니다)문제가 없을 경우, 녹색으로 Test 성공이 뜨며 next버튼을 눌러 넘어갑니다. (혹시 에러뜨면 메세지를 읽어보세요. DB접속권한을 잘못주었거나, JDBC의 버전이 맞지 않거나 등등)

Jira의 이름 및 기본 URL설정 화면입니다. 차후 변경 가능하므로 마땅히 떠오르는게 없다 싶으면 그냥 Next로 넘어갑니다.

구매한 혹은 평가판 라이선스키를 복사하여 붙여넣습니다.

접속을 위해 Admin계정을 하나 만듭니다.

메일서버 설정입니다만, 차후에도 설정가능하므로 이것으로 설치를 마칩니다.

그리고 대망의 로그인을 하시게 되면, 다음과 같이 언어설정을 포함하여 개인설정을 진행합니다. 스크린샷에는 없지만7.2버전부터 한국어도 지원하며, 여기서 영어를 선택하시더라도 차후 변경가능하므로 진행해줍니다. 

대략 다음 화면이 보인다면 Jira의 기본 설치 및 로그인이 완료된 상태입니다. 

이후의 문서에서는 Jira의 간단한 설정과 사용법 등에 대해 기술하겠습니다.

오픈소스컨설팅의 마스코트, 열린이입니다! :)

Leave a Reply

Your email address will not be published. Required fields are marked *