- 인쇄
- PDF
Application Load Balancer (VPC)
- 인쇄
- PDF
가입 절차
Load Balancer를 사용하려면 네이버 클라우드 플랫폼[Financial]에서 제공하는 콘솔 및 리소스등을 이용하기 위해 네이버 클라우드 플랫폼의 계정이 필요합니다.
네이버 클라우드 플랫폼[Financial]에 가입하면 모든 서비스들을 이용하실 수 있으며, 사용한 서비스에 대해서만 요금이 청구됩니다.
이미 계정이 있는 경우에는 해당 단계를 건너뛸 수 있습니다.
- 포털로 이동해 주십시오.
- 오른쪽 상단에 [회원가입] 버튼을 클릭하여 회원가입 페이지로 이동해 주십시오.
- 서비스 이용 약관 및 개인정보수집이용에 대한 안내 문구를 확인하고 동의해 주십시오.
- 법인 및 담당자 정보를 입력해 주십시오.
- 결제 수단을 선택해 주십시오.
- 직접 입금과 자동 이체 중 선택할 수 있습니다.
- 가입한 ID/PW를 통해 로그인해 주십시오.
- 결제수단 선택 및 등록을 완료합니다.
- 담당자의 가입 정보 및 금융 회원 여부 검증해 주십시오.
- 승인이 완료되면 SSL VPN 계정이 발급되어 메일로 전송됩니다.
- SSL VPN Client 접속 툴을 설치하고 실행해 주십시오.
- 발급된 SSL VPN 계정으로 로그인합니다.
9.서비스는 Financial 포털에 로그인하여 [Console] 버튼을 클릭하거나 도메인(www.fin-ncloud.com)을 직접 입력하여 콘솔에 접속해 사용해 주십시오.
- 발급된 SSL VPN 계정으로 로그인합니다.
Load Balancer 서비스 사용 절차
Load Balancer 생성
네이버 클라우드 플랫폼의 콘솔에 접속해 주십시오.
Services > Networking > Load Balancer 메뉴를 차례대로 클릭해 주십시오.
화면 중앙의 [Load Balancer 생성] 버튼을 클릭해 주십시오.
[애플리케이션 로드밸런서 생성] 버튼을 클릭해 주십시오.
Load Balancer 생성 페이지가 나타나면 사용할 Load Balancer의 이름을 입력해 주십시오.
Load Balancer의 네트워크 타입을 선택해 주십시오.
- Private IP 타입은 VPC 내부 사설 IP를 이용하여 내부 서버로부터의 부하 분산을 처리하며 VPC 외부에서는 접근할 수 없습니다.
- Public IP 타입은 VPC 외부 또는 인터넷에서 호출될 수 있도록 공인IP로 설정이 됩니다. 공인IP와 함께 제공되는 임의의 도메인을 이용하여 고객보유의 도메인 또는 CDN 서비스와 연결하여 활용할 수 있습니다.
Load Balancer의 성능 타입을 선택해 주십시오.
- 부하 처리 성능에 따라 Small / Medium / Large / Extra-large 중 선택할 수 있습니다. 각각 초당 연결수 (CPS) 기준 최소 30,000 / 60,000 / 90,000 / 120,000 개의 분산 처리를 보장합니다.
- TLS는 SSL Off-loading에 의해 TCP대비 약 1/10의 성능을 예상할 수 있으나 인증키 방식 및 크기에 따라 다소 차이가 있을 수 있습니다.
Load Balancer를 위치시킬 VPC와 Subnet을 선택합니다.
- Private IP를 선택한 경우, Private Load Balancer Subnet으로 생성된 Subnet만 선택할 수 있습니다.
- Public IP를 선택한 경우, Public Load Balancer Subnet으로 생성된 Subnet만 선택할 수 있습니다.
- Load Balancer는 전용 Subnet을 생성하여 배치해야 하며, 서버와 같은 Subnet에 위치되면 해당 서버로 로드밸런싱이 동작하지 않습니다.
- 각각의 Load Balancer 마다 별도의 Subnet을 생성할 필요는 없으나 가급적 C 클래스(255.255.255.0) 규모의 Subnet을 권장합니다.
- 공인 IP: 보유하고 있는 Public IP 또는 신규 Public IP 신청을 선택해 주십시오.
화면 하단의 [다음] 버튼을 클릭해 리스너 설정으로 이동해 주십시오.
Load Balancer 리스너 설정하기
Load Balancer의 기본 리스너가 동작할 프로토콜을 선택해 주십시오. (HTTP/HTTPS)
Load Balancer의 기본 리스너가 바인드할 포트를 설정해 주십시오.
오른쪽의 [추가] 를 클릭하여 리스너를 추가해 주십시오.
화면 하단의 [다음] 버튼을 클릭해 Target Group 선택 페이지로 이동해 주십시오.
인증서 설정하기 (리스너가 HTTPS인 경우)
- Certificate Manager에 등록된 인증서 중에서 서비스에 알맞은 인증서를 선택해 주십시오.
RSA-2048 이상 또는 ECDSA P256 공개키 알고리즘 인증서만 지원합니다.
- TLS Protocol 버전을 선택해 주십시오.
- TLS v1.0, TLS v1.1, TLS v1.2 중 선택할 수 있습니다.
- HTTPS 리스너가 지원할 Cipher Suite를 선택해 주십시오.
- LoadBalancer가 Client와 암호화 협상에서 제공할 암호화 기능들을 선택 할 수 있습니다.
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_RSA_WITH_AES_128_CBC_SHA
TLS_RSA_WITH_AES_128_CBC_SHA256
TLS_RSA_WITH_AES_128_GCM_SHA256
TLS_RSA_WITH_AES_256_CBC_SHA
TLS_RSA_WITH_AES_256_CBC_SHA256
TLS_RSA_WITH_AES_256_GCM_SHA384
TLS_DHE_RSA_WITH_AES_128_CBC_SHA
TLS_DHE_RSA_WITH_AES_128_CBC_SHA256
TLS_DHE_RSA_WITH_AES_256_CBC_SHA
TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 - TLS 1.3 의 경우 기본적으로 TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256 암호화를 지원하며 제어할 수는 없습니다.
- LoadBalancer가 Client와 암호화 협상에서 제공할 암호화 기능들을 선택 할 수 있습니다.
Target Group 설정하기
부하분산의 대상이 될 Target Group을 선택해 주십시오.
- 사전에 Target Group이 생성되어 있어야 합니다.
- Application Load Balancer는 프로토콜이 HTTP 또는 HTTPS로 생성된 Target Group만 연결할 수 있습니다.
화면 하단의 [다음] 버튼을 클릭하여 설정 정보 확인 페이지로 이동해 주십시오.
설정 정보를 최종 확인하고 화면 하단의 [로드밸런서 생성] 버튼을 클릭한 후 로드밸런서 생성을 시작해 주십시오.
바인딩된 서버의 ACG 및 NACL에 Load Balancer 서브넷 대역이 접근 소스 및 허용 포트로 반드시 포함되어 있어야 합니다.
로드밸런서 설정
로드밸런서 설정 변경하기
설정을 변경할 로드밸런서를 선택하고 [로드밸런서 설정 변경] 버튼을 클릭해 주십시오.
- 로드밸런서 부하 처리 성능에 따른 등급을 조정할 수 있습니다.
- 부하 처리 성능에 따라 Small / Medium / Large / Extra-large 중 선택할 수 있으며 각각 초당 연결수 (CPS) 기준 최소 30,000 / 60,000 / 90,000 / 120,000 개의 분산 처리를 보장합니다.
- HTTPS는 SSL Offloading에 의해 HTTP대비 약 1/10의 성능을 예상할 수 있으나 인증키 방식 및 크기에 따라 다소 차이가 있을 수 있습니다.
- 로드밸런서 부하 처리 성능에 따른 등급을 조정할 수 있습니다.
액세스 로그 수집을 설정할 수 있습니다.
- 로드밸런서를 통해 인입되는 요청 트래픽에 의해 발생한 로그를 CLA(Cloud Log Analytics)에 전달하여 저장합니다. CLA는 최대 100GB의 데이터를 최대 1개월간 보관하며, 영구 보관을 원하시는 경우 로그 자동 내보내기 설정을 통해서 Object Storage로 저장 할 수 있습니다.
- 액세스 로그 수집을 활성화 하기 위해서는 사전에 CLA 이용 신청을 완료해야 합니다.CLA 이용을 중도 해지하면 추가 로그 수집이 진행되지 않습니다.
- 다음 표에서는 액세스 로그 항목의 필드를 순서대로 설명합니다. 모든 필드는 공백으로 구분됩니다.
필드 | 설명 |
---|---|
HTTP Version | HTTP 버전 <예시> HTTP/1.1 |
client:port | 요청 클라이언트의 IP 주소 및 포트 |
request_processing_time | 로드밸런서가 요청을 수신한 시간부터 타깃으로 요청을 전송한 시간까지의 총 경과 시간(ms) |
target_connection_time | 로드밸런서가 타깃으로 TCP 연결 설정하는데 소요된 시간(ms) |
target_response_time | 타깃에서 로드밸런서로 응답을 보내는데 걸린 시간(ms) |
response_processing_time | 로드밸런서가 타깃으로 TCP 연결 설정하는데 소요된 시간(ms) |
target_status_code | 타깃의 응답 상태 코드 |
received_bytes | 클라이언트로부터 수신된 요청의 크기(Byte) |
sent_bytes | 클라이언트에게 회신한 응답의 크기(Byte) |
HTTP method | HTTP 메소드 <예시> GET, POST 등 |
"request" | - 큰 따옴표로 묶여있음 - host/uri + port 형식을 사용해 기록 |
"user_agent" | * 큰 따옴표로 묶여있음 -요청을 보낸 클라이언트를 식별하는 사용자 에이전트 문자열 - 문자열은 하나 이상의 제품 식별자, 제품[/버전]으로 이루어져 있음 - 문자열은 8KB까지 로깅. |
ssl_cipher | - [HTTPS] SSL 암호화 알고리즘 - HTTPS 리스너가 아닌 경우 -로 설정됨 (ex: AES-SHA) |
ssl_version | - [HTTPS] SSL 버전 - HTTPS 리스너가 아닌 경우 -로 설정됨 - <예시> TLSv1 |
request_creation_time | - 로드 밸런서가 클라이언트에서 요청을 받은 시간 |
서브넷 변경에 관한 기능은 빠른 시일 내에 제공하겠습니다.
리스너 설정 변경하기
리스너 설정을 변경할 로드밸런서를 선택해 주십시오.
[리스너 설정 변경] 버튼을 클릭해 주십시오.
- 리스너 설정 페이지로 이동합니다.
- 로드밸런서를 생성할 때설정한 리스너가 Default로 조회됩니다.
리스너 추가하기
[리스너 생성] 버튼을 클릭해 주십시오.
- 리스너 추가 페이지로 이동합니다.
리스너 동작할 프로토콜을 선택해 주십시오. (HTTP/HTTPS)
HTTP/2 활성화 여부를 체크해 주십시오. (옵션)
- HTTP/2는 국제 인터넷 표준화 기구 (IETF)에서 개발하는 HTTP 프로토콜의 두 번째 버전입니다. HTTP 헤더 데이터 압축, 서버 푸시 기술, TCP 연결 하나로 여러 요청을 다중화 처리하는등의 방법을 적용하여 웹 페이지 로드 지연시간을 감소시킵니다.
리스너가 바인드할 포트를 설정합니다.
Certificate Manager에 등록된 인증서 중에서 서비스에 알맞은 인증서를 선택해 주십시오.
TLS Protocol 버전을 선택해 주십시오.
- TLS v1.0, TLS v1.1, TLS v1.2 중 선택할 수 있습니다.
HTTPS 리스너가 지원할 Cipher Suite를 선택해 주십시오.
- LoadBalancer가 Client와 암호화 협상에서 제공할 암호화 기능들을 선택할 수 있습니다.
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_RSA_WITH_AES_128_CBC_SHA
TLS_RSA_WITH_AES_128_CBC_SHA256
TLS_RSA_WITH_AES_128_GCM_SHA256
TLS_RSA_WITH_AES_256_CBC_SHA
TLS_RSA_WITH_AES_256_CBC_SHA256
TLS_RSA_WITH_AES_256_GCM_SHA384
TLS_DHE_RSA_WITH_AES_128_CBC_SHA
TLS_DHE_RSA_WITH_AES_128_CBC_SHA256
TLS_DHE_RSA_WITH_AES_256_CBC_SHA
TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 - TLS 1.3 의 경우 기본적으로 TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256 암호화를 지원하며 제어할 수는 없습니다.
- LoadBalancer가 Client와 암호화 협상에서 제공할 암호화 기능들을 선택할 수 있습니다.
리스너 변경하기
변경할 리스너를 선택해 주십시오.
[리스너 생성] 버튼을 클릭해 주십시오.
리스너 동작할 프로토콜을 선택해 주십시오. (HTTP/HTTPS)
HTTP/2 활성화 여부를 체크해 주십시오. (옵션)
- HTTP/2는 국제 인터넷 표준화 기구 (IETF)에서 개발하는 HTTP 프로토콜의 두 번째 버전입니다. HTTP 헤더 데이터 압축, 서버 푸시 기술, TCP 연결 하나로 여러 요청을 다중화 처리하는등의 방법을 적용하여 웹 페이지 로드 지연시간을 감소시킵니다.
리스너가 바인드할 포트를 설정해 주십시오.
Certificate Manager에 등록된 인증서 중에서 서비스에 알맞은 인증서를 선택해 주십시오.
TLS Protocol 버전을 선택합니다.
- TLS v1.0, TLS v1.1, TLS v1.2 중 선택할 수 있으며 각 버전별로 네이버 클라우드 플랫폼에서 제공하는 Ciphers suite이 설정됩니다.
리스너 삭제하기
삭제할 리스너를 선택해 주십시오.
[리스너 삭제] 버튼을 클릭해 주십시오.
- 최소 1개의 리스너가 남아있어야 합니다.
규칙 조회 및 변경
규칙을 조회 및 변경하고자 하는 리스너를 선택해 주십시오.
[규칙 조회 및 변경] 버튼을 클릭해 규칙 변경 페이지로 이동해 주십시오.
- 규칙은 아래와 같은 특성을 지닙니다.
- 각 규칙은 "조건절"과 "액션"으로 이루어집니다.
- Default 규칙은 삭제될 수 없습니다.
- 각 규칙은 우선순위에 의해 순차대로 적용되며 적용되지 않은트래픽은 Default 규칙에 의해 동작합니다.
- 규칙은 아래와 같은 특성을 지닙니다.
규칙 추가
화면 상단에 위치한 [규칙 추가] 버튼을 클릭해 주십시오.
우선순위를 설정해 주십시오.
- 1-9999 까지의 숫자가 입력할 수 있습니다.
조건을 설정해 주십시오.
- 조건 유형은 Host Header, HTTP Header와 Path Pattern을 선택할 수 있습니다.
- Host Header, HTTP Header와 Path 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자까지 입력이 가능합니다.
- Host Header
조건을 입력한 후 [추가] 버튼을 클릭해 주십시오.
- 각 조건절은 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)가 됩니다.
액션을 설정해 주십시오.
- 액션 유형은 Target Group과 Redirection을 선택할 수 있으며, 한 가지만 선택할 수 있습니다.
- 액션이 Target Group인 경우, 다수의 Target Group을 지정하여 가중치를 부여할 수 있습니다.
- <예시> TestTG01의 가중치를 10, TestTG02의 가중치를 90으로 부여한 경우, 트래픽은 각각 1:9의 비율로 분산됩니다.
- 액션이 Redirection인 경우, 조건에 부합하는 모든 Request를 다른 URL로 전달합니다.
- Status Code(ResponseCode)는 301과 302 모두 지원합니다.
- Protocol 드롭박스의 #{protocol}을 이용하여 요청 protocol 그대로 Redirection 할 수 있습니다.
규칙 변경
변경할 규칙을 선택해 주십시오.
[규칙 변경] 버튼을 클릭해 주십시오.
규칙 변경 방법은 규칙 추가와 동일하오니 규칙 추가 내용을 참고해 주십시오.
규칙 제거
삭제할 규칙을 선택해 주십시오.
[규칙 제거] 버튼을 클릭해 주십시오.
- 규칙을 삭제해도 액션에 설정된 Target Group은 삭제되지 않습니다.
Load Balancer 삭제하기
삭제할 Load Balancer를 선택해 주십시오.
화면 상단의 [Load Balancer 삭제] 버튼을 클릭해 주십시오.
Load Balancer 삭제 팝업 창이 나타나면 하단의 [삭제] 버튼을 클릭하여 Load Balancer를 삭제해 주십시오.
Load Balancer를 삭제하면 설정되어 있던 Route Table에 규칙이 같이 삭제됩니다. 다른 서비스에서 이용 중인 경우 기능이 정상적으로 동작하지 않을 수 있습니다.