아마존 웹 서비스를 다루는 기술 12장 - 3. CloudFront 커스텀 오리진 사용하기
- 책 또는 웹사이트의 내용을 복제하여 다른 곳에 게시하는 것을 금지합니다.
- 책 또는 웹사이트의 내용을 발췌, 요약하여 발표 자료, 블로그 포스팅 등으로 만드는 것을 금지합니다.
전 세계에 콘텐츠를 배포하는 CDN 서비스인 CloudFront
이재홍 http://www.pyrasis.com 2014.03.24 ~ 2014.06.30
CloudFront 커스텀 오리진 사용하기
CloudFront의 기본 오리진은 S3 입니다. S3 이외에 EC2 인스턴스, ELB, 외부 웹 서버를 오리진으로 사용하는 것을 커스텀 오리진Custom Origin이라고 합니다. 커스텀 오리진은 동적 콘텐츠 전송Dynamic Content Delivery이 필요할 때 사용합니다. Node.js 혹은 PHP, JSP, ASP 등의 서버 사이드 스크립트에서 동적으로 생성되는 웹 페이지를 캐시할 수 있습니다. 특히, 커스텀 오리진을 사용하면 동일한 도메인에서 POST, PUT, DELETE 등의 메서드를 사용할 수 있어 로그인이나 글 쓰기 기능도 구현할 수 있습니다.
커스텀 오리진의 필수 조건은 웹 서버입니다. 운영체제, 웹 서버 애플리케이션, 프로그래밍 언어의 종류와는 상관이 없습니다.
EC2와 CloudFront 연동하기
EC2 인스턴스에 웹 서버를 실행하고 CloudFront와 연동하는 방법을 알아보겠습니다.
그림 12-19 EC2와 CloudFront 연동하기
이전에 생성한 EC2 인스턴스(Example Server)를 그대로 사용하겠습니다. EC2 인스턴스가 생성되어 있지 않다면 ‘4.3 EC2 인스턴스 생성하기’를 참조하여 EC2 인스턴스를 생성하기 바랍니다(Amazon Linux 설치를 권장합니다).
웹 서버는 Node.js로 간단하게 실행하겠습니다. 웹 서버는 Apache나 Nginx를 사용해도 상관 없습니다. SSH로 EC2 인스턴스(Example Server)에 접속한 뒤 다음과 같이 입력하여 Node.js와 npm을 설치합니다. Node.js 소스를 컴파일 하기에는 시간이 오래 걸리기 때문에 패키지를 설치하겠습니다. yum은 Amazon Linux, RHEL, CentOS용 패키지 설치 명령입니다(Amazon Linux는 EPEL 저장소가 이미 설치되어 있습니다).
[ec2-user@ip-172-31-21-171 ~]$ sudo yum -y install nodejs npm --enablerepo=epel