Application Load Balancer 생성 및 관리
    • PDF

    Application Load Balancer 생성 및 관리

    • PDF

    기사 요약

    VPC 환경에서 이용 가능합니다.

    Application Load Balancer는 HTTP, HTTPS를 사용하는 웹 애플리케이션에 보다 유연한 구성이 가능한 Load Balancer입니다. 고정 IP를 제공하며, URL 기반 분기가 가능하고 3가지 로드밸런싱 알고리즘을 제공합니다.

    Application Load Balancer 생성

    Application Load Balancer를 생성하는 방법은 다음과 같습니다.

    1. 네이버 클라우드 플랫폼 콘솔에 접속해 주십시오.
    2. Services > Networking > Load Balancer 메뉴를 차례대로 클릭해 주십시오.
    3. Load Balancer 메뉴를 클릭해 주십시오.
    4. [로드밸런서 생성] > [애플리케이션 로드밸런서 생성] 버튼을 차례대로 클릭해 주십시오.
    5. 로드밸런서 생성 화면이 나타나면 다음 단계를 차례대로 진행해 주십시오.
    참고

    3. Certificate 설정 단계는 2. 로드밸런서 생성(리스너 설정) 단계에서 HTTPS 프로토콜로 리스너를 추가한 경우에만 나타나는 단계입니다.
    HTTP 프로토콜로만 리스너를 추가한 경우, 3. Certificate 설정 단계는 나타나지 않으니 해당 단계를 제외하고 차례대로 진행해 주십시오.

    1. 로드밸런서 생성

    생성할 Application Load Balancer의 정보를 입력한 후 [다음] 버튼을 클릭해 주십시오.

    • Network: Load Balancer의 네트워크 유형을 선택해 주십시오.
      • Private IP: VPC 내부 Private IP를 이용하여 내부 서버로부터의 부하 분산을 처리하며, VPC 외부에서는 접근할 수 없습니다.
      • Public IP: VPC 외부 또는 인터넷에서 호출될 수 있도록 Public IP로 설정되어 부하 분산을 처리하며, Public IP와 함께 제공되는 임의의 도메인을 이용하여 고객이 보유한 도메인 또는 CDN 서비스와 연결하여 활용할 수 있습니다.
    • 부하 처리 성능: 부하 처리 성능에 따른 Load Balancer의 크기를 선택해 주십시오.
      • 부하 처리 성능에 따라 Small/Medium/Large 중 선택할 수 있습니다.
      • 각각 초당 연결 수(CPS) 기준 최소 30,000/60,000/90,000개의 분산 처리를 보장합니다.
      • HTTPS는 SSL Offloading으로 HTTP 대비 약 1/10의 성능을 예상할 수 있으나, 인증키 방식 및 크기에 따라 다소 차이가 있을 수 있습니다.
    • 대상 VPC: Load Balancer를 생성할 VPC를 선택해 주십시오.
    • 서브넷 선택: Load Balancer를 생성할 Zone과 Subnet을 선택해 주십시오.
      주의
      • 선택한 Zone과 Subnet은 Load Balancer 생성이 완료되면 변경할 수 없습니다.
      • 전용 Subnet을 생성한 후 선택해 주십시오. Load Balancer가 서버와 같은 Subnet에 위치하면 해당 서버로 부하 분산을 처리하지 않습니다.
      • 대상 VPC에서 선택한 VPC에 포함된 Subnet만 선택할 수 있습니다.
      • 싱가포르 리전의 경우, 선택한 네트워크 유형에 따라 Subnet을 선택할 수 있습니다.
        • Private IP를 선택한 경우, Private Load Balancer Subnet으로 생성된 Subnet만 선택할 수 있습니다.
        • Public IP를 선택한 경우, Public Load Balancer Subnet으로 생성된 Subnet만 선택할 수 있습니다.
        • Subnet 생성에 관한 자세한 내용은 Subnet 생성을 참조해 주십시오.
      • 각각의 Load Balancer마다 별도의 Subnet을 생성할 필요는 없으나, 가급적 C 클래스(255.255.255.0) 규모의 Subnet을 권장합니다.
    • 공인 IP: 보유하고 있는 Public IP 또는 신규 Public IP 신청을 선택해 주십시오.

    2. 로드밸런서 생성(리스너 설정)

    1. Load Balancer의 기본 리스너가 동작할 프로토콜(HTTP/HTTPS)을 선택해 주십시오.
    2. Load Balancer의 기본 리스너가 바인드할 포트를 설정해 주십시오.
    3. [추가] 버튼을 클릭해 주십시오.
      • 리스너가 추가됩니다.
      • 여러 개의 리스너를 추가하려면 1.~3. 절차를 반복해 주십시오.
      • 추가한 리스너를 삭제하려면 [삭제] 버튼을 클릭해 주십시오.
    4. [다음] 버튼을 클릭해 주십시오.

    3. Certificate 설정

    참고

    Certificate 설정은 2. 로드밸런서 생성(리스너 설정)에서 HTTPS 프로토콜로 리스너를 추가한 경우에만 나타납니다.

    1. Certificate Manager에 등록된 인증서 중 서비스에 알맞은 인증서를 선택해 주십시오.
    참고

    RSA-2048 이상 또는 ECDSA P256 공개키 알고리즘 인증서만 지원합니다.

    1. TLS 최소지원 버전에서 TLS 프로토콜 버전을 선택해 주십시오.
      • TLSv1.0, TLSv1.1, TLSv1.2 중 선택할 수 있습니다.
    2. Cipher Suite 설정에서 HTTPS 리스너가 지원할 Cipher Suite를 선택해 주십시오.
      • Load Balancer가 클라이언트와 암호화 협상에서 제공할 암호화 기능을 선택할 수 있습니다.
      • Select All을 선택하면 지원되는 모든 Cipher Suite를 선택할 수 있습니다.

    4. Target Group 선택

    부하 분산 대상이 될 Target Group을 선택한 후 [다음] 버튼을 클릭해 주십시오.

    • 사전에 Target Group이 생성되어 있어야 합니다. 생성된 Target Group이 없는 경우 [Target Group 생성] 버튼을 클릭하여 Target Group을 생성해 주십시오.(Target Group 생성 참조)
    • 생성된 Target Group 중 연결할 수 있는 Target Group만 표시됩니다.
      • Application Load Balancer는 HTTP 또는 HTTPS 프로토콜로 생성된 Target Group만 선택할 수 있습니다.
    주의

    바인딩된 서버의 ACG 및 NACL에 Load Balancer Subnet 대역이 접근 소스 및 허용 포트로 반드시 포함되어 있어야 합니다.

    5. 설정 정보 보기

    Load Balancer의 설정 정보를 확인한 후 [로드 밸런서 생성] 버튼을 클릭해 주십시오.

    Application Load Balancer 관리

    생성한 Application Load Balancer는 Load Balancer, Subnet, 리스너 설정을 변경할 수 있으며, 모니터링 정보를 그래프로 확인할 수 있습니다.

    참고

    Load Balancer에 적용된 서버는 Target Group 메뉴에서 변경할 수 있습니다. 자세한 내용은 Target 설정을 참조해 주십시오.

    Application Load Balancer 설정

    Load Balancer 설정 정보를 확인하고 설정을 변경하는 방법은 다음과 같습니다.

    1. 네이버 클라우드 플랫폼 콘솔에서 Services > Networking > Load Balancer 메뉴를 차례대로 클릭해 주십시오.
    2. Load Balancer 메뉴를 클릭해 주십시오.
    3. 설정 정보를 확인하거나 변경할 Load Balancer를 선택한 후 [로드밸런서 설정 변경] 버튼을 클릭해 주십시오.
      • Load Balancer 설정 변경 팝업 창이 나타나며, Load Balancer의 설정 정보를 확인할 수 있습니다.
    4. 변경 사항을 적용한 후 [확인] 버튼을 클릭해 주십시오.
      • 부하 처리 성능을 변경할 수 있습니다.
        • 부하 처리 성능에 따라 Small/Medium/Large 중 선택할 수 있습니다.
        • 각각 초당 연결 수(CPS) 기준 최소 30,000/60,000/90,000개의 분산 처리를 보장합니다.
        • HTTPS는 SSL Offloading으로 HTTP 대비 약 1/10의 성능을 예상할 수 있으나, 인증키 방식 및 크기에 따라 다소 차이가 있을 수 있습니다.
      • Idle Timeout을 변경할 수 있습니다.
      • 액세스 로그 수집 활성 여부를 변경할 수 있습니다.
        • 액세스 로그 수집 활성 여부를 변경하려면 [설정] 버튼을 클릭해 주십시오.

        • 액세스 로그 수집을 활성화하면 Load Balancer를 통해 인입되는 요청 트래픽으로 인해 발생한 로그를 CLA(Cloud Log Analytics)에 전달하여 저장할 수 있습니다. CLA는 최대 100GB의 데이터를 최대 1개월 간 보관하며, 영구 보관하려면 로그 자동 내보내기 설정을 통해 Object Storage에 저장할 수 있습니다.

        • 액세스 로그 수집을 활성화하려면 사전에 CLA 이용 신청을 완료해야 합니다. CLA 이용을 중도 해지하면 추가 로그 수집이 진행되지 않습니다.

        • 다음 표에서는 액세스 로그 항목의 필드를 순서대로 설명합니다. 모든 필드는 공백으로 구분됩니다.

          필드설명
          HTTP VersionHTTP 버전
          <예시> HTTP/1.1
          client:port요청 클라이언트의 IP 주소 및 포트
          request_processing_timeLoad Balancer가 요청을 수신한 시간부터 Target으로 요청을 전송한 시간까지의 총 경과 시간(ms)
          target_connection_timeLoad Balancer가 Target으로 TCP 연결 설정하는 데 소요된 시간(ms)
          target_response_timeTarget에서 Load Balancer로 응답을 보내는 데 걸린 시간(ms)
          response_processing_timeLoad Balancer가 Target으로 TCP 연결 설정하는 데 소요된 시간(ms)
          target_status_codeTarget의 응답 상태 코드
          received_bytes클라이언트로부터 수신된 요청 크기(Byte)
          sent_bytes클라이언트에게 회신한 응답 크기(Byte)
          HTTP methodHTTP 메소드
          <예시> GET, POST 등
          "request"
          • 큰 따옴표로 묶여 있음
          • host/uri+port 형식으로 기록됨
          "user_agent"
          • 큰 따옴표로 묶여 있음
          • 요청을 보낸 클라이언트를 식별하는 사용자 에이전트 문자열
          • 문자열은 하나 이상의 제품 식별자, 제품[/버전]으로 구성
          • 문자열은 8KB까지 로깅
          ssl_cipher
          • [HTTPS] SSL 암호화 알고리즘
          • HTTPS 리스너가 아닌 경우 '-'로 설정
            <예시> AES-SHA
          ssl_version
          • [HTTPS] SSL 버전
          • HTTPS 리스너가 아닌 경우 '-'로 설정
            <예시> TLS v1
          request_creation_timeLoad Balancer가 클라이언트에게 요청을 받은 시간

    Subnet 추가

    참고
    • Load Balancer 생성 시 하나의 Zone과 Subnet을 선택한 경우에만 추가할 수 있습니다.
    • Subnet을 추가하면 변경할 수 없습니다.

    Application Load Balancer를 위치시킬 Zone과 Subnet을 추가하는 방법은 다음과 같습니다.

    1. 네이버 클라우드 플랫폼 콘솔에서 Services > Networking > Load Balancer 메뉴를 차례대로 클릭해 주십시오.
    2. Load Balancer 메뉴를 클릭해 주십시오.
    3. Subnet을 추가할 Load Balancer를 선택한 후 [서브넷 변경] 버튼을 클릭해 주십시오.
      • 로드밸런서 서브넷 변경 팝업 창이 나타나며, Load Balancer Subnet 정보를 확인할 수 있습니다.
    4. Zone과 Subnet을 추가한 후 [확인] 버튼을 클릭해 주십시오.

    리스너 설정

    리스너 설정 변경 화면에서 등록된 리스너를 확인하고 리스너를 추가/변경/삭제할 수 있으며, 규칙을 조회하고 추가/변경/삭제할 수 있습니다.

    리스너를 설정 변경 화면으로 이동하는 방법은 다음과 같습니다.

    1. 네이버 클라우드 플랫폼 콘솔에서 Services > Networking > Load Balancer 메뉴를 차례대로 클릭해 주십시오.
    2. Load Balancer 메뉴를 클릭해 주십시오.
    3. 리스너 설정을 변경할 Load Balancer를 선택한 후 [리스너 설정 변경] 버튼을 클릭해 주십시오.
      • 리스너 설정 변경 화면으로 이동하며, Load Balancer를 생성할 때 설정한 리스너가 Default로 조회됩니다.

    리스너 추가

    리스너를 추가하는 방법은 다음과 같습니다.

    1. 리스너 설정 변경 화면에서 [리스너 추가] 버튼을 클릭해 주십시오.

    2. 추가할 리스너의 프로토콜을 선택해 주십시오.

      • HTTPS를 선택한 경우 HTTP/2를 활성화하려면 HTTP/2 체크 박스를 클릭하여 선택해 주십시오.
      참고

      HTTP/2는 국제 인터넷 표준화 기구(IETF)에서 개발하는 HTTP 프로토콜의 두 번째 버전입니다. HTTP 헤더 데이터 압축, 서버 푸시 기술, TCP 연결 하나로 여러 요청을 다중화 처리하는 등의 방법을 적용하여 웹 페이지 로드 지연 시간을 감소시킵니다.

    3. 리스너가 바인드할 포트 번호를 입력해 주십시오.

    4. HTTPS 프로토콜을 선택한 경우, 다음 사항을 선택해 주십시오.

      • Certificate Manager에 등록된 인증서 중 서비스에 알맞은 인증서를 선택해 주십시오.
      • TLS 프로토콜 버전을 선택해 주십시오.
        • TLSv1.0, TLSv1.1, TLSv1.2 중 선택할 수 있습니다.
      • HTTPS 리스너가 지원할 Cipher Suite를 선택해 주십시오.
        • Load Balancer가 클라이언트와 암호화 협상에서 제공할 암호화 기능을 선택할 수 있습니다.
    5. 해당 리스너의 트래픽이 전달될 Target Group을 선택해 주십시오.

    6. [확인] 버튼을 클릭해 주십시오.

    리스너 변경

    리스너를 변경하는 방법은 다음과 같습니다.

    1. 리스너 설정 변경 화면에서 [리스너 변경] 버튼을 클릭해 주십시오.
    2. 리스너 추가를 참조하여 변경 사항을 적용해 주십시오.
    3. [확인] 버튼을 클릭해 주십시오.

    리스너 삭제

    참고
    • 최소 1개의 리스너가 남아 있어야 하므로 추가된 리스너가 1개인 경우 리스너를 삭제할 수 없습니다. 1개 남은 리스너를 삭제하려면 리스너를 추가한 후 삭제해 주십시오.
    • Load Balancer의 상태가 운영 중인 경우에만 리스너를 삭제할 수 있습니다.

    리스너를 삭제하는 방법은 다음과 같습니다.

    1. 리스너 설정 변경 화면에서 삭제할 리스너를 선택해 주십시오.
    2. [리스너 삭제] 버튼을 클릭해 주십시오.
    3. 리스너 삭제 팝업 창의 내용을 확인한 후 [삭제] 버튼을 클릭해 주십시오.
      • 선택한 리스너가 삭제됩니다.

    규칙 조회

    규칙 조회/변경 화면에서 등록된 규칙을 조회할 수 있습니다.

    규칙은 다음과 같은 특성을 지닙니다.

    • 각 규칙은 조건절과 액션으로 구성
    • Default 규칙은 삭제 불가능
    • 각 규칙은 우선순위에 따라 순차대로 적용되며, 적용되지 않은 트래픽은 Default 규칙에 따라 동작

    등록된 규칙을 조회하는 방법은 다음과 같습니다.

    1. 리스너 설정 변경 화면에서 규칙을 조회할 리스너를 선택해 주십시오.
    2. [규칙 조회/변경] 버튼을 클릭해 주십시오.
      • 규칙 조회/변경 화면으로 이동합니다.

    규칙 추가

    규칙을 추가하는 방법은 다음과 같습니다.

    1. 리스너 설정 변경 화면에서 규칙을 추가할 리스너를 선택한 후 [규칙 조회/변경] 버튼을 클릭해 주십시오.
    2. 규칙 조회/변경 화면에서 [규칙 추가] 버튼을 클릭해 주십시오.
    3. 규칙의 우선순위를 입력해 주십시오.
      • 우선순위는 1~9999까지의 숫자로 입력할 수 있습니다.
    4. 조건을 선택한 후 [추가] 버튼을 클릭해 주십시오.
      • 조건 유형은 Host Header, HTTP HeaderPath Pattern을 선택할 수 있습니다.
      • Host Header, HTTP HeaderPath Pattern 값의 총 합은 50개를 넘을 수 없습니다.
        • Host Header
          • 최대 68자까지 입력이 가능합니다.
        • HTTP Header
          • Header 이름과 값에서 대/소문자는 구분하지 않습니다.
          • Header 이름은 40자, header 값은 128자까지 입력이 가능합니다.
          • Header 이름은 영문자, 숫자와 일부 특수문자(-, _) 입력이 가능합니다.
          • Header 이름에 예약어("host") 입력은 제한됩니다.
          • Header 값은 ASCII 제어 문자(0x00에서 0x1f 및 0x7f)를 제외한 모든 문자가 가능합니다. (단 ?, *는 와일드카드로 적용)
          • Header 이름 당 최대 5개의 값을 입력할 수 있습니다.
        • Path Pattern
          • Path Pattern은 128자까지 입력이 가능합니다.
    5. 조건을 입력한 후 [추가] 버튼을 클릭해 주십시오.
      • 각 조건절은 And로 동작합니다.
      • Host Header 조건절과 Path Pattern 조건절은 각각 여러 개의 조건이 Or로 동작합니다.
      • <예시> Host Header 조건절에 aaa.com과 bbb.com을 추가하고 Path Pattern 조건절에 /ccc, /ddd를 추가한 경우에 해당 규칙이 동작하는 최종 조건은 (aaa.com or bbb.com) and (/ccc or /ddd)가 됩니다.
    6. 액션을 설정해 주십시오.
      • 액션 유형은 Target GroupRedirection을 선택할 수 있으며, 한 가지만 선택할 수 있습니다.
      • 액션이 Target Group인 경우, 다수의 Target Group을 지정하여 가중치를 부여할 수 있습니다.
        • <예시> TestTG01의 가중치를 10, TestTG02의 가중치를 90으로 부여한 경우, 트래픽은 각각 1:9의 비율로 분산됩니다.
      • 액션이 Redirection인 경우, 조건에 부합하는 모든 Request를 다른 URL로 전달합니다.
        • Status Code(ResponseCode)는 301과 302 모두 지원합니다.
        • Protocol 드롭박스의 #{protocol}을 이용하여 요청 protocol 그대로 Redirection 할 수 있습니다.

    규칙 변경

    규칙을 변경하는 방법은 다음과 같습니다.

    1. 리스너 설정 변경 화면에서 규칙을 변경할 리스너를 선택한 후 [규칙 조회/변경] 버튼을 클릭해 주십시오.
    2. 규칙 조회/변경 화면에서 변경할 규칙을 선택한 후 [규칙 변경] 버튼을 클릭해 주십시오.
    3. 규칙 추가를 참조하여 변경 사항을 적용해 주십시오.
    4. [확인] 버튼을 클릭해 주십시오.

    규칙 삭제

    참고
    • Default 규칙은 삭제할 수 없습니다. 선택한 규칙에 Default 규칙이 포함된 경우 [규칙 제거] 버튼이 비활성화됩니다.
    • 규칙을 삭제하더라도 액션에 설정된 Target Group은 삭제되지 않습니다.

    규칙을 삭제하는 방법은 다음과 같습니다.

    1. 리스너 설정 변경 화면에서 규칙을 삭제할 리스너를 선택한 후 [규칙 조회/변경] 버튼을 클릭해 주십시오.
    2. 규칙 조회/변경 화면에서 삭제할 규칙을 선택한 후 [규칙 제거] 버튼을 클릭해 주십시오.
    3. 규칙 제거 팝업 창의 내용을 확인한 후 [삭제] 버튼을 클릭해 주십시오.
      • 선택한 규칙이 삭제됩니다.

    Application Load Balancer 모니터링

    선택한 기간에 따라 일정 주기로 수집한 Concurrent connection과 Connection per Second, Traffic In, Traffic Out, Available Host Count, Unavailable Host Count 정보를 각각 그래프로 확인할 수 있습니다.

    참고

    선택한 기간에 따라 수집 주기가 달라지며, 부하 분산을 처리하여 수집된 모니터링 정보는 최소 1분부터 최대 최근 1년까지 설정하여 확인할 수 있습니다.

    집계 주기(Interval)조회 기간
    1분 주기최대 6시간
    5분 주기최대 1일
    30분 주기최대 1주일
    2시간 주기최대 1달
    1일 주기1달 초과

    Application Load Balancer의 모니터링 정보를 확인하는 방법은 다음과 같습니다.

    1. 네이버 클라우드 플랫폼 콘솔에서 Services > Networking > Load Balancer 메뉴를 차례대로 클릭해 주십시오.
    2. Load Balancer 메뉴를 클릭해 주십시오.
    3. 모니터링할 Load Balancer를 선택한 후 [모니터링] 버튼을 클릭해 주십시오.
      • 로드밸런서 기본 모니터링 팝업 창이 나타나며, 모니터링 정보를 그래프로 확인할 수 있습니다.
      • 기간을 선택하여 선택된 기간 동안 수집된 모니터링 정보를 확인할 수 있습니다.
      • [새로고침] 버튼을 클릭하면 조회된 그래프가 새로고침 됩니다.
      • i_loadbalancer_enlargement을 클릭하면 확대된 그래프를 확인할 수 있으며, [X] 버튼을 클릭하여 수집된 모니터링 정보를 엑셀 파일로 다운로드할 수 있습니다.

    Application Load Balancer 삭제

    주의

    Load Balancer를 삭제하면 Route Table에 설정되어 있던 규칙이 같이 삭제됩니다. Route Table 규칙을 다른 서비스에서 이용 중인 경우, Load Balancer를 삭제하면 기능이 정상적으로 동작하지 않을 수 있습니다.

    Application Load Balancer를 삭제하는 방법은 다음과 같습니다.

    1. 네이버 클라우드 플랫폼 콘솔에서 Services > Networking > Load Balancer 메뉴를 차례대로 클릭해 주십시오.
    2. Load Balancer 메뉴를 클릭해 주십시오.
    3. 삭제할 Load Balancer를 선택한 후 [로드밸런서 삭제] 버튼을 클릭해 주십시오.
    4. 로드밸런서 삭제 팝업 창의 내용을 확인한 후 [삭제] 버튼을 클릭해 주십시오.
      • 선택한 Load Balancer가 삭제됩니다.
      • 사용하던 Public IP를 같이 반납할 수 있습니다. 반납하지 않은 IP는 재할당 할 수 있습니다.

    이 문서가 도움이 되었습니까?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.