音楽配信プラットフォームと AWS Snowball を利用したデータ移行 AWS Summit Tokyo 2017 2017.5.31 株式会社レーベルゲート
プロフィール 配信ビジネス部ソリューション課課長久慈道晃史 ( くじみちてるふみ ) 1979 年静岡県三島市に生まれる 2002 年商社系 SIer ソリューション部門 2006 年ソニー フェリカネットワークスおサイフケータイ関連事業 2010 年ソニーミュージック レーベルゲートにて音楽配信事業 2017/5/31 2
とは? 2017/5/31 3
レーベルゲートとは? 2000 年 4 月レコード会社の共同出資により設立 著作権侵害増加を危惧し 株式会社ソニー ミュージックエンタテインメントが中核となり音楽業界各社出資の下 株式会社レーベルゲート設立 2004 年 4 月 10 月 世界初のレコード会社が運営する音楽配信サービス mora を開始 Windows Media Player 対応の音楽 / 動画配信サービス mora win を開始 2005 年レコード会社各社への音楽配信への楽曲提供 プラットフォーム提供 2010 年 4 月 Android で国内初の音楽配信サービス mora touch を開始 2012 年 10 月 nondrm 配信を公式サービスとして日本で最初に開始 同時に AWS の利用を開始 2017/5/31 4
AAC 最高音質 - AAC-LC 320kbps ビデオ - MP4 無圧縮 FLAC(FLAC-uncompressed) - FLAC 44.1kHz~192kHz 24bit DSD - DSD 2.8MHz~11.2MHz 1bit 国内最大級規模のハイレゾ音源を保有 2017/5/31 5
http://mora.jp/special/onebitious-records/ 2017/5/31 6
2017 年 3 月音楽専門配信サイト初 キャリア決済 2017/5/31 7
レーベルゲートの音楽配信プラットフォームのご紹介 2017/5/31 8
配信プラットフォームの概要 音楽レーベル 製品管理システム ストアシステム 配信システム mora ユーザ 基幹システム 2017/5/31 9
配信プラットフォームの概要 音楽レーベル 製品管理システム ストアシステム 4 3 1 2 製品管理 配信情報管理 ストアサーバ 商品閲覧 検索 AWS CloudFront 配信システム オーサリング処理 5 オーサリング処理後 配信コンテンツ 配信制御 サーバ AWS CloudFront SignedURL 試聴 ダウンロード 基幹システム オーサリング処理前 製品マスター 2017/5/31 アカウント管理 サーバ 決済サーバ 10
AWS: オンプレミス システム環境推移 グループ初コンシューマーサービスへの AWS 利用 サーバ購入を停止 仮想環境 AWS 移行 AWS 完全移行 FY2012 10 月 FY2014 FY2015 FY2016 FY2017 2017/5/31 11
規模の変化 Amazon S3 Amazon CloudFront Amazon EC2 Amazon RDS 2012 年 10 月 800 GB 200 TB 10 Instances 2 Instances 1000 10 10 10 2017 年 4 月 800 TB 2PB 100 Instances 20 Instances 2017/5/31 12
AWS の利用を拡大する理由 稼働率と可用性の高さ 予測不能のアクセス数に対応可能 セキュアで高速なダウンロードサービスの提供毎日増加を続けるコンテンツを保存可能な信頼性の高いストレージサービス スモールスタートも柔軟なシステム構成変更も可能 2017/5/31 13
順調に見えた AWS 移行だったが 2017/5/31 14
2013 年 10 月 ハイレゾ音源の配信を開始 平均ファイルサイズ 4MB 200MB 2017/5/31 15
ストレージ使用量の推移 ストレージ消費が加速 1 ヶ月で 10TB 増加 製品マスター 300TB の S3 移行を決意 2017/5/31 16
Snowball 導入プロセスと実績 2017/5/31 17
検討と選択 移行データ :300TB Snowball インターネット回線 専用線 転送量 : 10TB/ 日 転送量 : 0.5TB/ 日 転送量 : 10TB/ 日 必要日数 : 32 日 必要日数 : 600 日 必要日数 : 60 日 費用 : 費用 : 追加なし費用 : 準備期間 :2 日 DC 内のネットワーク :1Gbps インターネットへの出口 :200Mbps 実測転送速度 :7MB/s サービス 業務のトラフィックも共用 契約 準備期間 :30 日 DC 内のネットワーク :1Gbps は変わらないため 転送量は Snowball との差がないと想定 2017/5/31 18
Snowball を選択 転送量 : 必要日数 : 費用 : Snowball 10TB/ 日 32 日小 < 選択の理由 > ストレージの消費ペース 短期間移行へのチャレンジ 継続的ではなく 1 回の移行 2017/5/31 19
参考 :Snowball の費用 <Snowball の費用 > Snowball Job 毎の利用料 $250 (80TB) $200 (50TB) 転送量 : 10TB/ 日 ex: $250 台数 必要日数 : 費用 : 32 日小 追加利用料 データ転送 (S3 インポート ) $15 / 日 $0 ( 無料 ) 転送期間が 10 日を超えた日数 配送費用 配送場所によって異なる プレビュー期間時点 2017/5/31 20
Snowball の台数 1 台 Snowball 80TB 実行領域 :70TB 移行データ 300TB 5 台 2017/5/31 21
Snowballの利用手順 事前準備 端末の準備 Snowballクライアント設定 データ転送速度の見積り Snowballコマンド ジョブ作成 Jobの作成 AWSコンソール 1ジョブ 1ノード 運搬 受領 配送先はDCに直接 配送先 設置先 日時指定ができないため注意 データ転送 返送 付属の返送用伝票を使用 S3インポート SnowballのデータをS3へImport プレビュー期間時点 2017/5/31 22
Snowball を設置した際の環境概要 Storage 1GbE client 2 台 1GbE AWS Snowball import AWS S3 Bucket スケールアウト NAS 高スループット高 IOPS 推奨 CPU Memory Network I/F 16 Core 64 GB 10 GbE 今回使用 24 Core 64 GB 1 GbE 2017/5/31 23
机上では 32 日で移行が完了する予定だったが 2017/5/31 24
実績 事前準備 端末の準備 Snowballクライアント設定 データ転送速度の見積り Snowballコマンド ジョブ作成 Jobの作成 AWSコンソール 1ジョブ 1ノード 運搬 受領 初回受領分の日数 並行処理分は未加算 データ転送 10 + 10 + 10 + 9 日 14日かかった1台は平行で転送していたため未加算 返送 最終返送分の日数 並行処理分は未加算 S3インポート 最終返送分のインポート日数 並行処理分は未加算 Total: 2017/5/31 4日 30 分 2日 39 日 2日 2日 49 日 25
転送完了までの流れと経過日数 4 0 6 16 10 26 20 36 30 40 46 49日 事前 準備 発送 発送 発送 転送[10日] 発送 転送[14日] 60TB 発送 転送[10日] 60TB 発送 70TB 転送[10日] 発送 2017/5/31 発送 転送[9日] 70TB 発送 40TB 26
参考 :1 台でのデータ移行時の推定日数 事前準備 端末の準備 Snowball クライアント設定データ転送速度の見積り (Snowball コマンド ) 4 日 ジョブ作成 Job の作成 (AWS コンソール ) 1 ジョブ =1 ノード 30 分 運搬 ~ 受領受取先は DC に直接 ( 日時指定ができないため注意 ) 2 日 データ転送 データ量と ファイル数によって異なる (1GbE, 転送量 10TB/ 日程度の想定 ) 7~10 日 返送付属の返送用伝票を使用 2 日 S3インポート SnowballのデータをS3へImport 2 日 Total: 20 日 2017/5/31 27
まとめ 想定よりも日数はかかったものの 他の方法よりも短期間でのデータ移行を実現 準備 転送作業などがかんたん 作業者も 1 人で完了した ワンポイントの大量データ移行に非常に向いている S3 へ移行した結果 管理 運用コストの削減も実現 2017/5/31 28
LINE MUSIC とのシステム連携概要プロジェクト概要 2017/5/31 29
2017/5/31 30
開発スケジュール 2014 年 2015 年 12 月 1 月 2 月 3 月 4 月 5 月 6 月 要件定義 API 設計 システム開発 LINE MUSIC への楽曲連携開始 開発期間 5 ヶ月 2017/5/31 31
配信プラットフォームの概要 フロント側を変更することで対応 音楽レーベル 製品管理システム ストアシステム 製品管理 配信情報管理 ストアサーバ AWS CloudFront 商品閲覧 検索 配信システム オーサリング処理 SignedURL オーサリング処理後 配信コンテンツ 配信制御 サーバ AWS CloudFront 試聴 ダウンロード 基幹システム オーサリング処理前 製品マスター 2017/5/31 アカウント管理 サーバ 決済サーバ 32
LINE MUSICへの楽曲連携プラットフォーム 新規 開発 音楽レーベル 製品管理システム APIシステム 製品管理 配信情報管理 APIサーバ カタログ管理 配信情報 連携 配信システム オーサリング処理 SignedURL オーサリング処理後 配信コンテンツ 配信制御 サーバ ファイル送付 AWS CloudFront 追加 開発 オーサリング処理前 製品マスター 2017/5/31 33
2nd 開発 ( 海外音源の大量増曲 ) さらに短い開発期間 API 設計 システム開発 LINE MUSIC への楽曲連携開始 開発期間 3 ヶ月 2017/5/31 34
2nd開発後のプラットフォーム 音楽レーベル 製品管理システム APIシステム 製品管理 配信情報管理 カタログ管理 APIサーバ 配信情報 連携 配信システム オーサリング処理 SignedURL オーサリング処理後 配信コンテンツ 配信制御 サーバ ファイル送付 AWS CloudFront オーサリング処理前 製品マスター 海外音楽レーベル 2017/5/31 35
LINE MUSIC への楽曲連携で感じた AWS のメリット 稼働率と可用性の高さ 予測不能のアクセス数に対応可能 セキュアで高速なダウンロードサービスの提供毎日増加を続けるコンテンツを保存可能な信頼性の高いストレージサービス スモールスタートも柔軟なシステム構成変更も可能 + 設計 / 検証期間短縮 開発後のコスト削減の効果 2017/5/31 36
レーベルゲートの API をご紹介 2017/5/31 37
API のご紹介 配信情報取得 API コンテンツ情報取得 API コンテンツ取得 API 試聴 API PIN 認証 API mora 購入履歴取得 API mora ダウンロード API 外部サービスへ提供 他社製プレイヤーへの提供 2017/5/31 38
API のご紹介 各社ハイレゾアプリ mora 対応続々 KaiserTone 2016 年 10 月対応 Wireless Hi-Res Player~Stellanova~ 2016 年 11 月対応 NePLAYER 2016 年 8 月対応 iaudiogate 2016 年 8 月対応 2017/5/31 39
APIのご紹介 2017年 4月 九州電力様との IoTとAIを活用した家庭向けサービス ハイレゾ配信プラットフォームを共同検討 2017/5/31 40
音楽を楽しむ環境を 創り出すパートナー様求む! aws-summit@labelgate.com 2017/5/31 41
プロフィール 配信ビジネス部 ソリューション課 係長 松本 信也 まつもと しんや 35歳 1981年 群馬県館林市に生まれる 2005年 独立系SIer入社 インフラ部門 2013年 金融系SIer入社 プライベートクラウド基盤部門へ配属 2016年 ソニーミュジック入社 レーベルゲートで音楽配信事業へ配属 2017/5/31 42
マネージドサービスを駆使した環境構想 2017/5/31 43
現在 2017/5/31 44
現在 配信 システム 製品管理 システム 2017/5/31 ストア システム 基幹 システム APIシステム 他 基幹 システム の一部 45
マネージドサービスを積極的に使うワケ 短期 超短期開発 設計時間 検討時間の削減 少数精鋭 人依存の解消 見える化 運用コストの削減 コスト削減 スケーリング 運用コスト 管理コストの削減 2017/5/31 46
マネージドサービスを駆使した環境構想 安い サーバレス化 コスト削減 Website Hosting ファイル連携にも 高冗長化 高速 安心 ストレージ管理不要 Amazon EC2 (Amazon Linux) 見える化 AWS Lambda 一括更新 無料の証明書 Amazon S3 Amazon Aurora 開発コスト削減 管理からの開放 Amazon CloudWatchLogs AWS Certificate Manager AWS CloudFormation 時間削減 2017/5/31 47
オンプレミス環境と AWS 環境構成 2017/5/31 48
移行時に意識したこと していること 単純移行ではなく マネージドサービスを活用した移行 疎結合の環境構築 2017/5/31 49
AWS を利用したシステム運用 開発効率へのアプローチ 2017/5/31 50
2017/5/31 51
メンテナンス時間ゼロへの挑戦 メンテナンス時間 2012 年 10 月 2017 年 4 月 定期メンテナンス : 月 2 時間 定期メンテナンス : 隔月 1 時間 DB の性能向上も加えて実現 年間 24 時間のサービス停止 年間 6 時間のサービス停止 サービス停止時間を 1/4 に削減 年間稼働率 99.72% 年間稼働率 99.93% 2017/5/31 52
メンテナンス時間ゼロへの挑戦 構成イメージ Blue/Green Deployment Elastic Load Balancing 最新アプリケーションをデプロイしたインスタンスを用意し ELB に組み込み 古いインスタンスを切り離す ダウンタイムを 0 とするリリース方法 現在は CodeDeploy も Blue/Green に対応 Auto Scaling Group Blue Auto Scaling Group Green 2017/5/31 53
メンテナンス時間ゼロへの挑戦 目的 SEO 対策 mora.jp mora.jp CloudFront sitea.mora.jp siteb.mora.jp / /sitea /siteb メインサイトサイト A サイト B メインサイト サイト A サイト B 2017/5/31 54
メンテナンス時間ゼロへの挑戦 マルチオリジン化 メンテナンス性の確保 - メンテナンスや改修 開発がやりやすい環境 - 巨大なサーバにしない - パス単位でのメンテナンス - メンテナンス性を損ない結果としてメンテナンス時間の増長にもつながる - パス単位でリソース調整もメンテナンス作業も可能 2017/5/31 55
Road to 99.99% 2017/5/31 56
クラウド化の次のステップ マネージドサービスの利用拡大とコスト削減 2017/5/31 57
2017/5/31 58
マネージドサービスで作るサーバレスの構成 Amazon Cognito Amazon Kinesis AWS Lambda Redis (Multi-AZ) AWS Lambda API Gateway REST なインタフェース S3 Bucket Website Hosting 2017/5/31 59
IoT とシステム運用 Amazon EC2 Amazon CloudFront Amazon EC2 Amazon EC2 Start/Stop キャッシュクリア 環境切替 2017/5/31 60
レーベルゲートは AWS を積極活用していきます! ご清聴ありがとうございました 2017/5/31 61