SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
当社のAWSへの取り組み
KLab株式会社
佐々木健一(@siroken3)
自己紹介


● お仕事
  ○ SIer (前職)
    ■ Java GUI系
  ○ KLab入社後
    ■ Java サーバサイド開発、受託系SE
    ■ PHPでのソーシャルゲーム開発
    ■ AWSインフラ担当へ(最近半年くらい)
AWS?

● Amazon Web Services の略
● IaaS型クラウドの先駆け
● EC2 (Elastic Computing Cloud)
  ○ 仮想サーバのホスティングサービス
● 世界中にリージョンと呼ばれる物理拠点がある
  ○   北米(東海岸*1, 西海岸*2)
  ○   アジア・パシフィック(東京, シンガポール)
  ○   南アメリカ
  ○   欧州
当社の状況 (ビジネス面)

● AWS上で複数タイトルリリース中
 ○ 真・戦国バスター for iPhone
 ○ Load of Dragons for iPhone
 ○ その他開発中含め複数タイトル


● グローバル市場へ重点を急速にシフト
 ○ まず北米マーケット
当社の状況 (技術面)

● 統合インフラ基盤 DSAS(※)
    ○   物理インフラ
    ○   安定・安心・大規模
    ○   国内大型IP向け
    ○   構成はほぼ枯れている
    ○   多重化 / 冗長化 / フェイルオーバー!
(※) http://www.klab.com/jp/services/products/dsas/index.html


● AWSに対する期待
  ○ 早期立ち上げ可能なインフラ
  ○ 海外ゲーム向け
  ○ 構成は試行錯誤中
当社の状況 (組織面)

● 水平分業チームから垂直分業チームへ

          企画

                      個々のチーム
     アプリケーション開発       で対応




     インフラ (ミドルウェア等)
[目指す姿] 進化/成長するインフラ
                   インフラ
                    Ver.2
          各チームの
          ノウハウ

 インフラ
  Ver.1




 チーム#1    チーム#2   チーム#3
現在試行錯誤中ですが



    開発中(検討中も含)の
   AWSインフラを晒します!
登場する技術


●   Amazon VPC (Virtual Private Cloud)
●   AWS CloudFormation
●   Chef-solo
●   Capistrano
AWS VPC
● プライベートネットワークを構築できる!
 ○ VPCではない従来型のEC2は「レガシー」


● VPCの特徴(抜粋)
 ○ インスタンス停止してもprivate IPアドレスが保持される
 ○ ネットワークインタフェースの差し替え
   ■ Active-standby構成が組める
 ○ ルーティングの動的変更


● はまりどころもたくさん!
AZa   AZb   AZc
CloudFormation / Chef / Capistrano
● CloudFormation
  ○ EC2インスタンスや仮想ルータなどAWSのリソースを設計
    したとおりに起動させる
● Chef (Chef-solo)
  ○ EC2インスタンスで動作するミドルウェア(apache,
    memcached,等)やconfigurationを設計したとおりに反映さ
    せる
● Capistrano
  ○ 多数あるサーバ群を効率よく操作するためのフロントエン
    ド
インフラのライフサイクル

     初期構築         アプリケーション運用

 CloudFormation    Capistrano
      Chef




   ノウハウの記述         インフラ改善

 CloudFormation    Capistrano
   テンプレート            Chef
   Chefレシピ
CloudFormation (抜粋)
"nat": {                                 EC2インスタンスを起動する
                                         定義
   "Type": "AWS::EC2::Instance",
   "Metadata": {
      "AWS::CloudFormation::Init": {
         "configSets": {
            "boot": [ "bootPackages","bootCommands" ]
         },
         "bootPackages" : {
            "packages" : {             起動時に自動的にインストール
                                       するパッケージも指定できる
               "yum" : {
                  "gcc" : [],
                  "gcc-c++" : [],
CloudFormation (抜粋)

                                          ネットワークインタフェースの定
                                          義
"natNetworkInterface" : {
   "Type": "AWS::EC2::NetworkInterface",
   "Properties" : {
      "SubnetId" : { "Ref" : "admUsWest2aSubnet" },
      "SourceDestCheck" : "false",
      "GroupSet" : [ { "Ref": "admSecurityGroup" } ]
    }
}
Chef

● http://www.opscode.com/chef/

● インフラをコーディング!
  ○ ノードの役割をJSONで内部構成をRuby DSLで記述
  ○ 設定/維持の自動化


        Web             NAT        Memcache
  ●   apache2   ●   iptables   ●   memcached
  ●   PHP5.3
Chef (JSON)
name 'role_mgr'
description 'This is mgr server role.'
default_attributes({ :run_app => "mgr" })
run_list [
       "recipe[apache2]",
       "recipe[base::mgr]",              Nodeで実行さ
       "recipe[base::capistrano]",       れるレシピ達
       "recipe[php]",
       "recipe[kg_global::mgr]",
      ]
Chef (Ruby)


web_app "site" do
  server_name node['hostname']
  server_aliases ["prodsite.klab.com", "stgsite.klab.com"]
  docroot "/opt/klab/site/current/app/webroot"
  template "site.conf.erb"
end


                            Apache VirtualHostが生
                            成される
Capistrano

● http://capistranorb.com/

● 多数のサーバに対して透過的に同時に運用操
  作を行うための仕組み

● 元々RoR向けですがPHPでも使える
Capistrano
# ex-1
$ cap shell
cap> ls /tmp # 全サーバの /tmp 以下をls

# ex-2
$ cap logging:tail_log # 全webサーバのログをtail -fする
$ cat deploy.rb
namespace :logging do
   task :tail_log, :roles => :web do
      stream "tail -f/var/log/httpd/access.log"
   end
end
さらに...


● 冗長化して安心して使えるインフラへ

● 適切なコストにするノウハウ

● インフラ運用と開発のアジャイルな開発を支える
  仕組みづくり(devops)
いうわけで当社はAWS力入れてます

● AWSに明るい方、チャレンジしたい方大
  歓迎!

● グローバルゲームインフラ
一緒に作りましょう!

● もちろんPHP技術者大歓迎!
ご清聴
ありがとうございました

Mais conteúdo relacionado

Mais procurados

Awsをちゃんと使ってみた 監視編
Awsをちゃんと使ってみた   監視編Awsをちゃんと使ってみた   監視編
Awsをちゃんと使ってみた 監視編
Yoichi Toyota
 
20120821 pronet study
20120821 pronet study20120821 pronet study
20120821 pronet study
Six Apart
 
Pythonユーザのための構成管理入門 #pyconapac
Pythonユーザのための構成管理入門 #pyconapacPythonユーザのための構成管理入門 #pyconapac
Pythonユーザのための構成管理入門 #pyconapac
Takeshi Komiya
 

Mais procurados (20)

Awsをちゃんと使ってみた 監視編
Awsをちゃんと使ってみた   監視編Awsをちゃんと使ってみた   監視編
Awsをちゃんと使ってみた 監視編
 
20120821 pronet study
20120821 pronet study20120821 pronet study
20120821 pronet study
 
Ansible 2.0 のサマライズとこれから
Ansible 2.0 のサマライズとこれからAnsible 2.0 のサマライズとこれから
Ansible 2.0 のサマライズとこれから
 
Nginx
NginxNginx
Nginx
 
Awsで構築したのだよ 05 プロセス監視、メモリ使用率、ディスク使用率をCloudWatchのカスタムメトリクスに追加したい
Awsで構築したのだよ 05 プロセス監視、メモリ使用率、ディスク使用率をCloudWatchのカスタムメトリクスに追加したいAwsで構築したのだよ 05 プロセス監視、メモリ使用率、ディスク使用率をCloudWatchのカスタムメトリクスに追加したい
Awsで構築したのだよ 05 プロセス監視、メモリ使用率、ディスク使用率をCloudWatchのカスタムメトリクスに追加したい
 
densan2014-late01
densan2014-late01densan2014-late01
densan2014-late01
 
Ansible ではじめるインフラのコード化入門
Ansible ではじめるインフラのコード化入門Ansible ではじめるインフラのコード化入門
Ansible ではじめるインフラのコード化入門
 
ZabbixとAWS
ZabbixとAWSZabbixとAWS
ZabbixとAWS
 
Devlove mackerel
Devlove mackerelDevlove mackerel
Devlove mackerel
 
Pythonユーザのための構成管理入門 #pyconapac
Pythonユーザのための構成管理入門 #pyconapacPythonユーザのための構成管理入門 #pyconapac
Pythonユーザのための構成管理入門 #pyconapac
 
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1
 
忍者ツールズのCouchbase導入事例
忍者ツールズのCouchbase導入事例忍者ツールズのCouchbase導入事例
忍者ツールズのCouchbase導入事例
 
Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)
 
AWSのElastic BeanstalkでWordPressを 構築レスで導入してみる。
AWSのElastic BeanstalkでWordPressを 構築レスで導入してみる。AWSのElastic BeanstalkでWordPressを 構築レスで導入してみる。
AWSのElastic BeanstalkでWordPressを 構築レスで導入してみる。
 
丸の内MongoDB勉強会#20LT 2.8のストレージエンジン動かしてみました
丸の内MongoDB勉強会#20LT 2.8のストレージエンジン動かしてみました丸の内MongoDB勉強会#20LT 2.8のストレージエンジン動かしてみました
丸の内MongoDB勉強会#20LT 2.8のストレージエンジン動かしてみました
 
Leap MotionとLambdaで「第九」を鳴らしてみる
Leap MotionとLambdaで「第九」を鳴らしてみるLeap MotionとLambdaで「第九」を鳴らしてみる
Leap MotionとLambdaで「第九」を鳴らしてみる
 
WordPressベースの 月間1000万PVサイトのサーバー構成
WordPressベースの 月間1000万PVサイトのサーバー構成WordPressベースの 月間1000万PVサイトのサーバー構成
WordPressベースの 月間1000万PVサイトのサーバー構成
 
Ansible handson ood2016
Ansible handson ood2016Ansible handson ood2016
Ansible handson ood2016
 
Zabbix による ms sql監視 ~データベースモニタリング~ odbc
Zabbix による ms sql監視 ~データベースモニタリング~ odbcZabbix による ms sql監視 ~データベースモニタリング~ odbc
Zabbix による ms sql監視 ~データベースモニタリング~ odbc
 
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作った
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作ったRuby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作った
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作った
 

Semelhante a 当社のawsへの取組

クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
Daisuke Ikeda
 
Aws tools for power shellをつかいこなそう
Aws tools for power shellをつかいこなそうAws tools for power shellをつかいこなそう
Aws tools for power shellをつかいこなそう
Genta Watanabe
 
AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -
SORACOM, INC
 
20130714 July Tech Festa 日本CloudStackユーザー会
20130714 July Tech Festa 日本CloudStackユーザー会20130714 July Tech Festa 日本CloudStackユーザー会
20130714 July Tech Festa 日本CloudStackユーザー会
samemoon
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
Masahiro Nagano
 

Semelhante a 当社のawsへの取組 (20)

BCPに活かせ!一撃 CloudFormation
BCPに活かせ!一撃 CloudFormationBCPに活かせ!一撃 CloudFormation
BCPに活かせ!一撃 CloudFormation
 
現場的!AWSとオンプレの違い(赤べこバージョン)
現場的!AWSとオンプレの違い(赤べこバージョン)現場的!AWSとオンプレの違い(赤べこバージョン)
現場的!AWSとオンプレの違い(赤べこバージョン)
 
AWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
AWS Black Belt Online Seminar 2017 AWS Elastic BeanstalkAWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
AWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
 
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
 
現場的!オンプレとAWSの違い
現場的!オンプレとAWSの違い現場的!オンプレとAWSの違い
現場的!オンプレとAWSの違い
 
Jaws−横浜ハンズオンーCloudFormation 1/3
Jaws−横浜ハンズオンーCloudFormation 1/3Jaws−横浜ハンズオンーCloudFormation 1/3
Jaws−横浜ハンズオンーCloudFormation 1/3
 
Aws tools for power shellをつかいこなそう
Aws tools for power shellをつかいこなそうAws tools for power shellをつかいこなそう
Aws tools for power shellをつかいこなそう
 
AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -
 
JAWS-UG中央線東海支部ハンズオン
JAWS-UG中央線東海支部ハンズオンJAWS-UG中央線東海支部ハンズオン
JAWS-UG中央線東海支部ハンズオン
 
成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略
 
AWS Black Belt Online Seminar Amazon EC2
AWS Black Belt Online Seminar Amazon EC2AWS Black Belt Online Seminar Amazon EC2
AWS Black Belt Online Seminar Amazon EC2
 
20201017 JAWS-UG Fukuoka AWS Storage Gateway
20201017 JAWS-UG Fukuoka AWS Storage Gateway20201017 JAWS-UG Fukuoka AWS Storage Gateway
20201017 JAWS-UG Fukuoka AWS Storage Gateway
 
PHP on Cloud
PHP on CloudPHP on Cloud
PHP on Cloud
 
AWS初心者向けWebinar AWS上にWebサーバーシステムを作ってみましょう ~まずは仮想サーバーから[演習つき]~
AWS初心者向けWebinar AWS上にWebサーバーシステムを作ってみましょう ~まずは仮想サーバーから[演習つき]~AWS初心者向けWebinar AWS上にWebサーバーシステムを作ってみましょう ~まずは仮想サーバーから[演習つき]~
AWS初心者向けWebinar AWS上にWebサーバーシステムを作ってみましょう ~まずは仮想サーバーから[演習つき]~
 
同じサービスを ECSとOpsWorksで 運用してみた
同じサービスをECSとOpsWorksで運用してみた同じサービスをECSとOpsWorksで運用してみた
同じサービスを ECSとOpsWorksで 運用してみた
 
Jaws−横浜ハンズオンーCloudFormation w/ VPC 3/3
Jaws−横浜ハンズオンーCloudFormation w/ VPC 3/3Jaws−横浜ハンズオンーCloudFormation w/ VPC 3/3
Jaws−横浜ハンズオンーCloudFormation w/ VPC 3/3
 
20130714 July Tech Festa 日本CloudStackユーザー会
20130714 July Tech Festa 日本CloudStackユーザー会20130714 July Tech Festa 日本CloudStackユーザー会
20130714 July Tech Festa 日本CloudStackユーザー会
 
LambdaとMobileの美味しいかもしれない関係
LambdaとMobileの美味しいかもしれない関係LambdaとMobileの美味しいかもしれない関係
LambdaとMobileの美味しいかもしれない関係
 
AWS運用自動化への第一歩 
AWS運用自動化への第一歩 AWS運用自動化への第一歩 
AWS運用自動化への第一歩 
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
 

当社のawsへの取組