Top Banner
Yahoo! JAPANの新しいクラウドストレージサービス ~Yahoo! JAPANがRiakを選んだ理由とは?~ ヤフー株式会社 マーケティングソリューションカンパニー 新規事業本部 阪田 浩隆 2013年2月14日(木)
88

Yahoo! JAPANの新しいクラウドストレージサービス

Nov 12, 2014

Download

Documents

Yahoo! JAPAN

 
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo! JAPANの新しいクラウドストレージサービス~Yahoo! JAPANがRiakを選んだ理由とは?~

ヤフー株式会社

マーケティングソリューションカンパニー 新規事業本部

阪田 浩隆

2013年2月14日(木)

Page 2: Yahoo! JAPANの新しいクラウドストレージサービス

自己紹介

1Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 3: Yahoo! JAPANの新しいクラウドストレージサービス

氏名:阪田 浩隆(さかた ひろたか)

入社年:2004年10月

担当業務実績:

- 社内認証システム開発

- ビジネス系認証システム開発

- 社内ツール系開発

- 分散KVS 開発・保守・運用

- オブジェクトストレージ 開発

現在:Riak開発部隊(Yahoo! JAPAN内)

2Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 4: Yahoo! JAPANの新しいクラウドストレージサービス

• アジェンダ

• Yahoo! JAPANを支える技術

• KVS

• データレプリケーション

• オブジェクトストレージ

• Riak概要

• Product一覧

• アーキテクチャ概要

• インストールから起動まで• Riak EDS

• Riak CS

• 簡易デモ

• Yahoo! JAPANの新しいクラウドストレージ

• なぜRiakを選んだのか3

Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 5: Yahoo! JAPANの新しいクラウドストレージサービス

実はYahoo! JAPANには

17年のKVSの歴史がある

4Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 6: Yahoo! JAPANの新しいクラウドストレージサービス

創業当時(1996年)から、

データを扱うプラットフォームとして

分散KVSを使用している

※当時はまだクライアントサーバーシステムが主流であり、現在のWebが主流

のスタイルではなかった

• 独自開発

• 大規模データ

• 例)ユーザーデータ

• 分散処理

• スケールアウト

• 複数DCでのデータレプリケーション

5Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 7: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo! JAPANの技術

• 独自の技術で基盤を構築している

• Yahoo! Inc.とYahoo! JAPANで開発したコアテクノロジーを元に、強靭な基盤を築いている

• このテクノロジーを利用して、

Yahoo! JAPANのサービスは成り立っている

6Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 8: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo! JAPANの技術

7

画面はサンプルです。実際の表示は異なることがあります。

Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 9: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo! JAPANの技術

8

Yahoo! JAPANコアテクノロジー

画面はサンプルです。実際の表示は異なることがあります。

Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 10: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo! JAPANの技術

9

Yahoo! JAPANコアテクノロジー

KVS

画面はサンプルです。実際の表示は異なることがあります。

Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 11: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo! JAPANの技術

10

Yahoo! JAPANコアテクノロジー

KVS

認証システム 課金システム

広告技術 CDN

画面はサンプルです。実際の表示は異なることがあります。

Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 12: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo! JAPANの技術

11

Yahoo! JAPANコアテクノロジー

KVS

認証システム 課金システム

広告技術 CDN

ストレージ RDBMS

画面はサンプルです。実際の表示は異なることがあります。

Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 13: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo! JAPANの技術

12

Yahoo! JAPANコアテクノロジー

KVS

認証システム 課金システム

広告技術 CDN

ストレージ RDBMS

強靭なコアテクノロジー

画面はサンプルです。実際の表示は異なることがあります。

Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 14: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo! JAPANのデータレプリケーションシステム

13Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 15: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo! JAPANには

データレプリケーションシステムが存在します

• 独自開発

• スケールアウト

14Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 16: Yahoo! JAPANの新しいクラウドストレージサービス

例えば

15Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

KVS

Page 17: Yahoo! JAPANの新しいクラウドストレージサービス

発生する問題

16Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

KVS

・フロントサーバーがDCをまたがる構成になった場合→レイテンシが問題になる

・どこかのサービスが負荷をかけると全体に影響する→負荷分散が必要

Page 18: Yahoo! JAPANの新しいクラウドストレージサービス

データレプリケーション

17Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

KVSKVS

KVS

DC 1 DC 2

DC 3

レプリケーションにより1.レイテンシ問題の解決2.負荷分散

Page 19: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo! JAPANにおけるオブジェクトストレージ

18Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 20: Yahoo! JAPANの新しいクラウドストレージサービス

実はYahoo! JAPANには・・・

オブジェクトストレージが存在します

• 独自開発

• スケールアウト

• データレプリケーション

19Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 21: Yahoo! JAPANの新しいクラウドストレージサービス

• 開発コンセプト(2009年7月開発スタート)

• 容量無制限

• 無限にスケールアウトする

• 安価

• とにかく利用価格を安くする

• データの集中管理

• 集中管理する事で無駄をなくし、コスト削減を徹底する

• 使いやすいI/F

• REST形式のAPIを提供

• 高パフォーマンス

• 可用性

20Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 22: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo! JAPAN内での利用実績(一部ご紹介)

• Yahoo!ボックス

• Yahoo!天気・災害

• Yahoo!ブックストア

• Yahoo!ロコ プレイス

21

画面はサンプルです。実際の表示は異なることがあります。

Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 23: Yahoo! JAPANの新しいクラウドストレージサービス

実際のトラフィック

• Yahoo!ボックスサービス開始から

数TB/day のアップロードを受けている

• サーバー台数が数千台に達している

• 数PBのデータが格納されている

22Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 24: Yahoo! JAPANの新しいクラウドストレージサービス

KVSKVS

KVS

アーキテクチャ

独自KVS

23

API

メタデータ

CDN(大容量配信)※Yahoo!ボックスでは未使用

アプリケーション

Farm

・・・・

Farm

・・・・

Farm

・・・・

ストレージエンジン

・・・・

Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 25: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo!クラウド ストレージとして提供

• Yahoo!クラウド ストレージとして、2012年9月初旬より提供開始しましたが、より良いアーキテクチャへ変更予定です

• 変更する理由は後ほど

24Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 26: Yahoo! JAPANの新しいクラウドストレージサービス

Riak概要

25Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 27: Yahoo! JAPANの新しいクラウドストレージサービス

Product一覧

26Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 28: Yahoo! JAPANの新しいクラウドストレージサービス

• Riak

• OSS版のKVSエンジン

• 単一クラスタの構築が可能

• Riak EDS

• エンタープライズ版のRiak

• 複数クラスタの構築が可能

• クラスタ間レプリケーションが可能

27Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 29: Yahoo! JAPANの新しいクラウドストレージサービス

• Riak CS

• オブジェクトストレージ

• Object(ファイル)はRiak / Riak EDSに保存される

• Riak / Riak EDSが無いと動作しない

• 機能としてはAPIの役割を果たす

• 認証

• 大容量ファイルの分割配置など

28Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 30: Yahoo! JAPANの新しいクラウドストレージサービス

• コンポーネント一覧

29Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

コンポーネント名 役割 OSS 有償

Riak 分散型KVSエンジン ○

Riak EDS 分散型KVSエンジンクラスタ間レプリケーションが可能

Riak CS オブジェクトストレージAPI ○

Stanchion リクエストシリアライズ管理API ○

Page 31: Yahoo! JAPANの新しいクラウドストレージサービス

Riakアーキテクチャ概要

30Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 32: Yahoo! JAPANの新しいクラウドストレージサービス

Riak

31Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Riak Cluster

基本構成

Page 33: Yahoo! JAPANの新しいクラウドストレージサービス

Riak

32Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Riak Cluster

コンシステントハッシュでデータを格納&

データを冗長化して保持

Page 34: Yahoo! JAPANの新しいクラウドストレージサービス

Riak

33Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Riak Cluster

各ノードが全てAPI※ダウンしても他のノードが

サービス継続

Client

Page 35: Yahoo! JAPANの新しいクラウドストレージサービス

Riak EDS(有償版)

34Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

RiakCluster A replication

Riak Cluster B

クラスタ間のレプリケーションが可能

Page 36: Yahoo! JAPANの新しいクラウドストレージサービス

Riak EDS

35Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

RiakCluster A replication

Riak Cluster B

通常の使用方法

Proxy Proxy

Page 37: Yahoo! JAPANの新しいクラウドストレージサービス

Riak CS

36Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

基本構成

Riak Cluster

・・・・・・・・・・・・

Riak CS Cluster

Stanchion

Page 38: Yahoo! JAPANの新しいクラウドストレージサービス

Riak CS

37Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

RiakCluster A

replication

通常の使用方法

Proxy Proxy

Riak Cluster B

・・・・・・・・

Stanchion

Riak CS Riak CS

Page 39: Yahoo! JAPANの新しいクラウドストレージサービス

インストール方法

38Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 40: Yahoo! JAPANの新しいクラウドストレージサービス

Riak / Riak EDSインストールから起動まで

39Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

• 1nodeの構築• クラスタの構築• レプリケーションの設定

Page 41: Yahoo! JAPANの新しいクラウドストレージサービス

• 作業の流れ

• パッケージダウンロード

• インストール

• 設定ファイルの編集

• 起動

40Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 42: Yahoo! JAPANの新しいクラウドストレージサービス

• 1nodeの構築•パッケージダウンロード

• 以下のサイトからダウンロード• http://basho.com/resources/downloads/

• お使いの環境に合わせてダウンロードしてください

41Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 43: Yahoo! JAPANの新しいクラウドストレージサービス

• 1nodeの構築•インストール

42Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

CentOS 6の環境でインストールする場合

$ sudo yum install riak-1.2.1-1.el6.x86_64.rpm

Page 44: Yahoo! JAPANの新しいクラウドストレージサービス

• 1nodeの構築•設定ファイル編集 その1

43Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ sudo vi /etc/riak/app.config

ローカルに環境がある場合は、設定ファイルの編集は、特には不要。

ネットワーク環境にある場合で、IPアドレスが指定されている場合は、以下を編集

{http, [ {"127.0.0.1", 8098 } ]},↓

{http, [ {“独自環境のIPアドレス", 8098 } ]},

Page 45: Yahoo! JAPANの新しいクラウドストレージサービス

• 1nodeの構築•設定ファイル編集 その2

44Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ sudo vi /etc/riak/vm.args

ローカルに環境がある場合は、設定ファイルの編集は、特には不要。

ネットワーク環境にある場合で、IPアドレスが指定されている場合は、以下を編集

-name [email protected]

-name riak@独自環境のIPアドレス

Page 46: Yahoo! JAPANの新しいクラウドストレージサービス

• 1nodeの構築•起動

•確認 その1

45Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ riak start特に、何もレスポンスはありません

$ riak pingpong ← この表示が出ることを確認$

Page 47: Yahoo! JAPANの新しいクラウドストレージサービス

• 1nodeの構築•確認 その2

•確認 その1

46Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ sudo riak-admin member_status================================= Membership =================================Status Ring Pending Node---------------------------------valid 100.0% -- ‘[email protected]'---------------------------------Valid:1 / Leaving:0 / Exiting:0 / Joining:0 / Down:0

↑この表示が出ることを確認

Page 48: Yahoo! JAPANの新しいクラウドストレージサービス

• 1nodeの構築•確認 その3

•確認 その1

47Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ sudo riak-admin ring_status============= Claimant ============= Claimant: ‘[email protected]'Status: upRing Ready: true========= Ownership Handoff ==========No pending changes.========= Ownership Handoff ==========All nodes are up and reachable

↑この表示が出ることを確認

Page 49: Yahoo! JAPANの新しいクラウドストレージサービス

• クラスタの構築

• 設定(コマンド)

• 確認

48Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ riak-admin cluster join riak@[IPアドレス]

$ sudo riak-admin member_status

↑このコマンドで、表示確認

Page 50: Yahoo! JAPANの新しいクラウドストレージサービス

• レプリケーションの設定(有償版のみ)

• 設定ファイル編集

49Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ sudo vi /etc/riak/app.config

レプリケーション設定(以下 サンプル)を追加反映

{riak_repl, [{fullsync_on_connect, true},{fullsync_interval, 360},{data_root, “/var/lib/riak/riak_repl"},{queue_size, 104857600},{server_max_pending, 5},{client_ack_frequency, 5}

]},

Page 51: Yahoo! JAPANの新しいクラウドストレージサービス

• レプリケーションの設定(有償版のみ)

• レプリケーション設定

50Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ riak-repl add-listener ‘riak@自分自身のIP’‘自分自身のIP’ 9010

コマンド実行後は、特に何も出力しません

$ riak-repl add-site ‘同期先のIP’ 9010 クラスタ名コマンド実行後は、特に何も出力しません

Page 52: Yahoo! JAPANの新しいクラウドストレージサービス

• レプリケーションの設定(有償版のみ)

• 確認

51Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ riak-repl status

↑このコマンドで、表示確認

Page 53: Yahoo! JAPANの新しいクラウドストレージサービス

• レプリケーションの設定(有償版のみ)

• 同期開始

52Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ riak-repl start-fullsyncコマンド実行後は、特に何も出力しません

Page 54: Yahoo! JAPANの新しいクラウドストレージサービス

どの場面で利用するのが良いのか

53Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 55: Yahoo! JAPANの新しいクラウドストレージサービス

• 高速にデータアクセスさせたい場合• 集合から単一データを高速に取得したい場合

• 将来的にデータ件数/容量が増える事が確実である場合• スケールアウトが必須の場合

• 運用コストを軽減したい場合• システムが巨大化してしまい、運用コスト軽減を検討

したい

• サーバー、人件費の両方

54Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 56: Yahoo! JAPANの新しいクラウドストレージサービス

Riak CSインストールから起動まで

55Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

• 1nodeの構築• Stanchionの構築• Riakとの接続設定

Page 57: Yahoo! JAPANの新しいクラウドストレージサービス

• 作業の流れ

• Riak CS/Stanchion

•パッケージダウンロード

•インストール

•設定ファイルの編集

•起動

56Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 58: Yahoo! JAPANの新しいクラウドストレージサービス

• パッケージの種類

• 有償版のみ

57Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 59: Yahoo! JAPANの新しいクラウドストレージサービス

• Riak CSの構築

• 1nodeの構築

•パッケージダウンロード• 開発トライアル登録後、ダウンロードURLが案内される

•インストール

58Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

CentOS 6の環境でインストールする場合

$ sudo yum install riak-cs_1.2.0.el6.x86_64.rpm

Page 60: Yahoo! JAPANの新しいクラウドストレージサービス

•設定ファイル編集

59Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ sudo vi /etc/riak-cs/app.config

ローカルに環境がある場合は、設定ファイルの編集は、特には不要。

ネットワーク環境にある場合で、IPアドレスが指定されている場合は、以下を編集

{cs_ip, "127.0.0.1"},↓

{cs_ip, "独自環境のIPアドレス"},

Page 61: Yahoo! JAPANの新しいクラウドストレージサービス

60Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

{riak_ip, "127.0.0.1"},↓

{riak_ip, "独自環境のIPアドレス"},

{stanchion_ip, “127.0.0.1"},↓

{stanchion_ip, “独自環境のIPアドレス"},

Page 62: Yahoo! JAPANの新しいクラウドストレージサービス

•設定ファイル編集

61Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ sudo vi /etc/riak-cs/vm.args

ローカルに環境がある場合は、設定ファイルの編集は、特には不要。

ネットワーク環境にある場合で、IPアドレスが指定されている場合は、以下を編集

-name [email protected]

-name riak@独自環境のIPアドレス

Page 63: Yahoo! JAPANの新しいクラウドストレージサービス

•起動

•確認

62Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ sudo riak-cs startok

$ sudo riak-cs pingpong

Page 64: Yahoo! JAPANの新しいクラウドストレージサービス

• Stanchionの構築

• 1nodeの構築

•パッケージダウンロード• Riak-CSと同じです

•インストール

63Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

CentOS 6の環境でインストールする場合

$ sudo yum install stanchion-1.0.1-1.el6.x86_64.rpm

Page 65: Yahoo! JAPANの新しいクラウドストレージサービス

•設定ファイル編集

64Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ sudo vi /etc/stanchion/app.config

ローカルに環境がある場合は、設定ファイルの編集は、特には不要。

ネットワーク環境にある場合で、IPアドレスが指定されている場合は、以下を編集

{stanchion_ip, "127.0.0.1"},↓

{stanchion_ip, "独自環境のIPアドレス"},

Page 66: Yahoo! JAPANの新しいクラウドストレージサービス

65Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

{riak_ip, "10.1.1.192"},↓

{riak_ip, "独自環境のIPアドレス"},

{anonymous_user_creation, false},↓

{anonymous_user_creation, true},

Page 67: Yahoo! JAPANの新しいクラウドストレージサービス

•設定ファイル編集

66Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ sudo vi /etc/stanchion/vm.args

ローカルに環境がある場合は、設定ファイルの編集は、特には不要。

ネットワーク環境にある場合で、IPアドレスが指定されている場合は、以下を編集

-name [email protected]

-name stanchion@独自環境のIPアドレス

Page 68: Yahoo! JAPANの新しいクラウドストレージサービス

•起動

•確認

67Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

$ sudo stanchion startok

$ sudo stanchion pingpong

Page 69: Yahoo! JAPANの新しいクラウドストレージサービス

• コマンドラインからの確認• 管理ユーザの作成

• テストファイルの配置

68Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 70: Yahoo! JAPANの新しいクラウドストレージサービス

Riak CSを使ったデモ

69Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 71: Yahoo! JAPANの新しいクラウドストレージサービス

デモの概要

70Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Webサーバー(投稿)

Riak Cluster

マウント

Webサーバー(閲覧画面)

アップロード • エンコード

• サムネイル作成

APIコール

Page 72: Yahoo! JAPANの新しいクラウドストレージサービス

実際の導入事例

71Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 73: Yahoo! JAPANの新しいクラウドストレージサービス

導入事例1

• LOHACO(アスクル様)

72Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Riak CSで画像配信

Page 74: Yahoo! JAPANの新しいクラウドストレージサービス

システム構成

73Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Riak CS Cluster

Riak EDS Cluster 1

CDN

Riak CS Cluster

Riak EDS Cluster 2レプリケーション

障害発生時のみ

Page 75: Yahoo! JAPANの新しいクラウドストレージサービス

データ

• 登録件数

• 約20万件弱 (データ移行は3時間程度)

• ファイルの種類/サイズ

• 画像データ

• 5k~500k

• リクエスト数

• 450req/sec

• CDNキャッシュヒット率

• 97%

• レスポンス

• 10ms~80ms (CDNにキャッシュされている状態だと10ms程度)

74Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 76: Yahoo! JAPANの新しいクラウドストレージサービス

構築~リリースまでの期間

• 構成検討、各種調整(NW、サーバー調達)

• 1週間

• 構築&テスト・リリース

• 構築:1日

• テスト&リリース:1週間

問題になったところ

• データをフラットに配置したところ、

一覧取得できなくなった

• 解決策:ディレクトリを分けてもらった

75Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 77: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo! JAPANの新しいクラウドストレージ

76Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 78: Yahoo! JAPANの新しいクラウドストレージサービス

Riak CSを利用しての

Yahoo! JAPANの新しいクラウドストレージ

77Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 79: Yahoo! JAPANの新しいクラウドストレージサービス

• スケジュール

• 2012年10月 トライアルリリース

• 2013年1月 先行リリース

• 2013年4月 本番サービス開始(予定)

78Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 80: Yahoo! JAPANの新しいクラウドストレージサービス

なぜRiakを選んだのか

79Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 81: Yahoo! JAPANの新しいクラウドストレージサービス

求められる機能の違い

• 独自のオブジェクトストレージでは全てに対応できなかった

• C向け、B向けで求められる機能が違うため、全てを1ソースで管理していくのは困難だった

80Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 82: Yahoo! JAPANの新しいクラウドストレージサービス

S3互換のオブジェクトストレージが必要だった

• ユーザーニーズに早急に応える必要があった

• S3のユーティリティをそのまま流用したい旨のニーズが多かった

• 独自のオブジェクトストレージを改修する事も可能だったが、時間を節約したかった

81Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 83: Yahoo! JAPANの新しいクラウドストレージサービス

KVSがストレージエンジンになる

• KVS単体でもストレージエンジンになりえるようになっている

• ただしサーバー台数が増えた時にどうするのか検討が必要

82Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 84: Yahoo! JAPANの新しいクラウドストレージサービス

運用コスト削減

• 運用コストがかからないような構成になっている

• コンポーネント数が少ない

• 設定が項目が少ない

• サーバー追加が容易

83Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 85: Yahoo! JAPANの新しいクラウドストレージサービス

Yahoo! JAPANで培ったKVSのノウハウを、ダイレクトに活かせそうなアーキテクチャだった

• +一緒に開発できそうな人たちだった

84Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Page 86: Yahoo! JAPANの新しいクラウドストレージサービス

85Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

Action!カード

今回のDevelopers Summitのテーマは「Action!」• 共感から行動へ、「デベロッパーは未来を作っている。世の中をエコでスマート

な社会にするために、デベロッパーは誇りを持って、行動しよう!」

• セッション後のAction!をレコメンド!

• メッセージ• 「世界に5つのコンピュータ」

インフラを意識させないインフラを作ろう

• おすすめのコミュニティ• Riak Meetup

• おすすめの本• プログラミングErlang

Page 87: Yahoo! JAPANの新しいクラウドストレージサービス

86Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

世界に5つの

コンピューター

インフラを

意識させない

インフラを作ろう

アンケートと引き換えに、ノベルティプレゼント!

Page 88: Yahoo! JAPANの新しいクラウドストレージサービス

ご清聴ありがとうございました

87Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止