112
Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved. ゲーム事業本部 恋愛ゲームチーム 藤原 ゲームインフラチーム 本田 20140718AutoScale × ゲーム ~運用効率化への取り組み~

AutoScale×ゲーム ~運用効率化への取り組み~

Embed Size (px)

DESCRIPTION

AWS Summit Tokyo 2014のTC-09セッションで発表した資料です。 こちらは後半部分です。 タイトル:TC-09「AutoScale×ゲーム ~運用効率化への取り組み~」について === イベント概要 === AWS Summit Tokyo 2014について 開催日:2014年7月17日(木)~18日(金) 9:15 ~ 19:00 会場:グランドプリンスホテル新高輪 (国際館パミール) 主催:アマゾン データ サービス ジャパン株式会社 サイトURL:http://www.awssummittokyo.com/ スケジュール:http://www.awssummittokyo.com/schedule.html セッション紹介:http://www.awssummittokyo.com/session.html#tc9 前半=>http://www.slideshare.net/megadreams14/aws-summit-tokyo-2014-tc09

Citation preview

Page 1: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

ゲーム事業本部 恋愛ゲームチーム 藤原 涼!ゲームインフラチーム 本田 恭!

2014年07月18日

AutoScale × ゲーム ~運用効率化への取り組み~

Page 2: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

運用効率化に向けたAWS導入背景から運用のお話

AWSをさらに活用するための技術的なお話

~後半~

~前半~

Agenda

Page 3: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

1:アバター合成サーバの負荷対策

2:ログ収集の効率化

3:まとめ

Agenda

~後半~

Page 4: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

自己紹介

本田 恭 (ほんだ たかし)- 2012年新卒入社 (3年目)

- Twitter @Altsencturely

好きなAWSのサービス- S3

Page 5: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

1:アバター合成サーバの負荷対策

2:ログ収集の効率化

3:まとめ

Agenda

~後半~

Page 6: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

アバター合成サーバの 負荷対策

Page 7: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

恋愛ソーシャルゲームとは

アバターなどを 着せ替えて可愛く コーディネイトできる

Page 8: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

アバター画像の基本的な仕組み

Page 9: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

ある

画像のレスポンス

ない

画像のレスポンス

画像の存在確認 画像の存在確認

画像の生成 (ImageMagick)

Page 10: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

これまでの環境

Page 11: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

これまでの環境

Image Image Image

NAS

Page 12: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

サーバ間で同じ画像は作成されない

これまでの環境

Page 13: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

AWSのAutoScale運用を行う場合

Page 14: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Image Image Image

S3

AWSの場合1

Page 15: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

AWSの場合1

・S3のマウント先への書き込みに時間がかかる

・サーバ高負荷時にマウントが外れる

Page 16: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

AWSの場合1

・サーバ高負荷時にマウントが外れる

S3のマウントはNASの様にいかない

Page 17: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

画像A

画像Aリクエスト

画像Aが ないので作成

AWSの場合2

Image Image

Image LoadBarancer

1 2

Page 18: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

画像を余分に作成することの問題点

CPUロードアベレージ

サーバを増やしても負荷が減らない

Page 19: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

画像を余分に作成することの問題点

安定運用できない

Page 20: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

アバター合成サーバの安定運用 ||

合成の回数を減らす

安定運用のために

Page 21: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

サーバ間で画像ファイルを共有

アバター合成サーバの安定運用 ||

合成の回数を減らす

安定運用のために

Page 22: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

http://shoreditchworks.com/sw/wp-content/uploads/2013/10/orange-ant-glusterfs.png

Page 23: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

マスターレスな分散ファイルシステム

GlusterFSとは

Page 24: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

マスターレスとは

特定のサーバに依存しないクラスタ構成

Page 25: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

nodeA

nodeB nodeCGlusterFS-Cluster

マスターレスとは

ノード間で同期

Page 26: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

nodeA

nodeB nodeCGlusterFS-Cluster

ノード間で同期

マスターレスとは

単一障害点が存在しない

Page 27: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

1. ルート以外のパーティションでEBSをマウント

2. GlusterFSのクラスタ構築 (peer probe)

3. ファイルシステムを構築

4. 作成したファイルシステムをマウント

AWS上でGlusterFSの構築手順

Page 28: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

1. ルート以外のパーティションでEBSをマウント

2. GlusterFSのクラスタ構築 (peer probe)

3. ファイルシステムを構築

4. 作成したファイルシステムをマウント

AWS上でGlusterFSの構築手順

Page 29: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

nodeA 172.31.0.1

nodeB 172.31.0.2

nodeC 172.31.0.3

クラスタ構築

GlusterFS-Cluster

Page 30: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

nodeA 172.31.0.1

nodeB 172.31.0.2

nodeC 172.31.0.3

追加 peer probe

クラスタ構築

GlusterFS-Cluster

Page 31: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

nodeA 172.31.0.1

nodeB 172.31.0.2

nodeC 172.31.0.3

追加peer probeクラスタのメンバが追加する

クラスタ構築

GlusterFS-Cluster

Page 32: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

GlusterFSのクラスタのメンバ(nodeAまたはnodeB)が メンバ追加コマンドを実行

# gluster peer probe nodeCまたは

# gluster peer probe 172.31.0.3

peer probeの違い

Page 33: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Number of Peers: 2 !

Hostname: nodeB Uuid: xxxxxxxx-xxxx-xxxx State: Peer in Cluster (Connected) !

Hostname: nodeC Uuid: xxxxxxxx-xxxx-xxxx State: Peer in Cluster (Connected)

# gluster peer status

peer probeの違い

Number of Peers: 2 !

Hostname: 172.31.0.2 Uuid: xxxxxxxx-xxxx-xxxx State: Peer in Cluster (Connected) !

Hostname: 172.31.0.3 Uuid: xxxxxxxx-xxxx-xxxx State: Peer in Cluster (Connected)

Page 34: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

AWSだとIPが自動で割り当てられる

AutoScale時のpeer probe

Page 35: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

サーバを一意に特定できるホスト名の方が管理しやすい

AutoScale時のpeer probe

AWSだとIPが自動で割り当てられる

Page 36: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

# gluster peer probe HOSTNAME

サーバを一意に特定できるホスト名の方が管理しやすい

AutoScale時のpeer probe

AWSだとIPが自動で割り当てられる

Page 37: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

1. GlusterFSのクラスタの生きているノードが   クラスタに追加

2. IPアドレスではなくホスト名を使用

GlusterFS構築の注意点

Page 38: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

AutoScaleに対応させるためには

Page 39: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

1. GlusterFSのクラスタの生きているノードの自動判別

2. クラスタ内での自動名前解決

GlusterFSのAutoScale対応

Page 40: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

nodeA 172.31.0.1

nodeB 172.31.0.2

nodeC 172.31.0.3

追加 peer probe

クラスタの自動構築

GlusterFS-Cluster

Page 41: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

nodeA 172.31.0.1

nodeB 172.31.0.2

nodeC 172.31.0.3

1. SSH

クラスタの自動構築

GlusterFS-Cluster

Page 42: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

nodeA 172.31.0.1

nodeB 172.31.0.2

nodeC 172.31.0.3

1. SSH

2. peer probe

クラスタの自動構築

GlusterFS-Cluster

Page 43: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

GlusterFSのAutoScale対応

1. GlusterFSのクラスタの生きているノードの自動判別

2. クラスタ内での自動名前解決

Page 44: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

案1 GlusterFSのステータスを使う

Page 45: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Number of Peers: 2 !

Hostname: nodeB Uuid: xxxxxxxx-xxxx-xxxx State: Peer in Cluster (Connected) !

Hostname: nodeC Uuid: xxxxxxxx-xxxx-xxxx State: Peer in Cluster (Connected)

# gluster peer status

GlusterFSのステータスを使う

Page 46: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

・・・

GlusterFSのステータスを使う

gluster-peer-status

nodeB?

nodeC?

ホスト名がわからない

Page 47: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

案1 GlusterFSのステータスを使う

名前解決されていないため構築できない

Page 48: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

案2 AWS APIを使う

Page 49: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

・・・

1. 情報取得

AWS API

http://cdn.blog.celingest.com/wp-content/uploads/2013/09/aws-s3-512x215.png

Page 50: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

・・・

2. SSH

AWS API

Page 51: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

・・・

3. 情報取得

AWS API

Page 52: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

peer probe

・・・

AWS API

Page 53: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

・・・

AWS API

名前解決出来ていない

Page 54: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

不完全なクラスタが構築される

案2 AWS APIを使う

Page 55: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

• Chef Server API

!

• Zabbix API

!

• 内部DNS

その他の案

http://recipe.kc-cloud.jp/wp-content/uploads/2013/04/20130405_02_01.gif

Page 56: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

単一障害点を作ってしまう

Page 57: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

1. GlusterFSのクラスタの生きているノードの自動判別

2. クラスタ内での自動名前解決

GlusterFSのAutoScale対応

Page 58: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

1. GlusterFS自動判別

2. クラスタ内での自動名前解決

GlusterFS

GlusterFSのクラスタ内で完結

Page 59: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

S E R Fhttp://pocketstudio.jp.s3.amazonaws.com/log3/wp-content/uploads/2013/11/serf-logo.png

Page 60: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

マスターレスなクラスタ構成 ゴシッププロトコル

Serfとは

Page 61: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

$ serf join nodeA

Serfのクラスタ

nodeA 172.31.0.1

nodeB 172.31.0.2

nodeC 172.31.0.3

Serf-Cluster

Page 62: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Serfのクラスタ

nodeA 172.31.0.1

nodeB 172.31.0.2

nodeC 172.31.0.3

自分からクラスタに参加できる

Serf-Cluster

$ serf join nodeA

Page 63: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Serf-Cluster

member-join

nodeA nodeB nodeC

ゴシッププロトコルとは

Page 64: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Serf-Cluster

nodeA nodeB nodeC

ゴシッププロトコルとは

member-join

Page 65: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Serf-Cluster

nodeA nodeB nodeC

ゴシッププロトコルとは

Page 66: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Serf-Cluster

nodeA nodeB nodeC

ゴシッププロトコルとは

伝播して同じ状態に

Page 67: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

クラスタ内の名前解決を自動化

Page 68: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

クラスタメンバ情報で生存確認

$ serf members nodeA 172.31.0.1:7946 alive nodeB 172.31.0.2:7946 alive nodeC 172.31.0.3:7946 alive

Serfで自動名前解決

Page 69: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Serfで自動名前解決

member-join

$ serf members nodeA 172.31.0.1:7946 alive nodeB 172.31.0.2:7946 alive nodeC 172.31.0.3:7946 alive

/etc/hosts

Page 70: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

/etc/hosts

member-join

$ serf members nodeA 172.31.0.1:7946 alive nodeB 172.31.0.2:7946 alive nodeC 172.31.0.3:7946 aliveクラスタ内の名前解決の自動化

Serfの便利な点

Page 71: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Serfのクラスタをマスターレスに構築

Page 72: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

serf-members

172.31.0.1 172.31.0.2

172.31.0.3 172.31.0.4

http://s3-blog.the-new-it.com.s3.amazonaws.com/wp-content/uploads/2014/01/WPandS3Logos.png

Serfのクラスタをマスターレス

Page 73: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

172.31.0.1 172.31.0.2

172.31.0.3 172.31.0.4

serf-members

serf-members nodeA 172.31.0.1:7946 alive nodeB 172.31.0.2:7946 alive nodeC 172.31.0.3:7946 alive nodeD 172.31.0.4:7946 failed

Serfのクラスタをマスターレス

Page 74: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

172.31.0.1 172.31.0.2

172.31.0.3 172.31.0.4

$ serf join nodeA

Serfのクラスタをマスターレス

Page 75: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

172.31.0.1 172.31.0.2

172.31.0.3 172.31.0.4

$ serf join nodeA

Serfのクラスタをマスターレス

マスターレスにクラスタ構築

Page 76: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

S3の耐障害性 !

最大 99.999999999% の耐久性と 99.99% の可用性

安定してどこからでも使える

S3を使う理由

Page 77: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Serf × S3

Page 78: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

クラスタの名前解決クラスタの追加/削除時に/etc/hostsが 修正されメンバ間は名前解決可能

Page 79: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

1. GlusterFSのクラスタの生きているノードの自動判別

2. クラスタ内での自動名前解決

GlusterFSのAutoScale対応

Page 80: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

GlusterFSのAutoScale対応の仕組み

Page 81: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Serf-Cluster

nodeA nodeB nodeC

GlusterFS-Cluster

Page 82: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

nodeA nodeB nodeC

serf-members

Serf-Cluster

Page 83: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Serf-Cluster

serf-members nodeA 172.31.0.1:7946 alive nodeB 172.31.0.2:7946 alive

nodeA nodeB nodeC$ serf join nodeB

Page 84: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Serf-Cluster

member-joinmember-joinmember-join

nodeA nodeB nodeC

Page 85: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

nodeA nodeB nodeC

GlusterFS-Cluster

Serf-Cluster

Page 86: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

nodeA nodeB nodeC

1. SSH

2. peer probe

GlusterFS-Cluster

Serf-Cluster

Page 87: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

nodeA nodeB nodeC

serf-members

GlusterFS-Cluster

Page 88: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

GlusterFSのマスターレスな構築

Page 89: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

GlusterFS × Serf × S3

http://www.gluster.org/images/antmascot.png

Page 90: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

AutoScaleに対応

GlusterFSの導入

Webサーバと同じ様にスケールアウト

ファイル共有により無駄なアバター合成 削減し負荷の軽減

Page 91: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

1:アバター合成サーバの負荷対策

2:ログ収集の効率化

3:まとめ

Agenda

~後半~

Page 92: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

ログ収集の効率化

Page 93: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

http://excalemedia.s3.amazonaws.com/wp-content/uploads/2014/02/fluentd2.png

Page 94: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

なぜFluentdを使うの?

AutoScaleだと サーバが削除された時ログも消える

Page 95: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Fluentdの運用を出来るだけ楽に !

中継サーバのリソースを十分に使う

Fluentdの要件

Page 96: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

分析用VPCタイトル毎のVPC

Server

Redshift

Elasticsearch

Fluentd Fluentd Fluentd Fluentd

Server Server Server

Page 97: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Redshift

Elasticsearch

Fluentd Fluentd Fluentd Fluentd

分析用VPCタイトル毎のVPC

Fluentd 中継

Fluentd 中継

Server Server Server Server

Page 98: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Redshift

Elasticsearch

分析用VPCタイトル毎の

Fluentd 中継

Fluentd Fluentd Fluentd Fluentd

Server Server Server Server

Fluentd 中継

Page 99: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

https://blog.linode.com/wp-content/uploads/2014/01/docker.png

Page 100: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Redshift

Elasticsearch

Fluentd 中継

分析用VPCタイトル毎のVPC

Fluentd 中継

Fluentd Fluentd Fluentd Fluentd

Server Server Server Server

Page 101: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

分析用VPCタイトル毎の

Fluentd 中継

Fluentd 中継

Fluentd 中継

Fluentd Fluentd Fluentd Fluentd

Server Server Server Server

Fluentd 中継

Page 102: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Redshift

Elasticsearch

Fluentd 中継

分析用VPCタイトル毎のVPC

Fluentd 中継

Fluentd 中継

Fluentd 中継

Fluentd Fluentd Fluentd Fluentd

Server Server Server Server

Page 103: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

Fluentd × Docker × Jenkins

Page 104: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

運用効率化

リソースの活用

JenkinsでFluentdの増減を管理

中継サーバのリソースを無駄なく利用

Page 105: AutoScale×ゲーム ~運用効率化への取り組み~

One more thing…

Page 106: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

http://tctechcrunch2011.files.wordpress.com/2010/07/github-logo.png

Chef Serverspec

Docker

JMeter

JMeter負荷

Vagrant

JMeter

Page 107: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

まとめ

Page 108: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

AWSの価値とは

Page 109: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

AWSの機能を使えばやりたいことが簡単にすぐに導入できる

試験的・部分的な利用から本番運用まで

幅広い利用をサポート

Page 110: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

APIを使って自分たちの体制に合わせて最適化可能

海外等の普段手が回らない部分までカバー

運用コスト削減

Page 111: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

すべての開発者が、するキモチのような心やすまる運用を。

AWSが私達にくれたもの

Page 112: AutoScale×ゲーム ~運用効率化への取り組み~

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.