5.3 KT Cloud CDN Global 이용방법

5.3.1 KT Cloud CDN Global 서비스 관리

kt cloud biz 의 모든 서비스는 포탈 내 클라우드 콘솔을 통해 관리되고 있습니다.(신청, 변경, Activation, Deactivation, 조회 등)
KT Cloud CDN Global 서비스는 [CDN Global] 메뉴를 통해 제어가 가능합니다.



ㅇ CDN 서비스 리스트: KT Cloud CDN Global 서비스를 조회하고, 신청/변경 및 서비스 Activation/Deactivation을 하실 수 있습니다.
ㅇ 통계: KT Cloud CDN Global 서비스의 다양한 통계 데이터를 일별/시간대별로 조회하실 수 있습니다.

특정 서비스를 체크할 경우, 하단의 상세정보 탭에서 해당 서비스의 정보를 확인하실 수 있습니다.
각 항목에 대한 설명은 바로 아래의 [서비스 신청] 에서 확인하실 수 있습니다.

ㅁ 서비스 신청



ㅇ 서비스 설정(필수 설정)

서비스 설정에서 입력받는 값은 기본적으로 입력해야 하는 값으로, 해당 값을 정의하는 것만으로 서비스 생성이 가능합니다.
필요 시 고객 환경에 맞게 각종 정책을 커스터마이징(기본 규칙 최적화) 또는 추가(캐싱 정책 추가/IP차단) 할 수 있습니다.

필요한 설정을 완료한 후, <신청 내역 확인> 버튼을 클릭하여 입력 정보를 확인하고 서비스 생성을 진행합니다.

   - 서비스 유형: KT Cloud CDN Global은 웹 기반의 컨텐츠(이미지, 동영상, 소프트웨어)를 전달하는 Download Delivery 서비스만을 지원합니다.
   - 서비스명: CDN 서비스를 구별하기 위한 서비스명을 자유롭게 입력합니다. (영문, 숫자, 점(.), 콤마(,), 하이픈(-)만 입력 가능)

   - 서비스 도메인: CDN 서비스가 적용될 도메인을 입력합니다. 직접 보유한 도메인이 없을 경우, KT Cloud biz가 제공하는
                          example.ucloudcdnglobal.com 과 같은 형태의 CDN도메인을 이용할 수 있습니다.

   - 원본 컨텐츠 서버: 원본 서버의 도메인 주소를 직접 입력하거나 KT Cloud storage의 파일박스를 원본 서버로 지정할 수 있습니다.


ㅇ 기본규칙 최적화

기본규칙 최적화에 대해 스크린샷 2개로 나누어(오리진 서버 설정 ~ 공통 캐싱 정책), (계층화된 캐싱 ~ Last Mile 압축지원) 설명 드립니다.

   

   - 호스트 헤더의 전달

     KT Cloud CDN Global이 원본 서버로 요청 전달 시, 전달되는 호스트 헤더 값을 지정할 수 있습니다. 
     원본 서버는 호스트헤더를 참고해서 어떤 컨텐츠를 전달할지에 대한 결정을 하며,
     일반적으로 최종 사용자의 웹 브라우저에서 전달한 호스트 헤더(Incoming Host Header)를 사용합니다.

     원본 서버가 오리진 호스트네임(Ex. origin-www.example.com)을 호스트로 가진 request만 허용 하는 정책을 가질 경우,
     Origin Hostname으로 설정을 변경할 수 있습니다. 
  
     기본 설정 값은 <Incoming Host Header> 이며 상품 신청 또는 수정 단계에서 <기본 규칙 최적화> 버튼을 클릭 후
     <Origin Hostname>으로 변경할 수 있습니다.

     단, 원본 컨텐츠 서버가 KT Cloud storage일 경우, 기본값은 Origin Hostname이며 변경이 불가합니다.


   - 원본 서버의 Gzip 압축 활용

     압축은 성능 최적화에 필요한 요소 중 하나로, KT Cloud CDN Global이 원본 서버로부터 컨텐츠를 전달받을 때
     Gzip 압축을 통해 원본 서버의 트래픽을 줄이고 성능을 높일 수 있습니다.

     이 기능을 사용하도록 설정한 경우 원본 서버에서 Gzip 압축을 지원해야만 하고 KT Cloud CDN Global은 “Accept-Encoding : gzip” 헤더를
     원본 서버로 전달하게 됩니다.

     기본 설정 값은 <미사용> 이며, 상품 신청 또는 수정 단계에서 <기본 규칙 최적화> 버튼을 클릭 후 <사용>으로 변경할 수 있습니다.


   - 실제 클라이언트 IP 헤더 지원

     CDN 서비스를 이용하는 경우, 원본 서버는 최종 사용자의 IP 주소가 아닌 CDN 내 캐시서버의 IP 주소를 Source IP로 인식합니다.
     
     고객이(보안 정책 등의 이유로) 최종 사용자의 IP 식별이 필요한 경우,
     KT Cloud CDN Global은 HTTP 헤더에 실제 사용자의 IP 주소를 입력하여 원본서버로 전달함으로써
     원본 서버가 실제 사용자의 IP 주소를 식별할 수 있는 기능을 제공합니다. 

     기본 설정 값은 <미사용> 이며, 상품 신청 또는 수정 단계에서 <기본 규칙 최적화> 버튼을 클릭 후 <사용>으로 변경 시,
     “True-Client-IP”헤더 (또는 사용자 지정 헤더명)에 실제 사용자의 IP 주소를 포함하여 원본 서버로 HTTP Request를 전달합니다.


   - 원본 서버와의 통신 포트 설정

     CDN과 원본 서버의 통신 포트를 변경하고자 할 경우에 사용합니다.

     최종 사용자가 브라우저 에서 접속하는 경우에는 HTTP/HTTPS(80/443)의 포트로 접속하여야 하지만
     KT Cloud CDN Global은 원본 서버의 접속 보안 정책에 따라 아래에 정의한 포트번호로 원본 서버에 접속하도록 할 수 있습니다.

     ※ 사용 가능한 포트 번호: 72, 80-89, 443, 488, 591, 777, 1080, 1088, 1111, 1443, 2080, 7001, 7070, 7612, 7777,
                                       8000-9001, 9090, 9901-9908, 11080-11110, 12900-12949, 20411, 45002, >=65536

 

   - 공통 캐싱 정책 설정

     KT Cloud CDN Global이 원본 컨텐츠를 얼마나 오래 캐시(보관)할지를 컨트롤하기 위해,
     최대 캐싱 기간을 초, 시간, 일 단위로 설정하거나(기본 설정 7일) 고객 원본 서버의 Cache-Control Expires 정책을 따르도록 설정할 수 있습니다.

     또한 특정 이유로 고객 원본 서버에서 컨텐츠를 가져오지 못하는 경우,
     캐시 서버에 저장되어 있는 컨텐츠를 전달할지(원본 서버의 장애에도 서비스 생존성을 높일 수 있습니다.), 
     혹은 항상 원본 서버에서 확인하여 전달할지 두 가지 정책을 제공합니다.

 

   - 계층화된 캐싱

     최종 사용자가 전세계에 분포되어 있는 경우 대륙 별 계층화된 캐싱 맵을 사용하여 원본 서버의 접속 부하를 줄이고 응답 속도를 개선할 수 있습니다.
     기본 설정 값은 <글로벌 맵> 이며, <기본 규칙 최적화> 버튼을 클릭 하여 <아시아 맵> 또는 <국내 맵>으로 변경할 수 있습니다. 

     글로벌 맵 을 사용하는 경우에는 모든 리전(북미, 유럽, 아시아)에 Parent Server가 할당되며 아시아 맵을 사용 시 아시아에만 Parent Server가 할당이 됩니다.

     


   - 쿼리 파라미터 캐시

     쿼리 문자열 파라미터는 원본 서버에서 실행 중인 스크립트에 의해 생성된 사용자 정의 콘텐츠를 반환하는데 자주 사용됩니다.
     KT Cloud CDN Global에서 원본 서버로 요청 시 <쿼리 문자열 파라미터를 포함>할지 여부를 선택할 수 있습니다. 

     원본 서버에서 URL의 쿼리 문자열에 따라 여러 버전의 오브젝트를 반환하는 경우 <쿼리 파라미터를 포함하여 캐시> (기본 설정값)를 선택해야 합니다.

     예를 들어 다음 쿼리 문자열은 CDN에서 두 개의 오브젝트를 캐싱하도록 합니다.
     만약 쿼리 문자열에 상관없이 항상 같은 sample.jpg를 반환하는 경우에도 두 개의 오브젝트를 캐싱합니다.

     http://example.ucloudcdnglobal.net/images/sample.jpg?parameter1=a

     http://example.ucloudcdnglobal.net/images/sample.jpg?parameter1=b

     원본 서버에서 쿼리 문자열에 상관없이 동일한 버전의 오브젝트를 반환하는 경우 <쿼리 파라미터를 무시하고 캐시>를 선택하여
     중복되는 캐싱을 줄이고 원본의 부하를 줄일 수 있습니다.


   - 대용량 파일 최적화

     대용량 파일의 캐싱 효율을 높이기 위해 100MB ~ 1.8GB 크기의 대용량 파일을 2MB 단위로 잘라서 캐싱 하는 기능을 제공합니다.
     기본 설정 값은 <사용> 이며, 필요 시 <기본 규칙 최적화> 버튼을 클릭 후 <미사용>으로 변경할 수 있습니다.

     ※ 대상 파일 확장자 : exe, bz2, dmz, gz, iso, mov, pkg, tar, tgz, wmv, wma, zip, webp, jxr, hhdp,wdp


   - Last Mile 압축 지원

     라스트 마일(CDN과 최종 사용자 구간)의 전송 성능 향상을 위해서 KT Cloud CDN Global은 최종 사용자에게 컨텐츠를 전달할 때,
     압축 가능한 (하단에 정의된) 컨텐츠들을 자동으로 gzip 압축해서 사용자에게 전달합니다.

     이 기능을 <사용>으로 설정하고 클라이언트에서 요청 헤더에 Accept-Encoding: gzip을 추가(최신 웹 브라우저 대부분은 기본적으로 이를 수행함)
     하도록 하면 이 기능을 사용할 수 있습니다. 기본 설정은 <사용>이며, 필요 시 <기본 규칙 최적화> 버튼을 클릭 후 <미사용>으로 변경할 수 있습니다.

     ※ 대상 컨텐츠 유형: text/html*, text/css*, application/x-javascript*, application/javascript*



ㅇ 개별 캐싱 정책 추가


공통 캐싱 정책에 우선하는 개별 캐싱 정책을 특정 조건(파일 확장자, 경로 또는 이 둘의 조합)별로 설정할 수 있습니다.
특정 확장자 또는 디렉토리에 따라, 캐싱 정책을 세부적으로 설정할 수 있습니다.

∗ 경로로 설정할 경우, /경로/.../경로/* 과 같이 입력해야 합니다. (Ex. /image/test/*)

예를 들면 갱신이 필요 없는 컨텐츠는 max-age를 1년으로 설정하여 오리진 트래픽을 줄이고 CDN 성능을 개선할 수 있습니다.
반면, 캐싱이 되어서는 안 되는 개인화된 컨텐츠는 max-age를 0으로 설정하여, 캐싱 기간을 최소화 할 수 있습니다.

신청 또는 수정화면의 하단 우측의 <개별 캐싱 정책 추가> 버튼을 누르면 개별 캐싱 정책을 설정할 수 있습니다.

공통 캐싱정책과 마찬가지로, KT Cloud CDN Global이 원본 컨텐츠를 얼마나 오래 캐시(보관)할지를 컨트롤하기 위해
최대 캐싱 기간을 초, 시간, 일 단위로 설정하거나(기본 설정 7일) 고객 원본 서버의 Cache-Control Expires 정책을 따르도록 설정할 수 있습니다.

또한 특정 이유로 고객 원본 서버에서 컨텐츠를 가져오지 못하는 경우,
캐시 서버에 저장되어 있는 컨텐츠를 전달할지(원본 서버의 장애에도 서비스 생존성을 높일 수 있습니다.), 
혹은 항상 원본 서버에서 확인하여 전달할지 두 가지 정책을 제공합니다.

ㅇ IP 차단



클라이언트 IP를 조건으로, 특정 IP 대역이거나 혹은 특정 IP 대역을 제외한 IP를 허용/차단하실 수 있습니다.

IP는 CIDR 형태나 개별 IP 모두 입력이 가능합니다.

 

ㅁ Activation/Deactivation

KT Cloud CDN Global 서비스는 서비스 시작/정지/해지의 개념 대신 Activation/Deactivation 이라는 개념을 사용합니다.

Activation은 서비스 활성화, Deactivation은 서비스 비활성화이며,
서비스 생성 시, 혹은 Activation 상태의 서비스 변경 시에는 자동으로 Activation 이 진행됩니다.

Activation 상태의 서비스의 중지를 원하시거나 더 이상 사용하지 않을 때에는 <Action -> Deactivation> 버튼을 클릭하여
Deactivation 상태로 전환합니다. Deactivation 상태의 서비스는 요금이 발생하지 않습니다.

Deactivation 상태의 서비스를 다시 활성화하려면 <Action -> Activation> 버튼을 클릭하여 다시 Activation 상태로 전환이 가능합니다.

Activation/Deactivation 작업에 소요되는 시간은 약 30분~1시간이며, 완료가 되면 완료메일이 발송됩니다.

ㅁ Purge

KT Cloud CDN Global에 저장(캐싱)된 컨텐츠를 비움으로써 원본 서버에서 변경된 새로운 컨텐츠를 갱신하여 최종 사용자에게 전달할 수 있습니다.
서비스 리스트 우측 상단의 <Action -> Purge> 버튼을 통해,

생성된 서비스 내 전체 컨텐츠를 대상으로 혹은 대상 URL별로 Purge를 할 수 있습니다.
Purge 작업은 약 5~10초가 소요됩니다.

URL Purge 시, CDN Standard와는 다르게 <http://> 를 포함한 전체 URL을 입력하셔야 합니다.