메타 데이터의 끝으로 건너뛰기
메타 데이터의 시작으로 이동

이 페이지의 이전 버전을 보고 있습니다. 현재 버전 보기.

현재와 비교 페이지 이력 보기

버전 1 다음 »

Jira SSL ALB 을 아래 가이드에 따라 설정하세요.

1. AWS Security Groups 을 구성하세요.

EC2 instance에 대한 AWS Security Groups에서 아래 4가지 포트가 허용되어야 합니다.

  • 8080

  • 8081

  • 8082

  • 80

이를 통해 Jira 접근성 테스트를할 수있을 뿐만 아니라 ELB가 EC2 instance 에서 Jira와 통신할 수 있습니다.

2. Tomcat을 설정하세요.

  1. 하나 또는 두 개의 proxy 커넥터 역할을 하고 다른 하나는 proxy 우회용(troubleshooting 용)으로 사용하도록 Tomcat 커넥터를 구성합니다.

JIRA_Install/conf/server.xml 파일에서 설정이 가능합니다.

<Connector port="8080" maxThreads="150" minSpareThreads="25" 
connectionTimeout="20000" enableLookups="false" maxHttpHeaderSize="8192" 
protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443" 
acceptCount="100" disableUploadTimeout="true"/>

2. 위 커넥터의 복사본을 2개 만들고 아래와 같이 3개를 모두 수정합니다.

<!--
1. Add proxyName and proxyPort to the original connector that uses port 8080
 - This connector is to be used for HTTP access via AWS ELB
-->
<Connector port="8080" maxThreads="150" minSpareThreads="25" 
connectionTimeout="20000" enableLookups="false" maxHttpHeaderSize="8192" 
protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443" 
acceptCount="100" disableUploadTimeout="true" proxyName="jira.aws.elb" 
proxyPort="80"/>
 
<!--
2. Add proxyName, proxyPort, scheme, and secure to the second connector - 
    modify it to use port 8081
 - This connector is to be used for HTTPS access via AWS ELB
-->
<Connector port="8081" maxThreads="150" minSpareThreads="25" 
connectionTimeout="20000" enableLookups="false" maxHttpHeaderSize="8192" 
protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443" 
acceptCount="100" disableUploadTimeout="true" proxyName="jira.aws.elb" 
proxyPort="443" scheme="https" secure="true"/>
 
<!--
3. Modify the third connector to use port 8082 without adding anything else
 - This connector is to be used for bypassing proxy 
 e.g. JIRA can be accessed directly via http://ec2-hostname:8082
-->
<Connector port="8082" maxThreads="150" minSpareThreads="25" 
connectionTimeout="20000" enableLookups="false" maxHttpHeaderSize="8192" 
protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443" 
acceptCount="100" disableUploadTimeout="true"/>

3. JIRA를 다시 시작하고 다음을 통해 액세스할 수 있는지 확인합니다. (모두 Proxy 우회).

3. HTTP 액세스를 위한 ELB 구성

  1. EC2 관리에서 대상 그룹으로 이동하여 다음과 같이 새 대상 그룹을 생성합니다.

    • 이름: ELB-HTTP-access

    • 프로토콜: HTTP

    • 포트: 80

  2. 대상 그룹에 대상 추가:

    • 위의 대상 그룹 선택 → 대상 탭 열기 → 편집 으로 갑니다.

    • 실행 중인 JIRA instance를 선택합니다. (그렇지 않은 경우 위의 2.3단계를 다시 확인합니다.)

    • 포트를 8080 으로 수정합니다.

    • 등록된 항목에 추가합니다.

  3. EC2 관리에서 Load Balancers로 이동하여 아래과 같이 새 Load Balancers를 생성 합니다.

    • 유형: Application Load Balancer

    • 이름: JIRA-ELB

    • 로드 밸런서 프로토콜: HTTP

    • 로드 밸런서 포트: 80

    • 가용 영역: EC2 instance와 동일한 VPC 를 선택한 후 2개의 Availability Zones을 선택합니다.

    • 보안 그룹: 적절한 보안 그룹 선택

    • 대상 그룹: 존재하는 대상 그룹

    • 이름:  ELB-HTTP-access

    • 검토 및 만들기

4. HTTPS 액세스를 위한 ELB 구성

  1. EC2 관리에서 대상 그룹으로 이동하여 다음과 같이 새 대상 그룹을 생성합니다.

    • 이름:  ELB-HTTPS-access

    • 프로토콜: HTTP

    • 포트: 80

  2. 대상 그룹에 대상 추가:

    • 위의 대상 그룹 선택 → 대상 탭 열기 → 편집 으로 갑니다.

    • 실행 중인 JIRA instance 를 선택합니다. (그렇지 않은 경우 위의 2.3단계를 다시 확인합니다.)

    • 포트를  8081 로 수정합니다.

    • 등록된 항목에 추가합니다.

  3. EC2 관리에서 Load Balancers로 이동하여 3.3단계에서 생성한 기존 Load Balancers 를 편집합니다.

    • Load Balancers 선택 → 리스너 탭 열기 → 리스너 추가

    • 프로토콜:  HTTPS

    • 포트:  443

    • 기본 대상 그룹:  ELB-HTTPS-access

    • SSL 인증서 선택 또는 업로드

5. HTTP-HTTPS 리디렉션 구성하기

How do I redirect HTTP traffic on my server to HTTPS on my load balancer? 에 따르면 EC2 instance에 추가 프록시 서비스가 설치되어 있어야 합니다. 이 예시에서는 Nginx 를 사용합니다.

  1. EC2 instance에 Nginx를 설치합니다. 이것은 JIRA가 설치된 동일한 인스턴스일 수 있습니다. Ubuntu 14.04 LTS에 Nginx를 설치하는 방법을 참고하여 Nginx가 80포트 에서 실행되고 있는지 확인할 수 있습니다.

  2. HTTP에서 HTTPS로 요청을 리디렉션하도록 Nginx 구성을 수정합니다.( server_name 을 수정합니다.)

    server {
          listen         80;
          server_name    jira.aws.elb;
          if ($http_x_forwarded_proto != "https") {
              rewrite ^(.*)$ https://$server_name$REQUEST_URI permanent;
          }
    }
  3. Nginx를 다시 시작합니다.

  4. ELB-HTTP 액세스 대상 그룹 편집합니다.  (3.2 단계 참조):

    • 포트 8080 에서 수신 대기 중인 현재 대상 제거합니다.

    • Nginx가 실행 중인 EC2 instance를 선택하십시오.

    • 포트를  80 (기본값)으로 수정합니다.

    • 등록된 항목에 추가합니다.

6. JIRA 데이터 센터를 사용하는 경우

JIRA Data Center를 사용하는 경우 3.2단계 및/또는 4.2단계에서와 같이 모든 JIRA 노드를 대상 그룹에 추가할 수 있습니다. 올바른 instances를 선택하고 올바른 Tomcat 포트를 사용하기만 하면 됩니다.

(모든 노드에 대해 Tomcat을 유사하게 구성할 수 있습니다. 2단계 참조).

또한, 다음 단계에 따라 Load Balancer Stickiness를 활성화해야 합니다.

  1. 해당 대상 그룹 선택 → 설명 탭 열기 → 속성 편집 합니다.

  2. Load Balancer generated cookie stickiness 활성화합니다.

  3. 저장합니다.


허가하여야하는 Port 및 설정 방안이 구성되어있으며 ALB쪽에 인증서가 정상적으로 반영되어있다면

Tomcat의 server.xml 파일에서 reverse proxy 설정을 구성해주시면 정상적으로 서비스가 됩니다.

  • 레이블 없음