Your SlideShare is downloading. ×
0
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
クックパッドのスケーリング
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

クックパッドのスケーリング

3,759

Published on

Published in: Business, Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,759
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
0
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • \n \n
  • Transcript

    • 1. クックパッドのスケーリング クックパッド株式会社 高田悟史
    • 2. 自己紹介 ■ 高田悟史(たかださとし) ■ 787万人を支えるインフラチーム ■ スケール関連を担当中
    • 3. 目次 ■ キャパシティプランニング ■ サーバ増設のスピードアップ
    • 4. キャパシティプランニング
    • 5. キャパシティプランニングとは ユーザがいつまでも快適に 使い続けるためにやるべき こと
    • 6. キャパシティプランニング ■ 分析 ■ 予測 ■ 配置
    • 7. キャパシティプランニング - 分析 ■ 現在のキャパシティを知る ■ 長期に渡るデータの記録 ■ サーバ特性に合わせて、キャパシティ を計る指標を決める
    • 8. キャパシティプランニング - 予測 ■ キャパシティを越える日を予測する ■ 指標と計測データの結びつけ ■ 上限を特定して対策をする時期を確定
    • 9. キャパシティプランニング - 配置 ■ 迅速にサービスインできるようになる ■ 自動インストール ■ 自動設定
    • 10. キャパシティプランニング ■ 分析 ■ 予測 ■ 配置
    • 11. サーバ増設のスピードアップ
    • 12. クックパッドのサーバー増設の流れ サーバ管理ツール Rails boot用サーバ (2-1)kickstart.cfgの取得 DHCP (1)PXE Boot tftp New(3)puppetd Apache (2-2)パッケージ取得 puppetmasterd
    • 13. OSインストール時の問題■ 手間がかかる ■ 電源をOn ■ OSのCDROMからインストール ■ 次へ次へ
    • 14. OSインストールまでの流れを改善■ 自作のサーバ管理ツールにサーバ情報を登録■ 電源をOn■ PXE Bootでネットブート■ 動的生成されたkickstart.cfgを使ってKickstart ■ インストール終了まで待つだけ
    • 15. サーバ情報を登録
    • 16. kickstart.cfgを自動生成■ http://ブートサーバ/deployment/kickstart ■ ホスト名 network --device eth0 --bootproto dhcp --hostname test1 ■ %post に出力される # eth0 cat <<EOF > /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=none ONBOOT=yes TYPE=Ethernet IPADDR=192.168.0.1 NETMASK=255.255.255.0 EOF
    • 17. PXE BootとKickstartとPuppet サーバ管理ツール Rails boot用サーバ (2-1)kickstart.cfgの取得 DHCP (1)PXE Boot tftp New(3)puppetd Apache (2-2)パッケージ取得 puppetmasterd
    • 18. OSインストール後の問題■ ソフトウェアインストール/設定用スクリプトの メンテナンスコスト■ パッケージの統一■ サーバー毎に異なる設定の反映 ■ database.yml ■ my.cnf
    • 19. Puppetを導入した ■ Puppetとは ■ サーバの状態管理ツール ■ Manifestに状態を記述することで反映 ■ サーバ / クライアント構成
    • 20. Puppetの構成 puppetmasterd (1)Manifestを取得 puppetd puppetd (2)Manifestを実行
    • 21. パッケージの統一(Passengerの例) package { passenger: provider => gem, notify => Service[httpd], ensure => 2.2.5; }
    • 22. サーバごとに異なる設定(/etc/my.cnfの例) ■ Manifest $mysql_server_id = $hostname ? { db1 => 10001, db2 => 10002, db3 => 10003, db4 => 10004, default => error } ■ Template server-id = <%= mysql_server_id %>
    • 23. PXE BootとKickstartとPuppet サーバ管理ツール Rails boot用サーバ (2-1)kickstart.cfgの取得 DHCP (1)PXE Boot tftp New(3)puppetd Apache (2-2)パッケージ取得 puppetmasterd
    • 24. Puppet導入の副作用 ■ 学習コスト ■ インストール/設定の手間を0にするまでには それなりに時間がかかる ■ manifestにもリファクタリングが必要
    • 25. まとめ
    • 26. まとめ ■ サーバ増設のスピードは重要 ■ OSのインストールにかかる時間は変わらな いが、手間がかからなくなった ■ Puppetを導入して、ソフトウェアのインス トール/設定の手間がほぼ0になった
    • 27. ご清聴ありがとう ございました

    ×