지난 시간에 설명드린 CDN 2.0에 이어 CDN 3.0 이용방법에 대해서 설명드리겠습니다.
KT Cloud CDN 3.0 이용방법
KT Cloud CDN Standard 서비스 관리
CDN3.0 서비스를 이용하시려면, 콘솔 All Services메뉴에서 에서 CDN Standard (CDN3.0)을 체크하여,
상품신청을 진행해야 콘솔에서 CDN3.0 이용이 가능합니다.
- * 기존 CDN Standard(CDN2.0)와 CDN3.0 서비스는 별개의 서비스이며, CDN2.0의 신규청약은 불가합니다.
KT Cloud CDN 3.0 서비스 관리
KT Cloud 의 모든 서비스는 포탈 내 클라우드 콘솔을 통해 관리되고 있어(생성, 변경, 정지, 삭제, 조회 등) [CDN3.0] 메뉴를 통해 제어가 가능합니다.
- - CDN 서비스 리스트: KT Cloud CDN 3.0 서비스를 조회하고, 생성/변경 및 서비스 정지/삭제를 하실 수 있습니다.
- 특정 서비스를 체크할 경우, [...] > [상세 정보] 메뉴를 통해 해당 서비스의 정보를 확인하실 수 있습니다.
- 각 항목에 대한 설명은 바로 아래의 [서비스 생성] 에서 확인하실 수 있습니다.
- - 통계: KT Cloud CDN 3.0 서비스의 다양한 통계 데이터를 일별/시간대별로 조회하실 수 있습니다.
1. 서비스 생성
서비스 설정(필수 설정)
서비스 설정에서 입력 받는 값은 기본적으로 입력해야 하는 값으로 오리진 설정과 함께 필수 설정입니다.
필요 시 이후 단계에서 고객 환경에 맞게 각종 캐싱 정책을 선택할 수 있습니다.
필요한 설정을 완료한 후, <다음> 버튼을 클릭하여 오리진 설정으로 이동됩니다.
1) 서비스 유형:
- KT Cloud CDN은 웹 기반의 컨텐츠(이미지, 동영상, 소프트웨어)를 전달하는 다운로드 서비스와 컨텐츠를 다운로드 없이 볼 수 있는 스트리밍 서비스를 지원합니다.
2) 서비스명
- CDN 서비스를 구별하기 위한 서비스명을 자유롭게 입력합니다. (소문자, 영문, 숫자만 입력 가능, 첫 문자는 반드시 영문이어야 합니다.)
3) 서비스 도메인
- CDN 서비스가 적용될 도메인을 입력합니다.
- 직접 보유한 도메인이 없을 경우, <KT Cloud 도메인 사용>을 선택하면, KT Cloud가 제공하는 example.ktcdn.co.kr 과 같은 형태의 CDN 도메인을 이용할 수 있습니다.(영문, 숫자, 점(.), 콤마(,), 하이픈(-)만 입력 가능합니다)
4) 서비스 프로토콜
- 서비스 프로토콜을 HTTPS로 제공 가능합니다.
- 고객도메인 사용, HTTPS를 선택하는 경우 SSL 인증서 정보를 업로드하여야 합니다.
※ SSL 인증서 등록:
- 서비스 도메인을 KT Cloud 도메인으로 이용 시, *.ktcdn.co.kr 도메인에 대한 인증서를 KT에서 제공합니다.
- 인증서 업로드 시, 반드시 개인키가 암호화 해제상태여야 등록 가능합니다.
* 인증서가 암호화되어 있을 경우, 아래의 openSSL 명령어로 해제 후 등록 바랍니다.
openssl rsa -in <Encrypted key filename> -out < output file name>
* 자세한 인증서 등록가이드는 하단의 [SSL 인증서 등록 가이드]를 참고해주세요.
5) 보안 URL 사용 (JWT)
- 보안 URL 사용이 가능하며 JWT 형식만 지원합니다.
- 보안 URL 사용시 생성된 Secret Key로, 보안URL을 사용 가능합니다.
- Secret Key는 생성된 서비스의 [상세 정보] 메뉴에서 확인 가능합니다.
6) 서비스 설명(선택)
- 서비스의 특성 및 사용에 특이사항을 기록할 수 있습니다. 선택사항으로, 입력하지 않아도 신청이 가능합니다.
오리진 설정(필수 설정)
원본 서버의 도메인 주소를 직접 입력하거나 KT Cloud storage의 파일 박스를 원본 서버로 지정할 수 있습니다.
직접 입력을 선택 하는 경우 아래의 항목을 입력하셔야 합니다.
1) 오리진 위치
- 오리진 서버의 도메인이나 IP를 입력 합니다.
2) Port
- CDN과 원본 서버의 통신 포트를 변경하고자 할 경우에 사용합니다.
- 오리진 서버와 연결은 HTTP로 연결됩니다.
3) 오리진 경로
- 특정 Path 단위의 오리진 설정이 필요한 경우 입력하여 사용할 수 있습니다.
4) 호스트 헤더의 전달
- KT Cloud CDN이 원본 서버로 요청 전달 시, 전달되는 호스트 헤더 값을 지정할 수 있습니다.
- 원본 서버는 호스트헤더를 참고해서 어떤 컨텐츠를 전달할 것인지에 대한 결정을 하며, 일반적으로 사용자의 웹 브라우저에서 전달한 호스트 헤더(Incoming Host Header)를 사용합니다.
- 원본 서버가 오리진 호스트 네임(Ex. origin-www.example.com)을 호스트로 가진 request만 허용 하는 정책을 가질 경우 Origin Hostname으로 설정을 변경할 수 있습니다.
- 단, 원본 컨텐츠 서버가 KT Cloud storage일 경우, 기본값은 Origin Hostname이며 변경이 불가합니다.
5) 실제 클라이언트 IP헤더 지원
- CDN 서비스를 이용하는 경우, 원본 서버는 최종 사용자의 IP 주소가 아닌 CDN 내 캐시 서버의 IP 주소를 Source IP로 인식합니다.
- 고객이(보안 정책 등의 이유로) 최종 사용자의 IP 식별을 위해 KT Cloud CDN Global은 HTTP 헤더에 실제 사용자의 IP 주소를 입력하여 원본 서버로 전달함으로써 원본 서버가 실제 사용자의 IP 주소를 식별할 수 있는 기능을 제공합니다.
캐싱 설정(선택 설정)
1) 최대 캐싱 기간 설정
- CDN서버에 오브젝트를 캐시(보관)할 기간을 설정합니다.
2) Query 파라미터 무시
- 쿼리 문자열 파라미터는 원본 서버에서 실행 중인 스크립트에 의해 생성된 사용자 정의 컨텐츠를 반환하는데 자주 사용됩니다.
- 원본 서버에서 쿼리 문자열에 상관없이 동일한 버전의 오브젝트를 반환하는 경우 <쿼리 파라미터를 무시>의 사용을 선택하여 중복되는 캐싱을 줄이고 원본의 부하를 줄일 수 있습니다.
3) Last Mile 압축 지원
- 라스트 마일(CDN과 최종 사용자 구간)의 전송 성능 향상을 위해서 KT Cloud CDN은 최종 사용자에게 컨텐츠를 전달할 때, 압축 가능한 (하단에 정의된) 컨텐츠들을 자동으로 gzip 압축해서 사용자에게 전달합니다.
- <사용>으로 설정하고 클라이언트에서 요청 헤더에 Accept-Encoding: gzip을 추가하도록 하면 해당 기능을 사용할 수 있습니다. (최신 웹 브라우저 대부분은 기본적으로 이를 수행함)
- 기본 설정은 <미사용>이며, 필요 시 <사용>으로 변경할 수 있습니다.
4) Refer 기준 ACL 설정
- 지정된 도메인에만 제공하도록 허용할 referrer 도메인 정보를 입력하여 허용되지 않은 도메인은 차단할 수 있습니다. (숫자, 영문자, 특수문자'*','-','.'만 허용)
5) 캐싱 기본 설정 사항
- 캐싱 효율을 높이기 위한 기본 설정으로 변경은 불가능한 설정 정보입니다.
- 캐시 서버에 존재한 캐시 오브젝트를 전달합니다.
- 캐시 효율을 높이기 위해서 Client No-Cache 요청을 무시합니다.
- 캐시 효율을 높이기 위해서 Client 중단 시 컨텐츠 캐싱을 유지합니다.
5) 캐싱 기본 설정 사항
- 캐싱 효율을 높이기 위한 기본 설정으로 변경은 불가능한 설정 정보입니다.
- 캐시 서버에 존재한 캐시 오브젝트를 전달합니다.
- 캐시 효율을 높이기 위해서 Client No-Cache 요청을 무시합니다.
- 캐시 효율을 높이기 위해서 Client 중단 시 컨텐츠 캐싱을 유지합니다.
신청 내역 확인
서비스 설정, 오리진 설정, 캐싱 설정에 대한 설정 내역을 확인한 후 <신청> 버튼을 클릭하여 서비스 신청 절차를 완료합니다.
신청 처리와 함께 서비스는 <사용> 상태가 됩니다.
2. 서비스 시작/정지/해지
- 사용 중인 CDN 서비스를 선택 후, [정지] 버튼을 클릭하여 서비스 정지가 가능합니다.
- 서비스를 정지하여도 기본 요금이 발생하므로 주의해주시기 바랍니다.
- 정지한 서비스는 [시작] 버튼을 클릭하여 언제든지 재시작이 가능합니다.
- 정지된 CDN 서비스를 선택 후, [삭제] 버튼을 클릭하여 서비스 해지가 가능합니다.
Purge
Purge란?
- Purge는 CDN 캐시서버에 저장되어있는 컨텐츠를 삭제하는 툴(tool)이며, 원본서버의 컨텐츠가 변경되었을 때 즉각적으로 캐시서버에 반영하기 위한 방법으로 제공되고 있습니다.
- 캐시서버는 사용자로부터 요청받은 컨텐츠가 저장되어 있지 않을 경우, 원본서버로부터 다운로드하여 다시 캐싱하도록 되어 있는데 이런 캐시서버의 특성을 이용하여 원본서버에서 변경된 컨텐츠가 캐시서버에 반영될 수 있도록 Purge를 사용하여 캐시서버의 기존 컨텐츠를 삭제합니다.
- 만약 원본서버의 컨텐츠를 변경하신 후에 Purge를 하지 않으면 캐시서버는 갱신주기에 의해서 원본서버의 컨텐츠가 변경되었음을 판단하기 전까지는 캐시서버에 저장된 컨텐츠를 계속 서비스 하게 됩니다.
- Purge는 CDN서비스를 하고 있는 캐시서버의 컨텐츠를 삭제하는 것이며 원본서버의 컨텐츠를 컨트롤 하지는 않습니다.
- 무분별한 Purge 사용은 원본서버의 부하로 이어질 수 있으므로 한번에 많은 Purge에는 주의를 요합니다.
Purge 주의사항
- 1) Purge 사용은 원본서버의 부하로 이어질 수 있으므로 한번에 많은 양의 Purge 사용은 주의를 요합니다.
- 2) 캐시서버에 저장된 컨텐츠를 사용자가 이용하고 있을 경우 Purge 수행이 불가합니다.
- 3) Purge 수행이 불가 할 경우 원본서버의 컨텐츠 파일명을 변경하여 다시 업로드하는 방법을 권고 드립니다.
- (파일명 변경으로 인해 캐시서버에서 응답을 받지 못하므로 원본서버에서 컨텐츠를 찾아오기 때문)
- 1) CDN 서비스 선택 > [...] > [Purge] 클릭
- 2) 도메인 선택:
- - CNAME 대상 도메인 또는 실제 사용 중인 서비스 도메인 선택가능
- (xxx-서비스명.ktcdn.co.kr 도메인은 해당 도메인을 실제 서비스도메인으로 사용하는 경우에만 선택)
- 3) Purge 할 URI 입력:
- - 파일명 입력 시 경로와 파일명을 정확히 입력해야 하며, 여러 개 등록 시에는 엔터로 구분 (최대 30개까지 가능)
- * 반드시 도메인을 제외한 경로를 입력해주세요. ex) /images/sample.jpg
- 4) Purge 실행
※ Purge 주의사항
- - Purge할 파일명을 입력 시, 경로와 파일명을 정확히 입력하셔아 합니다.
- - 디렉토리 Purge는 지원하지 않으며, URL단위로 Purge 시 한번에 최대 30개 파일까지 Purge 가능합니다.
- ex) /test/ 요청 시, 디렉토리 Purge로 인식은 하되, 실제 Purge 동작은 하지 않으며, 에러메시지가 발생되지 않습니다.
- /test 요청 시, 파일 Purge로 인식하며, 루트 하위 test 라는 파일명의 컨텐츠가 있는 경우 Purge 동작 하며, 없더라도 성공메시지를 리턴합니다.
- - 전체 Purge 시, 오리진 서버에 부하를 줄 수 있으니 유의하시길 바랍니다.
KT Cloud storage 연동
- KT Cloud CDN 3.0 서비스의 원본 컨텐츠 서버로 KT Cloud storage 파일박스 선택이 가능합니다.
- 연동을 위해서는 먼저 다음과 같이 파일박스의 접근권한을 공개로 설정하여야 합니다.
접근권한 설정을 [공개]로 설정 시, 다음과 같이 원본 컨텐츠 서버에 파일 박스가 노출됩니다.
통계
클라우드 콘솔 > KT Cloud CDN > 통계 메뉴에서 CDN의 사용 통계 정보를 선택하여 확인하실 수 있습니다.
통계 타입(Traffic/Location/Contents), 서비스, 기간(일별/시간대별)을 선택하신 후 검색 버튼을 클릭하시면 하단에 해당 기간 동안의 통계 데이터의 Chart와 상세데이터가 나타납니다.
통계의 상세 데이터는 표 형태로 조회되며 엑셀로 다운로드 가능합니다.
SSL 인증서 등록 가이드
CDN 서비스 생성시, 서비스도메인을 HTTPS로 고객사 도메인으로 생성할 경우, SSL인증서를 직접 등록해야 합니다.
KT Cloud에서 제공하는 도메인(*.ktcdn.co.kr)을 사용하실 경우, 별도의 SSL인증서를 등록하실 필요 없습니다.
1) Private Key: RSA 형식의 비밀키 파일의 txt내용을 입력합니다.
'-----BEGIN RSA CERTIFICATE-----'로 시작하여, '-----END RSA CERTIFICATE-----'로 끝나는 텍스트를 공백없이 입력합니다.
이때, 개인키 비밀번호 암호화가 해제된 상태여야 정상적으로 등록이 가능합니다.
* 인증서가 암호화되어 있을 경우, 아래 openSSL 명령어를 통해 암호화 해제후 등록바랍니다.
openssl rsa -in <Encrypted key filename> -out < output file name>
2) Public Key Certificate: public key가 포함된 도메인 인증서 PEM형식의 crt파일의 txt내용을 입력합니다.
-----BEGIN CERTIFICATE-----로 시작하여, ------END CERTIFICATE-----로 끝나는 텍스트를 공백없이 입력합니다.
3) Certification Chain: Certificate Chain은 외부에서 인증서 발급/구매 시 Chain 인증서가 함께 발급된 경우에는 인증서 검증 시 오류가 발생하기 때문에 반드시 입력해야 하며, Root CA가 포함된 Certification Chain으로 입력해야 합니다.
- - ’인증 경로’에서 Certification Chain을 확인합니다. 등록하고자 하는 인증서 상위의 모든 chain을 추출하여 Certification Chain란에 입력하여야 합니다
인증서 등록 방법
1) Root CA 인증서 PEM 파일 추출
- - Root CA 인증서 PEM 파일을 메모장으로 실행하여, '-----BEGIN CERTIFICATE-----'로 시작하여, '-----END CERTIFICATE-----'로 끝나는지 확인합니다.
2) Sub CA 인증서 PEM 파일 추출
- - Sub CA가 복수일 경우 모든 Sub CA 인증서 PEM 파일을 동일한 방법으로 추출합니다.
- 메모장 등으로 실행 시 위와 같이 ‘-----BEGIN CERTIFICATE----- (생략) -----END CERTIFICATE-----‘로 끝나는지 확인합니다.
- Sub CA가 복수일 경우 모든 Sub CA 인증서 PEM 파일을 동일한 방법으로 추출합니다.
3) PEM 파일 합쳐서 입력
- - Root CA 인증서까지 추출이 완료되었으면 모든 CA 인증서 PEM 파일의 텍스트를 합쳐 ‘Certificate Chain’에 입력합니다.
- 메모장 등을 실행하여 등록하려는 인증서 바로 위의 Root CA부터 Sub CA까지 ‘-----BEGIN CERTIFICATE-----' (생략) '-----END CERTIFICATE-----‘ 내용을 순서대로 복사 후 붙여 넣기 합니다.
인증서 검증
1. OpenSSL 명령어
openssl rsa -noout -in mykey.key
openssl x509 -nooout -in mycert.crt
2. 인증서 검증 URL 접속을 통한 검증
'CSP (Cloud Service Provider) > KT Cloud' 카테고리의 다른 글
[KT Cloud] CDN Standard 3.0 기능 (0) | 2022.12.27 |
---|---|
[KT Cloud] CDN Standard 2.0 기능 (0) | 2022.12.19 |
[KT Cloud] CDN Standard 이용방법( CDN 2.0) (0) | 2022.12.19 |
[KT Cloud] CDN Standard (0) | 2022.12.19 |
[KT Cloud] OKD(Open Shift)를 이용한 K2P 사용 가이드 (1) (1) | 2022.12.12 |
댓글