jaws days 2015 opsworks aceに聞け
TRANSCRIPT
Aceに聞け「OpsWorksでDevOpsを感じよう」
#jawsdays #deep_ace
2015.3.22JAWS-UG さいたま支部 古渡晋也
JAWSDAYS 2015
自己紹介☁ JAWS-UG さいたま支部コアメン
バー☁ アイレット株式会社
cloudpack事業部所属☁ エンジニア☁ AWS認定ソリューションアーキテ
クトアソシエイトレベルAWS認定デベロッパーアソシエイトレベル☁ 好きなAWSのサービス
S3 OpsWorks
本日お話しすること☁ まずはじめに☁ OpsWorksについて☁ DevOpsについて☁ OpsWorksの説明☁ OpsWorksとDevOps☁ まとめ
まずはじめに
40<サービス
EC2 EMR Kinesis WorkSpaces
Direct Connect
IAM
Route 53 SNS
SES
CloudFormation Elastic Transcoder
CloudFront
Redshift
VPC
SimpleDB
ElastiCache
CloudWatch
SWF CloudTrail
SQS
Storage Gateway Data
Pipeline DynamoDB
Elastic Beanstalk
OpsWorks
Glacier
S3 Import/Export RDS
CloudSearch
Mechanical Turk
Management Console
Amazon Web Services
OpsWorksについて
OpsWorksとは☁ 2013年2月よりロンチしたサービスです。
プロビジョニング、設定管理、デプロイメント、監視およびアクセス制御など、複雑なアプリケーション・ライフサイクルのための管理ソリューションです。
http://aws.amazon.com/jp/about-aws/whats-new/2013/02/20/announcing-aws-opsworks-jp/
AWS OpsWorks
OpsWorksの概要☁ OpsWorksで設定管理に関係するAWS項目
になります。
☁ Chefやgitを用いて、ソフトウェアのプロビジョニング、デプロイメントを行います。
Amazon EC2 Amazon VPC Amazon EBS Elastic Load Balancing
Amazon RDS IAM
DevOpsについて
DevOpsとは☁ 開発担当者と運用担当者が連携して協力
するソフトウェア開発手法です。小さな変更を頻繁にリリースすることの多いアジャイルソフトウェア開発においては、開発担当者と運用担当者の連携を密にする必要が有り、こうした開発手法の普及とともにDevOpsの考え方が広まることとなった(Wikipediaより)http://ja.wikipedia.org/wiki/DevOps
DevOpsの現状(国内)☁ http://jaws-ug.jp/jawsdays2013/
speaker.html#OPS-01☁ 国内のOpsWorks事例がおそらく
下記のイベントで聞けると思います。2015年03月26日にAWSにてOpsWorksセミナーが開催されます。http://kokucheese.com/event/index/270160/
DevOpsの現状(海外)☁ 改善の実感– ソフトウェアの開発が向上☁ 今後の課題– 組織体制– ルール– セキュリティ– 開発と運用の切り分けポイント– 予算が読めない– ROI(投資利益率)が不明
(参考)http://japan.zdnet.com/article/35059142/
DevOpsの期待☁ ですが、DevOpsはITの戦略において、
検討すべき要素と思われます。☁ ではこれから、OpsWorksが提供する
DevOpsについてもう少し詳しくお話していきます。
OpsWorksの説明
OpsWorksの用語☁ まずは、OpsWorksの用語から中身を理解し
ていきましょう。– スタック– レイヤー– インスタンス– アプリケーション (App)– デプロイ– モニタリング– ライフサイクルイベント– Auto Healing – Chef– git
スタック☁ スタックとは
OpsWorksのトップエンティティです。OpsWorksの全体の設定を行っていきます。
☁ スタックを作成の準備– リージョン– VPC- サブネット
– EC2- デフォルトの起動させるOSの種類- デフォルトのEBSの種類- デフォルトのSSHの鍵- デフォルトのEC2に紐付けるIAM Role
– 作成するインスタンスをつなげるELBの指定– 拡張- Chefの使用- OpsWorksのセキュリティグループを使用するかどうか
OpsWorksのスタック画面
OpsWorksのネットワーク概念図
①OpsWorksによりEC2インスタンスが起動されるとOpsWorksエージェントがインストールされます。
②OpsWorksサービスエンドポイントと通信をします。
Internet
OpsWorksのネットワーク概念図
AWS cloud
virtual private cloud
Internet gateway Internet instance
instance
instance
OpsWorksのネットワーク概念図
AWS cloud
virtual private cloud
Internet instance NAT
instance
instance
Opsworksのレイヤー☁ レイヤーとは
OpsWorksにはレイヤーが必ず必要になります。☁ レイヤーは2種類あります。– Opsworksレイヤー
Amazon EC2 インスタンスの設計図です。Chefのcookbookの指定、セキュリティグループの指定などを定義します。
– サービスレイヤーRDSのみ
OpsWorksのレイヤー画面
OpsWorksのレイヤー画面
OpsWorksのレイヤー画面
OpsWorksのインスタンス☁ インスタンスとは
起動させるインスタンスの設定になります。EC2インスタンスタイプやサブネット、スケーリングタイプなど指定します。☁ スケーリングタイプ– 24/7……手動で起動。– Time-based……時間ベースで自動起動。– Load-based……負荷ベースで自動起動。
OpsWorksのインスタンス(24/7)
☁ インスタンスを指定したら手動で起動します。
OpsWorksのインスタンス(Time-based)
☁ 24/7のインスタンスと選択項目は変わりません。☁ 毎日か各曜日で起動する時間帯を決めっ
ます。☁ 時間がUTCですので、JSTで考える必要が
あります。GMT +9してください。
OpsWorksのインスタンス(Load-based)
☁ 24/7のインスタンスと選択項目は変わりません。☁ 下記の設定をして、負荷状況に応じて自
動起動します。
OpsWorksのアプリーケーション (App)
☁ 起動したインスタンスにデプロイされるアプリケーションの設定になります。☁ 使用できるリポジトリは
git, subversion, http archive, s3 archive, otherになります。
OpsWorksのアプリーケーション (App)画面
Opsworksのデプロイ☁ アプリケーションで指定した
リポジトリから、インスタンスにデプロイを行います。☁ アンデプロイ、ロールバックも可能。
deployments
Opsworksのデプロイ画面deployments
Opsworksのモニタリング☁ CloudWatchによる詳細モニタリング
monitoring
Opsworksのパイプライン
apps stack monitoring instances deployments layers
stack layer layer
instance instance instance instance app app app app app app app app
OpsworksとDevOps
継続コード管理☁ 開発者、運用者がgitで
インフラコード、アプリケーションコードを管理。Pull Request, Issue, Wikiも使えたらアプリケーション開発の向上するかも。
operator
developer
継続的な運用☁ リポジトリを更新していくことで
ソフトウェアがどんどん改善されていきます。☁ デプロイも
モニタリングも、OpsWorksで。
OpsWorksが苦手なもの☁ ADSJ様のスライドにも適さない例があり
ます。http://www.slideshare.net/AmazonWebServicesJapan/20131016-aws-meisterregenerateopsworks(※スライド8ページ目になります。)☁ ですので、すべてのユーザーに対して有
効であるとは言えません。
DevOpsを考えてみると…☁ DevOpsを実施するために、予算を組むのは
大変ですよね。中途半端に抜けられなくなって終わらないものもあるかもしれません。☁ DevOpsは、一夜ではできません。☁ OpsWorksを使うリソースは、AWS。
つまり、従量課金ですね。☁ 個人的にOpsWorksがすべてユーザーに
適応できるものではないと考えております。もしかしたら、皆様や皆様の周りの方々、環境に応じて合わない可能性もなくありません。
まとめ
まとめ☁ DevOpsを導入するには、大変です。☁ AWSであれば、初期投資もなく
はじめられると思います。☁ OpsWorksに触れてみて
まずDevOpsを体験されてはいかがでしょうか。☁ 失敗しても、そのコストは計算次第。☁ OpsWorksの一部分でも
皆様のDevOpsの発展のキッカケになれたらと願います。
参考☁ WEB+DB PRESS Vol.85
http://gihyo.jp/magazine/wdpress/archive/2015/vol85
☁ https://github.com/aws/opsworks-cookbooks☁ http://www.slideshare.net/
AmazonWebServicesJapan/20131016-aws-meisterregenerateopsworks
☁ Aws OpsWorks [JAWSDAYS 2014 ACEに聞けトラック]http://www.slideshare.net/YukihikoSawanobori/aws-opsworks-overview-32384777