Más contenido relacionado
La actualidad más candente (20)
Similar a Riak事始め&デモ (20)
Más de Yahoo!デベロッパーネットワーク (20)
Riak事始め&デモ
- 2. 自己紹介
1 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 3. 氏名:阪田 浩隆(さかた ひろたか)
入社年:2004年10月
担当業務実績:
- 社内認証システム開発
- ビジネス系認証システム開発
- 社内ツール系開発
- 分散KVS 開発・保守・運用
- オブジェクトストレージ 開発
現在:Riak開発部隊(Yahoo! JAPAN内)
2 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 4. アジェンダ
1. インストールから設定・起動まで
• Riak / Riak EDS
• Riak CS
2. Riak EDSを使ったデモ
• コマンドラインからのデータ登録/参照
3. どの場面で利用するのが良いのか
4. Riak CSを使ったデモ
• マウント機能を使った動画投稿
ウント機能を使 た動画投稿
3 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 5. Riak / Riak EDS
インストールから起動まで
• 1nodeの構築
• クラスタの構築
• レプリケ ションの設定
レプリケーションの設定
4 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 6. • 作業の流れ
• パッケージダウンロード
• インストール
• 設定フ イルの編集
設定ファイルの編集
• 起動
5 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 7. • パッケージの種類
• OSS版
• 1クラスタ構成の構築が可能
• 有償版
• マルチクラスタ構成の構築が可能
6 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 8. • 1nodeの構築
• パッケージダウンロード
• 以下のサイトからダウン
以下のサイトからダウンロード
ド
• http://basho.com/resources/downloads/
• お使いの環境に合わせてダウンロードしてください
7 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 9. • 1nodeの構築
• インストール
CentOS 6の環境でインストールする場合
C tOS 6の環境でインスト ルする場合
$ sudo yum install riak-1 2 1-1 el6 x86 64 rpm
riak 1.2.1 1.el6.x86_64.rpm
8 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 10. • 1nodeの構築
• 設定ファイル編集 その1
$ sudo vi / t / i k/
d i /etc/riak/app.config
fi
ロ カルに環境がある場合は、
ローカルに環境がある場合は
設定ファイルの編集は、特には不要。
ネットワーク環境にある場合で、
IPアドレスが指定されている場合は、以下を編集
{http, [ {"127.0.0.1", 8098 } ]},
↓
{http, [ {“独自環境のIPアドレス", 8098 } ]},
9 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 11. • 1nodeの構築
• 設定ファイル編集 その2
$ sudo vi / t / i k/
d i /etc/riak/vm.args
ロ カルに環境がある場合は、
ローカルに環境がある場合は
設定ファイルの編集は、特には不要。
ネットワーク環境にある場合で、
IPアドレスが指定されている場合は、以下を編集
-name riak@127.0.0.1
↓
-name riak@独自環境のIPアドレス
10 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 12. • 1nodeの構築
• 起動
$ riak start
特に、何もレスポンスはありません
• 確認 その1
確
$ riak ping
pong ← この表示が出ることを確認
$
11 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 13. • 1nodeの構築
• 確認 その2
$ sudo riak-admin member_status
=================================
Membership
=================================
•Status その1Pending Node
確
確認 Ring
---------------------------------
valid 100.0% -- ‘riak@127.0.0.1'
---------------------------------
Valid:1 / Leaving:0 / Exiting:0 / Joining:0 / Down:0
↑
この表示が出ることを確認
12 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 14. • 1nodeの構築
• 確認 その3
$ sudo riak-admin ring_status
============= Claimant =============
Claimant: ‘riak@127 0 0 1'
riak@127.0.0.1
Status: up
確
確認 その1
•Ring Ready: true
========= Ownership Handoff ==========
No pending changes.
========= Ownership Handoff ==========
All nodes are up and reachable
↑
この表示が出ることを確認
13 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 15. • クラスタの構築
• 設定(コマンド)
$ riak-admin cluster join riak@[IPアドレス]
• 確認
$ sudo riak-admin member status
riak admin member_status
↑
このコマンドで、表示確認
14 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 16. • レプリケーションの設定(有償版のみ)
• 設定ファイル編集
$ sudo vi /etc/riak/app.config
レプリケーション設定(以下
レプリケ シ ン設定(以下 サンプル)を追加反映
{riak_repl,
{riak repl [
{fullsync_on_connect, true},
{
{fullsync_interval, 360},
y _ , },
{data_root, “/var/lib/riak/riak_repl"},
{queue_size, 104857600},
{server_max_pending, 5}
{ di 5},
{client_ack_frequency, 5}
]},
]}
15 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 17. • レプリケーションの設定(有償版のみ)
• レプリケーション設定
$ riak-repl add-listener ‘riak@自分自身のIP’
‘自分自身のIP’ 9010
コマンド実行後は、特に何も出力しません
ンド実行後は 特に何も出力しません
$ riak-repl add-site ‘同期先のIP’ 9010 クラスタ名
コマンド実行後は、特に何も出力しません
コマンド実行後は 特に何も出力しません
16 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 18. • レプリケーションの設定(有償版のみ)
• 確認
$ riak-repl status
↑
このコマンドで、表示確認
17 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 19. • レプリケーションの設定(有償版のみ)
• 同期開始
$ riak-repl start-fullsync
コマンド実行後は、特に何も出力しません
18 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 20. Riak EDSを使った
デモ
19 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 21. • データの登録/参照
• スクリプトでのデモ
• デ タの登録
データの登録
• 参照
20 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 22. クライアント
YJTEST81
YJTEST91
YJTEST82
YJTEST92
レプリケーション
YJTEST83
YJTEST93
YJTEST84
クラスタ1 クラスタ2
21 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 23. どの場面で利用するのが良いのか
22 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 24. • 高速にデータアクセスさせたい場合
• 集合から単一データを高速に取得したい場合
• 将来的にデータ件数/容量が増える事
が確実である場合
• スケ ルアウトが必須の場合
スケールアウトが必須の場合
• 運用コストを軽減したい場合
• システムが巨大化してしまい 運用コスト軽減を検討
システムが巨大化してしまい、運用コスト軽減を検討
したい
•サ バ
サーバー、人件費の両方
人件費の両方
23 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 25. Riak CS
インストールから起動まで
• 1 d 構築
1nodeの構築
• Stanchionの構築
• Riakとの接続設定
24 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 26. • 作業の流れ
• Riak CS/Stanchion
• パッケージダウンロード
• インスト ル
インストール
• 設定ファイルの編集
• 起動
25 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 27. • パッケージの種類
• 有償版のみ
26 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 28. • Riak CSの構築
• 1nodeの構築
• パッケージダウンロード
• 開発トライアル登録後、ダウンロードURLが案内される
発 後
• インストール
CentOS 6の環境でインストールする場合
6の環境でインスト ルする場合
$ sudo yum install riak-cs_1.2.0.el6.x86_64.rpm
27 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 29. • 設定ファイル編集
$ sudo vi /etc/riak-cs/app.config
ローカルに環境がある場合は、
設定ファイルの編集は、特には不要。
ネットワーク環境にある場合で、
IPアドレスが指定されている場合は、以下を編集
{cs_ip, "127.0.0.1"},
↓
{cs_ip, "独自環境のIPアドレス"},
28 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 30. {riak_ip, "127.0.0.1"},
↓
{riak_ip, "独自環境のIPアドレス"},
{stanchion_ip, “127.0.0.1"},
↓
{stanchion_ip, “独自環境のIPアドレス"},
29 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 31. • 設定ファイル編集
$ sudo vi /etc/riak-cs/vm.args
ローカルに環境がある場合は、
ロ カルに環境がある場合は
設定ファイルの編集は、特には不要。
ネットワーク環境にある場合で、
IPアドレスが指定されている場合は、以下を編集
-name riak@127.0.0.1
↓
-name riak@独自環境のIPアドレス
30 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 32. • 起動
$ sudo riak-cs start
ok
• 確認
$ sudo riak-cs ping
pong
31 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 33. • Stanchionの構築
• 1nodeの構築
• パッケージダウンロード
• Riak CSと同じです
• インストール
CentOS 6の環境でインストールする場合
6の環境でインスト ルする場合
$ sudo yum install stanchion-1.0.1-1.el6.x86_64.rpm
32 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 34. • 設定ファイル編集
$ sudo vi /etc/stanchion/app.config
ローカルに環境がある場合は、
設定ファイルの編集は、特には不要。
ネットワーク環境にある場合で、
IPアドレスが指定されている場合は、以下を編集
{stanchion_ip, "127.0.0.1"},
↓
{stanchion_ip, "独自環境のIPアドレス"},
33 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 35. {riak_ip, "10.1.1.192"},
↓
{riak_ip, "独自環境のIPアドレス"},
{anonymous_user_creation, false},
↓
{anonymous_user_creation, true},
34 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 36. • 設定ファイル編集
$ sudo vi /etc/stanchion/vm.args
ローカルに環境がある場合は、
ロ カルに環境がある場合は
設定ファイルの編集は、特には不要。
ネットワーク環境にある場合で、
IPアドレスが指定されている場合は、以下を編集
-name stanchion@127.0.0.1
↓
-name stanchion@独自環境のIPアドレス
35 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 37. • 起動
$ sudo stanchion start
ok
• 確認
$ sudo stanchion ping
pong
36 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 38. • コマンドラインからの確認
• 管理ユーザの作成
• テストファイルの配置
ト
37 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 39. Riak CSを使った
デモ
38 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 40. デモの概要
アップ
ロード • エンコード
• サムネイル作成
Webサーバー(閲覧画面)
Webサーバー(投稿)
APIコール
API ル マウント
Riak Cluster
39 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 41. 実際の導入事例
40 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 42. 導入事例1
• LOHACO(アスクル様)
Riak CSで
画像配信
41 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 43. システム構成
CDN
障害発生時のみ
Riak CS Riak CS
Cluster Cluster
レプリケーション
Riak EDS Cluster 1 Riak EDS Cluster 2
42 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 44. データ
• 登録件数
• 約20万件弱 (データ移行は3時間程度)
• ファイルの種類/サイズ
• 画像データ
• 5k~500k
• リクエスト数
• 450req/sec
• CDNキャッシュヒット率
• 97%
• レスポンス
• 10ms~80ms (CDNにキャッシュされている状態だと10ms程度)
43 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 45. 構築~リリースまでの期間
• 構成検討 各種調整(NW サ バ 調達)
構成検討、各種調整(NW、サーバー調達)
• 1週間
• 構築&テスト・リリース
• 構築:1日
• テスト&リリース:1週間
問題になったところ
• データをフラットに配置したところ、
一覧取得できなくなった
覧取得できなくな た
• 解決策:ディレクトリを分けてもらった
44 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 46. Q&A
45 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 47. ご清聴ありがとうございました
46 Copyright © 2013 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止