AWS, Azure등 Public Cloud는 VM, Container 등과 같은 Computing Resource와 DB등과 같은 PaaS 제공하는 Provider이다. 하지만 단순하게 컴퓨팅을 제공하는 것 뿐 아니라 다양한 Solution도 함께 제공 하고 있다. 이를 광고 하고 Sales 하는 사람들이 Solution Architect(SA)들이다. 나처럼 대기업에 속해 있는 사람들은 이분들과 대화 하는 것이 비교적 쉬울 수 있지만 Individual 개발자 혹은 Start-up 개발자들에게는 접근성이 떨어지는 것이 현실적인 문제일 것이다.
이런 고충(?)을 해결해 주기 위해서 인지 AWS 및 Azure등은 Documentation과 기능별 예제가 잘 되어 있다. 특히 AWS의 경우 CloudFormation으로 모든 것들이 원클릭으로 될 수 있도록 제공하고 있다. 이런 단위 기능들을 역어서 서비스를 만드는것은 당연히 서비스 개발자의 몫이긴 하지만… 단위 기능이라도 가이드가 잘되어 있다는건 매우 반가운 일이 아닐 수 없는 것이다.
이번 포스팅에서 해볼 것은 동영상 Live Stream 예제이다. YouTube를 필두로 다양한 동영상 서비스가 나오고 있고, 많은 Start-up들이 이를 기반으로 서비스를 기획하고 있는 것으로 알고 있다. 이번 포스팅은 Live Stream 포맷으로 변환된 m3u8 포맷에 대해서 동영상 Endpoint를 만들어 주는 Cloud Formation 예제를 실제로 돌려 보는 예제이다. 아래 AWS Guide에 따라서 클릭만 했을 뿐이다. ^^;;
https://aws.amazon.com/ko/solutions/implementations/live-streaming-on-aws/
구현 안내서 보기를 클릭하면 영문으로 된 안내 페이지로 이동한다. 영어라고 주눅들지 마리고 과감히 클릭해 보자!
상세한 내용을 알고싶은 사람들은 내용을 하나씩 읽어 보면 피와 살이 될 것 같다. 하지만 필자 처럼 결과를 빠르고 보고 싶은 사람은 Deployment를 빠르게 누르고 Launch Solution을 바로 눌러 보자!
단! 여기로 진입하기 전에 AWS 계정이 있어야 하고, 결제 수단이 등록되어 있어야 한다. 그리고 기본 예제가 ‘버지니아 리전’을 기준으로 동작하기 때문에 예제이지만 비용 부담이 꽤 있을 수 있다!!!!!!!!!! 명심하고 진행하도록 하자.
Launch Solution을 클릭 하면 CloudFormation에서 스택(Stack)을 생성한다. 스택은 어떤 기능을 하기 위해서 필요한 AWS의 다양한 서비스의 집합이다. 즉, 여러분이 비용을 지불해야 하는 대상 서비들이다. AWS의 모든 서비스가 과금이 되는것은 아니지만 이 예제에는 과금이되는 서비스가 꽤 많다. 다시 한 번 말하지만 돈이 들수 있는 예제이니 신중이 버튼을 누르기 바란다!!!!!
아마존에서 제공하는 CloudFormation Template 위치이니 다음을 클릭
스택 이름은 본인에게 맞도록 변경한다. Source URL은 기본으로 제공되는 소스가 모터 사이틀 경주 이다. 그냥 사용해도 되지만 이 예제가 잘 동작하는지 확인하기 위해서 바꿔 보도록 한다. 필자는 아래 URL에 있는 ‘https://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8’를 사용하였다.
https://bitmovin.com/mpeg-dash-hls-examples-sample-streams/
스택 옵션 부터는 다음 다음을 클릭 클릭 하도록 하자.
검토 단계에서 스택 생성을 누르고 5~10분 정도 기다리고 나면 아래와 같이 Create Completed가 나오면 성공이다.
만약 소스를 m3u8을 지정하지 않으면 MediaLive에서 생성에 실펴 한다. 그럼 스택 전체를 삭제 하면 되는데 첫번째는 삭제 할 수 없다고 에러를 만나게 된다. 그럼 MediaLive를 개별 삭제 후 다시 삭제를 진행하면 깔끔하게 삭제가 된다.
상단 탭중에서 출력(Output)을 보면 소스가 방송이 되는 URL을 알 수 있다.
URL을 클릭해 보면 Live Stream이 나오고 있는 것을 알 수 있다.
가격적인 이슈로 여러분은 위 동영상을 확인하실 수는 없을거에요… ㅠ.ㅠ
아무튼 이렇게 Source -> AWS의 다양한 서비스 -> Live Stream을 확인할 수 있습니다. 이런 Component를 어떻게 엮어서 서비스를 할수 있는지에 대해서는 다음 포스팅에서 이야기 해보도록 하겠습니다.