狠狠撸

狠狠撸Share a Scribd company logo
春の闯础奥厂-鲍骋?叁都物语2013

             開発環境としてのAWSを
               真面目に考える

                2013年3月9日
                NRIネットコム株式会社?佐々木拓郎



13年3月9日土曜日
はじめに


        ? 本日のアジェンダ             #jaws
                                    ug3to
             ? 自己紹介(5分)

             ? AWSで開発環境(20分)

             ? DevOps?×?AWS?+?デモ(20分)




13年3月9日土曜日
#jaws
                                        ug3to
                         自己紹介:?佐々木拓郎

             ?   プロフィール

                 ?   NRIネットコム株式会社?インターネット事業部                        @katotaku

                 ?   Twitter: @katotaku(実名)@dkfj(匿名)/ Facebook: takuro.sasaki

                 ?   blog: http://d.hatena.ne.jp/dkfj/ (匿名)

                 ?   好きなAWSサービス:?S3

             ★   備考

                 ?   認定スクラム?マスター

                 ?   何かありましたら、Facebook?Twitterの方でお気軽にご連絡ください


13年3月9日土曜日
#jaws
                                                  ug3to
                            NRIネットコム



             ?   NRIグループで唯一関西を本社とする会社

                 ?   Webシステムを得意としているシステム会社

                 ?   設計開発から運用まで全て行う為、

                     アプリケーション?インフラエンジニアが一杯いる

                 ?   Web系の仕事が多いため、ディレクター?デザイナーも一杯!!

                 ?   大阪本社だけど、東京の方が人が多い。でも関西Love




13年3月9日土曜日
#jaws
                                     ug3to
                    NRIネットコムとAWSと私

             ?   2006年?米国の会社に出向中に、Amazon S3と出会うもEC2はスルー

             ?   2007年?EC2が仮想サーバということを知って使いはじめる

             ?   2008年?匿名ブログでAWSのことを書き始めると、そこそこ人気に

             ?   2009年?会社の一部システムで、EC2を利用し始める

             ?   2010年?iPadを使った「モバイル会議」システムのインフラにAWSを採用

             ?   2011年?既存のお客様にも、徐々に勧め始める

             ?   2012年?AWSソリューションとして本格的に営業開始

             ?   2013年?趣味で使っていたものが本職になる。?←?イマココ

13年3月9日土曜日
#jaws
                               ug3to
             NRIネットコムのWebサイト
                   調査結果も随時掲載中
     http://www.nri-net.com/products/cloud/aws.html




13年3月9日土曜日
#jaws
                              ug3to


                本日のテーマ

             開発環境としてのAWSを
               真面目に考える




13年3月9日土曜日
#jaws
                               ug3to
               参加者している皆様への質問



             ? アプリケーション/インフラエンジニア?

             ? 自社で開発用のPC/サーバの管理をしている?

             ? 突然、開発機が壊れて困ったことがある?

             ? プロジェクト毎に環境が増殖して管理出来ない?




13年3月9日土曜日
#jaws
                         ug3to




             先ほどの質問は、
  弊社で実際にあった問題でした。




13年3月9日土曜日
#jaws
                                    ug3to
                   開発環境の故障




              ?
                          ? 代替機なし

                          ? 開発ストップ

                          ? 復旧に多大な工数
                   障害発生
             開発機          ? 迫る納期




13年3月9日土曜日
#jaws
                                           ug3to
                       増殖するサーバー




             プロジェクトA   プロジェクトB   プロジェクトC   プロジェクトX




             ? プロジェクトごとに多様な開発機

             ? 稼働していないプロジェクトの開発機も無くせない

             ? 増え続ける開発機
13年3月9日土曜日
#jaws
                                                                                   ug3to
                                       貧弱なサーバー
          予算上の都合で、開発環境に潤沢な投資を出来る企業は少ない。
          一方で、貧弱な開発環境の為に、貴重なリソースである開発者の時間がムダに
          なっているケースも。




              必要なリソース                                          現実に割り当てられたリソース
   http://www.?ickr.com/photos/jiteshjagadish/5178417174/   http://www.?ickr.com/photos/gvtbc/188328021/




13年3月9日土曜日
#jaws
                              ug3to
                本日のテーマ

             開発環境としてのAWSを
               真面目に考える


  それって、AWSで解決出来ない?


13年3月9日土曜日
#jaws
                              ug3to
             ハードウェアトラブルからの開放

         物理サーバを仮想イメージ(AMI)として、テンプレート化
         例え使用中のAWSで障害が起きたとしても、別の場所で簡単に起動出来る




         物理サーバ     仮想化イメージ(AMI)         インスタンス




13年3月9日土曜日
#jaws
                              ug3to
               必要な時に、必要なだけ

         一度仮想化すれば、サーバーは必要な時にだけ起動
         使っていない古い環境の維持コストは、ストレージ利用料だけ
         ソースやデータなど可変部分は、S3やEBSで永続化




13年3月9日土曜日
#jaws
                             ug3to
             必要に応じて、リソース増強

         スケールアップもスケールアウトも、1クリックで実現可能
         使った分だけなので、最小限のコストで実現可能




                          Large

             Small


                         Small Small Small

13年3月9日土曜日
#jaws
                                      ug3to
                      AWSの罠

             ? AWSは安くて便利

             ? 気がつくと至る所で利用されだす

             ? 積もり積もると、トータルではかなりの金額に




         工夫次第で、費用の大幅な削減も可能


13年3月9日土曜日
#jaws
                              ug3to
             対策?使う時だけ手動で立ち上げる

             ? 必要なインスタンスを、手動で立ちあげましょう

             ? 帰宅する前に、インスタンスを停止してね




                     必ず失敗します

        ? 他の人が、まだ使うと思って停止しなかった

        ? そもそも面倒くさい

13年3月9日土曜日
#jaws
                           ug3to
         インスタンスは自動で起動?停止する

             ? 構成管理サーバから、決まった時間に起動?停止

             ? 停止時間が決まっているので、調整の必要なし




平日日中だけの稼働で、コスト1/3

13年3月9日土曜日
#jaws
                              ug3to
             リザーブド?インスタンスの購入




              結構ややこしいです。
              前払金の計上の仕方等、
              経理の方と密に話し合ってください。
13年3月9日土曜日
#jaws
                             ug3to




             セキュリティは?




13年3月9日土曜日
#jaws
                                             ug3to
             VPCによるプライベート?ネットワークの構築

             VPC機能により、サブネットの一部として利用可能




13年3月9日土曜日
#jaws
                                   ug3to
                    管理部門の壁

             ? それでも、導入に難色を示す管理部門も多い

             ? 従量課金の恐怖

             ? 前例がないものを導入することへの恐怖

             ? そもそもよく解らない



                地道に話し合い、説得しましょう

13年3月9日土曜日
#jaws
                             ug3to




             具体的なチップス




13年3月9日土曜日
#jaws
                                                  ug3to
                          アカウントの管理

         新規プロジェクト開始時に3つのAWSアカウントの作成。
         開発用?検証用?本番用を分けて、同じ環境を作る。
         プロジェクトの段階ごとに、サポートを切り替える。




         開発用アカウント          検証用アカウント          本番用アカウント



              開発者               開発者               ビジネ
                    サポー               サポー               スサポ
                       ト                 ト                  ー   ト




13年3月9日土曜日
#jaws
                                          ug3to
                     IAMの利用

         マスターアカウントは、基本的に使わない。
         個人事にIAMアカウントを作成し、細かく権限設定。
         システムで使うアカウントは、それぞれで作成。




       マスターアカウントを使って良いのは、
       ハンズオンだけ!!



13年3月9日土曜日
#jaws
                                                   ug3to
         一括決済(Consolidated Billing) によるアカウント紐付け



                           支払い用アカウント




 プロジェクトA     プロジェクトA    プロジェクトA    プロジェクトB    プロジェクトB    プロジェクトB
開発用アカウント     検証用アカウント   本番用アカウント   開発用アカウント   検証用アカウント   本番用アカウント

       メリット:                       デメリット:
       ? 請求が一括で出来る                 ? リザーブドインスタンスの問題
       ? ボリュームディスカウントの恩恵
       ? 請求書決済等に切り替え易い


13年3月9日土曜日
#jaws
                                       ug3to
                         ネットワークの管理
         複数プロジェクトで共通のVPC。 or プロジェクトごとのVPC?
         VPN Gatewayの接続元IPアドレスの問題もあるので、
         利用方法に応じて選択


                                             プロジ
                                                ェクト
                                                   A



         プロジェクトA     プロジェクトB


                                             プロジ
                                                ェクト
                                                      B




               プロジェクトC
                                             プロジ
                                                ェクト
                                                      C



13年3月9日土曜日
#jaws
                  ug3to



これで、ひと通り使えます。でも、
 AWSで出来ることは、これだけ?




13年3月9日土曜日
#jaws
                              ug3to
                本日のテーマ

             開発環境としてのAWSを
               真面目に考える


    俺のAWSは、もっと出来るはず


13年3月9日土曜日
#jaws
                             ug3to




              まずは、
             米国での事例紹介




13年3月9日土曜日
#jaws
                              ug3to
             Pinterest

                   ? 1,000万人以上の利用者

                   ? 数百台のサーバー

                   ? たった12名で開発運用




13年3月9日土曜日
#jaws
                            ug3to
             Amazon
                 ? 平均11秒に1回のリリ
                  ース

                 ? 最大で1時間に1,079回
                  リリース

                 ? 平均で10,000台のサーバ
                  にデプロイ


13年3月9日土曜日
#jaws
                                 ug3to



             業態は違うものの、我々が知っている
             システムの開発運用と違いすぎる!!



                  何が違うのか?




13年3月9日土曜日
#jaws
                           ug3to




             答えの一つは
              自動化




13年3月9日土曜日
#jaws
                                ug3to
                継続的デリバリー




             いつまで手動でデプロイしているのですか?
13年3月9日土曜日
#jaws
                                                                                     ug3to
              アジャイルのレフトウィングとライトウィング




                                                                                             ヒント?
    ※株式会社チャンジビジョン?平鍋さんの許可を得ての使用。
    http://blogs.itmedia.co.jp/.shared/image.html?/photos/uncategorized/2012/09/09/whereisyouragile.png
13年3月9日土曜日
#jaws
                              ug3to
              継続的デリバリーの5つの原則


             ? リリースは、繰り返し可能で信頼性が高い仕組み

             ? 全ての工程で自動化されている

             ? 全てをバージョン管理システムで管理されている

             ? 工程内に品質をつくり込む仕組みを内包している

             ? 継続的に改善する



13年3月9日土曜日
#jaws
                                   ug3to

             全ての工程における、自動化がキーワード


             この仕組を作りあげるには、
             アプリチームだけでは無理!
             基盤チームだけでも無理!
             もちろん品質管理部門でも無理!


                   両者の協調が必要


13年3月9日土曜日
#jaws
                                ug3to
             DevOpsとは?

    DevOpsとは、開発部門、運用部門、品質管理部門のあいだの、統
    合、コミュニケーション、コラボレーションを行うための一連のメ
    ソッドとシステムである。これはまた、適切なソフトウェアとサー
    ビスによってビジネスゴールを実現するためのミーティングにおい
    て、開発と運用の相互依存として理解されつつある。




13年3月9日土曜日
#jaws
                                                                                   ug3to
                                        DevOps




             http://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-?ickr


                       もちろん、デザイナー?営業など
                       関係する全ての人々への愛が大切
13年3月9日土曜日
#jaws
                                ug3to
                DevOpsに大切なこと




             ? お互いの尊敬と信頼(企業文化)

             ? ツールとプロセス(ノウハウ)




13年3月9日土曜日
#jaws
                            ug3to




             それぞれの役割




13年3月9日土曜日
#jaws
                                ug3to
                  アプリ開発者の責務

             ? バージョン管理は当たり前

              ?出来ればGit等の分散型で

             ? ユニットテストは、もはや必須

              ?最低でも分岐網羅(C1)まで

             ? 1ビルドで、どこの環境でも動くアーキテクチャ

              ?環境(開発、検証、本番)の依存性を外出し


13年3月9日土曜日
#jaws
                                   ug3to
                   基盤開発者の責務

             ? 構成管理?バージョン管理でサーバ管理

              ?構成情報をバージョン管理

             ? 運用に関わる全て作業の手作業廃止

              ?構築?リリース?メトリックス収集

             ? 環境の再現性の確保

              ?いつでも、同じ環境を再現出来るようにする


13年3月9日土曜日
#jaws
                              ug3to
                 両者の責務




             システムを継続的にカイゼンする




13年3月9日土曜日
#jaws
                      ug3to

 AWSにピッタリじゃないですか?


     再現性のある環境
     自動化の為のAPI




13年3月9日土曜日
#jaws
                            ug3to




             構成&フロー例




13年3月9日土曜日
#jaws
                  ug3to




13年3月9日土曜日
#jaws
                       ug3to




             デモ




13年3月9日土曜日
#jaws
                                                           ug3to


                                         デプロイ
                 SNS通知

             SQS登録        Jenkins
                             &                          App Server
                         Selenium

                                テスト指示             テスト

             SQSポーリング
                                    Windows Server
                                    Selenium Client




13年3月9日土曜日
#jaws
                                ug3to


                 本日のテーマ

             開発環境としてのAWSを
                     た
               真面目に考える

              ありがとうございました。
              後日の質問は、@dkfjまで

13年3月9日土曜日
Ad

Recommended

PDF
早稲田大学授業 - モバイルプログラミング
Ippei Arita
?
PDF
叠耻诲诲测笔谤别蝉蝉の导入からカスタマイズまでの日记4
Shoichi Otomo
?
PDF
初心者向けWebinar AWSで開発環境を構築しよう
Amazon Web Services Japan
?
PDF
AWS Black Belt Online Seminar 2017 Amazon EC2
Amazon Web Services Japan
?
PDF
AWS Black Belt Online Seminar 2017 初心者向け クラウドコンピューティング はじめの一歩
Amazon Web Services Japan
?
PPTX
AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013
Takashi Someda
?
PDF
础奥厂と闯础奥厂-鲍骋
Shigeru Numaguchi
?
PPTX
Backlog、Cacoo にみるAWS運用の勘所 - JAWS UG 三都物語
Takashi Someda
?
PDF
20150523 operation jaws(JAWS-UG OSAKA #13)
Daiki Mori
?
PPTX
JAWS-UGとAWSJ ユーザーコミュニティと一緒に成長した8年間とその先へ
Shigeru Numaguchi
?
PDF
JAWS-UG 青森 第0回勉強会 発表資料
Yasuhiro Horiuchi
?
PDF
20190410 jaws ug-infomation
Yukihito Kataoka
?
PDF
20150307 fukuoka meetup community jaws-ug
Toshiyuki Konparu
?
PDF
スタートアップだからこそ使うAWS(第5回JAWS-UG Nagoya)
Tomotsune Murata
?
PDF
闯础奥厂-鲍骋を楽しもう!
Shigeru Numaguchi
?
PPT
【JAWS-UG Sapporo】はじめてのAWSワークショップ 概説
Machie Atarashi
?
PDF
AWS Update 2011/10
Akio Katayama
?
PDF
础奥厂と闯础奥厂-鲍骋10年の歩み
Shigeru Numaguchi
?
PDF
补飞蝉で行こう!2013年4月鲍辫诲补迟别版
Koichiro Nishijima
?
PPTX
[20180-11-23] AWS & JAWS-UG UPDATES
Shigeru Numaguchi
?
PDF
20121026 AWSで行こうupdate版
Koichiro Nishijima
?
PDF
JAWS-UG 三都物語 2013 New world of IT – クラウド時代を生き抜くための考え方
Yasuhiro Horiuchi
?
PDF
「はじめてのAmazon Web Services」 JAWS-UG 長崎第1回勉強会
Yasuhiro Horiuchi
?
PDF
初めてのクラウド AWS編
Koichiro Nishijima
?
PDF
20141202 jaws ug
Shinya Yamada
?
PDF
Cto48 aws 20100618_fin
仁 上原
?
PDF
Aws sdk for java
Akio Katayama
?
PPTX
JAWS-UG 群馬 2019年ふりかえり
Hiroyuki Numao
?
PDF
闯础奥厂鲍骋初心者支部 础奥厂の勉强の仕方
Takuro Sasaki
?
PDF
Crawler for Non engineer
Takuro Sasaki
?

More Related Content

Similar to 開発環境としてのAwsを真面目に考える jawsug2013三都物語公開用 (20)

PDF
20150523 operation jaws(JAWS-UG OSAKA #13)
Daiki Mori
?
PPTX
JAWS-UGとAWSJ ユーザーコミュニティと一緒に成長した8年間とその先へ
Shigeru Numaguchi
?
PDF
JAWS-UG 青森 第0回勉強会 発表資料
Yasuhiro Horiuchi
?
PDF
20190410 jaws ug-infomation
Yukihito Kataoka
?
PDF
20150307 fukuoka meetup community jaws-ug
Toshiyuki Konparu
?
PDF
スタートアップだからこそ使うAWS(第5回JAWS-UG Nagoya)
Tomotsune Murata
?
PDF
闯础奥厂-鲍骋を楽しもう!
Shigeru Numaguchi
?
PPT
【JAWS-UG Sapporo】はじめてのAWSワークショップ 概説
Machie Atarashi
?
PDF
AWS Update 2011/10
Akio Katayama
?
PDF
础奥厂と闯础奥厂-鲍骋10年の歩み
Shigeru Numaguchi
?
PDF
补飞蝉で行こう!2013年4月鲍辫诲补迟别版
Koichiro Nishijima
?
PPTX
[20180-11-23] AWS & JAWS-UG UPDATES
Shigeru Numaguchi
?
PDF
20121026 AWSで行こうupdate版
Koichiro Nishijima
?
PDF
JAWS-UG 三都物語 2013 New world of IT – クラウド時代を生き抜くための考え方
Yasuhiro Horiuchi
?
PDF
「はじめてのAmazon Web Services」 JAWS-UG 長崎第1回勉強会
Yasuhiro Horiuchi
?
PDF
初めてのクラウド AWS編
Koichiro Nishijima
?
PDF
20141202 jaws ug
Shinya Yamada
?
PDF
Cto48 aws 20100618_fin
仁 上原
?
PDF
Aws sdk for java
Akio Katayama
?
PPTX
JAWS-UG 群馬 2019年ふりかえり
Hiroyuki Numao
?
20150523 operation jaws(JAWS-UG OSAKA #13)
Daiki Mori
?
JAWS-UGとAWSJ ユーザーコミュニティと一緒に成長した8年間とその先へ
Shigeru Numaguchi
?
JAWS-UG 青森 第0回勉強会 発表資料
Yasuhiro Horiuchi
?
20190410 jaws ug-infomation
Yukihito Kataoka
?
20150307 fukuoka meetup community jaws-ug
Toshiyuki Konparu
?
スタートアップだからこそ使うAWS(第5回JAWS-UG Nagoya)
Tomotsune Murata
?
闯础奥厂-鲍骋を楽しもう!
Shigeru Numaguchi
?
【JAWS-UG Sapporo】はじめてのAWSワークショップ 概説
Machie Atarashi
?
AWS Update 2011/10
Akio Katayama
?
础奥厂と闯础奥厂-鲍骋10年の歩み
Shigeru Numaguchi
?
补飞蝉で行こう!2013年4月鲍辫诲补迟别版
Koichiro Nishijima
?
[20180-11-23] AWS & JAWS-UG UPDATES
Shigeru Numaguchi
?
20121026 AWSで行こうupdate版
Koichiro Nishijima
?
JAWS-UG 三都物語 2013 New world of IT – クラウド時代を生き抜くための考え方
Yasuhiro Horiuchi
?
「はじめてのAmazon Web Services」 JAWS-UG 長崎第1回勉強会
Yasuhiro Horiuchi
?
初めてのクラウド AWS編
Koichiro Nishijima
?
20141202 jaws ug
Shinya Yamada
?
Cto48 aws 20100618_fin
仁 上原
?
Aws sdk for java
Akio Katayama
?
JAWS-UG 群馬 2019年ふりかえり
Hiroyuki Numao
?

More from Takuro Sasaki (20)

PDF
闯础奥厂鲍骋初心者支部 础奥厂の勉强の仕方
Takuro Sasaki
?
PDF
Crawler for Non engineer
Takuro Sasaki
?
PDF
JAWSUG architecture-crowler
Takuro Sasaki
?
PDF
Innovation eggcloudnative
Takuro Sasaki
?
PDF
尝补尘产诲补认証认可ハ?ターン
Takuro Sasaki
?
PDF
厂飞补驳驳别谤で始めるモデルファーストな础笔滨开発
Takuro Sasaki
?
PDF
Jawsug chiba API Gateway
Takuro Sasaki
?
PDF
DevLove Kansai AWS
Takuro Sasaki
?
PDF
Rubyで操るAWS 第67回Ruby関西 勉強会
Takuro Sasaki
?
PDF
JAWS-UG初心者支部 AWS書籍活用術
Takuro Sasaki
?
PDF
JAWSUG Kansai Simple Workflow Service (SWF)
Takuro Sasaki
?
PDF
JAWSUG Osaka S3 CloudSearch
Takuro Sasaki
?
PDF
AWS Lambdaで作るクローラー/スクレイピング
Takuro Sasaki
?
PDF
Scraping withawsAWSを利用してスクレイピングの悩みを解決するチップス
Takuro Sasaki
?
PDF
サイト/ブログから本文抽出する方法
Takuro Sasaki
?
PDF
Rubyで作るクローラー Ruby crawler
Takuro Sasaki
?
PDF
JAWS-UG三都物語2014 初心者向け Elasticity ELB/AutoScaling/EIP
Takuro Sasaki
?
PDF
搁耻产测で始める奥别产スクレイピング
Takuro Sasaki
?
PDF
Jawsug osaka10 service&regions
Takuro Sasaki
?
PDF
第9回Jawsug大阪 ServiceProviders 現場で使えるAWS付随サービス!!
Takuro Sasaki
?
闯础奥厂鲍骋初心者支部 础奥厂の勉强の仕方
Takuro Sasaki
?
Crawler for Non engineer
Takuro Sasaki
?
JAWSUG architecture-crowler
Takuro Sasaki
?
Innovation eggcloudnative
Takuro Sasaki
?
尝补尘产诲补认証认可ハ?ターン
Takuro Sasaki
?
厂飞补驳驳别谤で始めるモデルファーストな础笔滨开発
Takuro Sasaki
?
Jawsug chiba API Gateway
Takuro Sasaki
?
DevLove Kansai AWS
Takuro Sasaki
?
Rubyで操るAWS 第67回Ruby関西 勉強会
Takuro Sasaki
?
JAWS-UG初心者支部 AWS書籍活用術
Takuro Sasaki
?
JAWSUG Kansai Simple Workflow Service (SWF)
Takuro Sasaki
?
JAWSUG Osaka S3 CloudSearch
Takuro Sasaki
?
AWS Lambdaで作るクローラー/スクレイピング
Takuro Sasaki
?
Scraping withawsAWSを利用してスクレイピングの悩みを解決するチップス
Takuro Sasaki
?
サイト/ブログから本文抽出する方法
Takuro Sasaki
?
Rubyで作るクローラー Ruby crawler
Takuro Sasaki
?
JAWS-UG三都物語2014 初心者向け Elasticity ELB/AutoScaling/EIP
Takuro Sasaki
?
搁耻产测で始める奥别产スクレイピング
Takuro Sasaki
?
Jawsug osaka10 service&regions
Takuro Sasaki
?
第9回Jawsug大阪 ServiceProviders 現場で使えるAWS付随サービス!!
Takuro Sasaki
?
Ad

Recently uploaded (7)

PPTX
色について.pptx .
iPride Co., Ltd.
?
PPTX
Vibe Codingを始めよう ?Cursorを例に、ノーコードでのプログラミング体験?
iPride Co., Ltd.
?
PDF
PGConf.dev 2025 参加レポート (JPUG総会併設セミナー2025 発表資料)
NTT DATA Technology & Innovation
?
PDF
础滨技术共有会2025-06-05冲顿别别辫搁别蝉别补谤肠丑の理解と実践.辫诲蹿
Takuma Oda
?
PPTX
Protect Your IoT Data with UbiBot's Private Platform.pptx
ユビボット 株式会社
?
PDF
Forguncy 10 製品概要資料 - ノーコードWebアプリ開発プラットフォーム
フォーガンシー
?
PPTX
勉強会_ターミナルコマント?入力迅速化_20250620. pptx. .
iPride Co., Ltd.
?
色について.pptx .
iPride Co., Ltd.
?
Vibe Codingを始めよう ?Cursorを例に、ノーコードでのプログラミング体験?
iPride Co., Ltd.
?
PGConf.dev 2025 参加レポート (JPUG総会併設セミナー2025 発表資料)
NTT DATA Technology & Innovation
?
础滨技术共有会2025-06-05冲顿别别辫搁别蝉别补谤肠丑の理解と実践.辫诲蹿
Takuma Oda
?
Protect Your IoT Data with UbiBot's Private Platform.pptx
ユビボット 株式会社
?
Forguncy 10 製品概要資料 - ノーコードWebアプリ開発プラットフォーム
フォーガンシー
?
勉強会_ターミナルコマント?入力迅速化_20250620. pptx. .
iPride Co., Ltd.
?
Ad

開発環境としてのAwsを真面目に考える jawsug2013三都物語公開用

  • 1. 春の闯础奥厂-鲍骋?叁都物语2013 開発環境としてのAWSを 真面目に考える 2013年3月9日 NRIネットコム株式会社?佐々木拓郎 13年3月9日土曜日
  • 2. はじめに ? 本日のアジェンダ #jaws ug3to ? 自己紹介(5分) ? AWSで開発環境(20分) ? DevOps?×?AWS?+?デモ(20分) 13年3月9日土曜日
  • 3. #jaws ug3to 自己紹介:?佐々木拓郎 ? プロフィール ? NRIネットコム株式会社?インターネット事業部 @katotaku ? Twitter: @katotaku(実名)@dkfj(匿名)/ Facebook: takuro.sasaki ? blog: http://d.hatena.ne.jp/dkfj/ (匿名) ? 好きなAWSサービス:?S3 ★ 備考 ? 認定スクラム?マスター ? 何かありましたら、Facebook?Twitterの方でお気軽にご連絡ください 13年3月9日土曜日
  • 4. #jaws ug3to NRIネットコム ? NRIグループで唯一関西を本社とする会社 ? Webシステムを得意としているシステム会社 ? 設計開発から運用まで全て行う為、 アプリケーション?インフラエンジニアが一杯いる ? Web系の仕事が多いため、ディレクター?デザイナーも一杯!! ? 大阪本社だけど、東京の方が人が多い。でも関西Love 13年3月9日土曜日
  • 5. #jaws ug3to NRIネットコムとAWSと私 ? 2006年?米国の会社に出向中に、Amazon S3と出会うもEC2はスルー ? 2007年?EC2が仮想サーバということを知って使いはじめる ? 2008年?匿名ブログでAWSのことを書き始めると、そこそこ人気に ? 2009年?会社の一部システムで、EC2を利用し始める ? 2010年?iPadを使った「モバイル会議」システムのインフラにAWSを採用 ? 2011年?既存のお客様にも、徐々に勧め始める ? 2012年?AWSソリューションとして本格的に営業開始 ? 2013年?趣味で使っていたものが本職になる。?←?イマココ 13年3月9日土曜日
  • 6. #jaws ug3to NRIネットコムのWebサイト 調査結果も随時掲載中 http://www.nri-net.com/products/cloud/aws.html 13年3月9日土曜日
  • 7. #jaws ug3to 本日のテーマ 開発環境としてのAWSを 真面目に考える 13年3月9日土曜日
  • 8. #jaws ug3to 参加者している皆様への質問 ? アプリケーション/インフラエンジニア? ? 自社で開発用のPC/サーバの管理をしている? ? 突然、開発機が壊れて困ったことがある? ? プロジェクト毎に環境が増殖して管理出来ない? 13年3月9日土曜日
  • 9. #jaws ug3to 先ほどの質問は、 弊社で実際にあった問題でした。 13年3月9日土曜日
  • 10. #jaws ug3to 開発環境の故障 ? ? 代替機なし ? 開発ストップ ? 復旧に多大な工数 障害発生 開発機 ? 迫る納期 13年3月9日土曜日
  • 11. #jaws ug3to 増殖するサーバー プロジェクトA プロジェクトB プロジェクトC プロジェクトX ? プロジェクトごとに多様な開発機 ? 稼働していないプロジェクトの開発機も無くせない ? 増え続ける開発機 13年3月9日土曜日
  • 12. #jaws ug3to 貧弱なサーバー 予算上の都合で、開発環境に潤沢な投資を出来る企業は少ない。 一方で、貧弱な開発環境の為に、貴重なリソースである開発者の時間がムダに なっているケースも。 必要なリソース 現実に割り当てられたリソース http://www.?ickr.com/photos/jiteshjagadish/5178417174/ http://www.?ickr.com/photos/gvtbc/188328021/ 13年3月9日土曜日
  • 13. #jaws ug3to 本日のテーマ 開発環境としてのAWSを 真面目に考える それって、AWSで解決出来ない? 13年3月9日土曜日
  • 14. #jaws ug3to ハードウェアトラブルからの開放 物理サーバを仮想イメージ(AMI)として、テンプレート化 例え使用中のAWSで障害が起きたとしても、別の場所で簡単に起動出来る 物理サーバ 仮想化イメージ(AMI) インスタンス 13年3月9日土曜日
  • 15. #jaws ug3to 必要な時に、必要なだけ 一度仮想化すれば、サーバーは必要な時にだけ起動 使っていない古い環境の維持コストは、ストレージ利用料だけ ソースやデータなど可変部分は、S3やEBSで永続化 13年3月9日土曜日
  • 16. #jaws ug3to 必要に応じて、リソース増強 スケールアップもスケールアウトも、1クリックで実現可能 使った分だけなので、最小限のコストで実現可能 Large Small Small Small Small 13年3月9日土曜日
  • 17. #jaws ug3to AWSの罠 ? AWSは安くて便利 ? 気がつくと至る所で利用されだす ? 積もり積もると、トータルではかなりの金額に 工夫次第で、費用の大幅な削減も可能 13年3月9日土曜日
  • 18. #jaws ug3to 対策?使う時だけ手動で立ち上げる ? 必要なインスタンスを、手動で立ちあげましょう ? 帰宅する前に、インスタンスを停止してね 必ず失敗します ? 他の人が、まだ使うと思って停止しなかった ? そもそも面倒くさい 13年3月9日土曜日
  • 19. #jaws ug3to インスタンスは自動で起動?停止する ? 構成管理サーバから、決まった時間に起動?停止 ? 停止時間が決まっているので、調整の必要なし 平日日中だけの稼働で、コスト1/3 13年3月9日土曜日
  • 20. #jaws ug3to リザーブド?インスタンスの購入 結構ややこしいです。 前払金の計上の仕方等、 経理の方と密に話し合ってください。 13年3月9日土曜日
  • 21. #jaws ug3to セキュリティは? 13年3月9日土曜日
  • 22. #jaws ug3to VPCによるプライベート?ネットワークの構築 VPC機能により、サブネットの一部として利用可能 13年3月9日土曜日
  • 23. #jaws ug3to 管理部門の壁 ? それでも、導入に難色を示す管理部門も多い ? 従量課金の恐怖 ? 前例がないものを導入することへの恐怖 ? そもそもよく解らない 地道に話し合い、説得しましょう 13年3月9日土曜日
  • 24. #jaws ug3to 具体的なチップス 13年3月9日土曜日
  • 25. #jaws ug3to アカウントの管理 新規プロジェクト開始時に3つのAWSアカウントの作成。 開発用?検証用?本番用を分けて、同じ環境を作る。 プロジェクトの段階ごとに、サポートを切り替える。 開発用アカウント 検証用アカウント 本番用アカウント 開発者 開発者 ビジネ サポー サポー スサポ ト ト ー ト 13年3月9日土曜日
  • 26. #jaws ug3to IAMの利用 マスターアカウントは、基本的に使わない。 個人事にIAMアカウントを作成し、細かく権限設定。 システムで使うアカウントは、それぞれで作成。 マスターアカウントを使って良いのは、 ハンズオンだけ!! 13年3月9日土曜日
  • 27. #jaws ug3to 一括決済(Consolidated Billing) によるアカウント紐付け 支払い用アカウント プロジェクトA プロジェクトA プロジェクトA プロジェクトB プロジェクトB プロジェクトB 開発用アカウント 検証用アカウント 本番用アカウント 開発用アカウント 検証用アカウント 本番用アカウント メリット: デメリット: ? 請求が一括で出来る ? リザーブドインスタンスの問題 ? ボリュームディスカウントの恩恵 ? 請求書決済等に切り替え易い 13年3月9日土曜日
  • 28. #jaws ug3to ネットワークの管理 複数プロジェクトで共通のVPC。 or プロジェクトごとのVPC? VPN Gatewayの接続元IPアドレスの問題もあるので、 利用方法に応じて選択 プロジ ェクト A プロジェクトA プロジェクトB プロジ ェクト B プロジェクトC プロジ ェクト C 13年3月9日土曜日
  • 29. #jaws ug3to これで、ひと通り使えます。でも、 AWSで出来ることは、これだけ? 13年3月9日土曜日
  • 30. #jaws ug3to 本日のテーマ 開発環境としてのAWSを 真面目に考える 俺のAWSは、もっと出来るはず 13年3月9日土曜日
  • 31. #jaws ug3to まずは、 米国での事例紹介 13年3月9日土曜日
  • 32. #jaws ug3to Pinterest ? 1,000万人以上の利用者 ? 数百台のサーバー ? たった12名で開発運用 13年3月9日土曜日
  • 33. #jaws ug3to Amazon ? 平均11秒に1回のリリ ース ? 最大で1時間に1,079回 リリース ? 平均で10,000台のサーバ にデプロイ 13年3月9日土曜日
  • 34. #jaws ug3to 業態は違うものの、我々が知っている システムの開発運用と違いすぎる!! 何が違うのか? 13年3月9日土曜日
  • 35. #jaws ug3to 答えの一つは 自動化 13年3月9日土曜日
  • 36. #jaws ug3to 継続的デリバリー いつまで手動でデプロイしているのですか? 13年3月9日土曜日
  • 37. #jaws ug3to アジャイルのレフトウィングとライトウィング ヒント? ※株式会社チャンジビジョン?平鍋さんの許可を得ての使用。 http://blogs.itmedia.co.jp/.shared/image.html?/photos/uncategorized/2012/09/09/whereisyouragile.png 13年3月9日土曜日
  • 38. #jaws ug3to 継続的デリバリーの5つの原則 ? リリースは、繰り返し可能で信頼性が高い仕組み ? 全ての工程で自動化されている ? 全てをバージョン管理システムで管理されている ? 工程内に品質をつくり込む仕組みを内包している ? 継続的に改善する 13年3月9日土曜日
  • 39. #jaws ug3to 全ての工程における、自動化がキーワード この仕組を作りあげるには、 アプリチームだけでは無理! 基盤チームだけでも無理! もちろん品質管理部門でも無理! 両者の協調が必要 13年3月9日土曜日
  • 40. #jaws ug3to DevOpsとは? DevOpsとは、開発部門、運用部門、品質管理部門のあいだの、統 合、コミュニケーション、コラボレーションを行うための一連のメ ソッドとシステムである。これはまた、適切なソフトウェアとサー ビスによってビジネスゴールを実現するためのミーティングにおい て、開発と運用の相互依存として理解されつつある。 13年3月9日土曜日
  • 41. #jaws ug3to DevOps http://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-?ickr もちろん、デザイナー?営業など 関係する全ての人々への愛が大切 13年3月9日土曜日
  • 42. #jaws ug3to DevOpsに大切なこと ? お互いの尊敬と信頼(企業文化) ? ツールとプロセス(ノウハウ) 13年3月9日土曜日
  • 43. #jaws ug3to それぞれの役割 13年3月9日土曜日
  • 44. #jaws ug3to アプリ開発者の責務 ? バージョン管理は当たり前 ?出来ればGit等の分散型で ? ユニットテストは、もはや必須 ?最低でも分岐網羅(C1)まで ? 1ビルドで、どこの環境でも動くアーキテクチャ ?環境(開発、検証、本番)の依存性を外出し 13年3月9日土曜日
  • 45. #jaws ug3to 基盤開発者の責務 ? 構成管理?バージョン管理でサーバ管理 ?構成情報をバージョン管理 ? 運用に関わる全て作業の手作業廃止 ?構築?リリース?メトリックス収集 ? 環境の再現性の確保 ?いつでも、同じ環境を再現出来るようにする 13年3月9日土曜日
  • 46. #jaws ug3to 両者の責務 システムを継続的にカイゼンする 13年3月9日土曜日
  • 47. #jaws ug3to AWSにピッタリじゃないですか? 再現性のある環境 自動化の為のAPI 13年3月9日土曜日
  • 48. #jaws ug3to 構成&フロー例 13年3月9日土曜日
  • 49. #jaws ug3to 13年3月9日土曜日
  • 50. #jaws ug3to デモ 13年3月9日土曜日
  • 51. #jaws ug3to デプロイ SNS通知 SQS登録 Jenkins & App Server Selenium テスト指示 テスト SQSポーリング Windows Server Selenium Client 13年3月9日土曜日
  • 52. #jaws ug3to 本日のテーマ 開発環境としてのAWSを た 真面目に考える ありがとうございました。 後日の質問は、@dkfjまで 13年3月9日土曜日