モンストのインフラ紹介スライド
何日か前にホッテントリになっていたのでメモ。
モンストを支えるインフラの今とこれから
https://speakerdeck.com/isaoshimizu/monsutowozhi-eruinhurafalsejin-tokorekara
APサーバ 300台以上 (12-20core)
Resque 50台
TURN 40台
Redis 30台
Memcached 200台以上 (メモリ32GB搭載マシン 割り当て26GBx100台=2.6TBのプールが2つ)
MariaDB 250台以上
計 870台以上
トラフィック
CDN 最大 270Gbps
API 平均 1Gbps
内部 最大 20Gbps
DC2箇所とAWS
「各DCはTY2,4経由で」 TY2,4 とはEQUINIX(エイクニクス)社のデータセンタか?
TY2 東京 - データセンターの仕様
TY4 東京 - データセンターの仕様
AWSにTURN Serverと開発環境を置いている。
TURN : Traversal Using Relay around NAT
NATの内側にいるクライアントどうしを通信させる中継サーバのことっぽい。
WebRTCに使われるP2Pの技術
TeamViewerなんかで使われていると思われ。
ゲームデータ、リソースデータはCDN CloudFront + S3 および Akamai
デプロイに Capistorano
GitHubのソースコードをtar玉にS3に置くとApplicationサーバが取りに来る
プロビジョニング: サーバとかを準備、提供すること
Ansible
Chef
「S3にMariaDBのレポジトリのミラー(本家の障害対策)」
aptly: Debianのレポジトリ管理ツール
Test Kitchen
「現在、アプリ内で高負荷による一部エラーが確認されており、解消に向けて対応を実施中です。ご迷惑をおかけし大変申し訳ございません。皆様全員に後日お詫びをお送りさせて頂きます。」
お詫び(の品)が要るんだ。パズドラでいう詫び石ってやつか。
「12-20 core なCPU x 2 (Hyper-Threading換算で24-40 core)のマシン」
Hyper-Threading換算
クエリ改善やキャッシュで負荷を軽減し、
ioDrive(ioMemory)からSSDへのスケールダウンできた。
つづく。