Windows Azureを利用したDevOps入門

  • 1,616 views
Uploaded on

Global Windows Azure Boot Camp 2014 in Japanで発表させて頂いたWindows AzureでのDevOpsツールの紹介資料です。資料中の画面からYouTubeデモ動画にもリンクが貼っています(説明と合わせないとわかりにくいデモで申し訳ないですが)

Global Windows Azure Boot Camp 2014 in Japanで発表させて頂いたWindows AzureでのDevOpsツールの紹介資料です。資料中の画面からYouTubeデモ動画にもリンクが貼っています(説明と合わせないとわかりにくいデモで申し訳ないですが)

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,616
On Slideshare
0
From Embeds
0
Number of Embeds
7

Actions

Shares
Downloads
10
Comments
0
Likes
6

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

Transcript

  • 1. Windows Azureを利用したDevOps入門 Global Windows Azure Boot Camp 2014 in Japan 2014/3/29
  • 2. 自己紹介
  • 3. 菊田洋一 Twitter:@kikutaro_ Blog:Challenge Java EE ! http://kikutaro777.hatenablog.com/ (株)構造計画研究所 仕事:コンフィグレータを利用した販売管理Sys開発 自己紹介 趣味:堀北真希さん(ファンクラブ No.11)
  • 4. 発表経緯
  • 5. _人人人人人人人人_ > 割と無茶ぶり!<  ̄Y^Y^ Y^Y^Y^Y ̄ 発表経緯 今年のはじめ、Windows Azureの無料評価版に登録 Microsoft Windows Azure MVPな方からの依頼は…断れない(>_<; 1カ月ちょっと 経過
  • 6. 発表経緯 Windows Azure 利用経験:無料期間1カ月+α Azure Expertな方々の発表に紛れてごめんなさい・゚・(ノД`)・゚・。 本日参加されてる方々の中でAzureをまだ実際には 触っていない方や、登録後にどんなことをしようか? と思っている方へ少しでも参考になれば幸いです
  • 7. アジェンダ
  • 8. アジェンダ DevOps My case Visual Studio Visual Studio Online Jenkins Chef Knife Azure VM Depot PowerShell Tool Windows Azure
  • 9. DevOpsとは?
  • 10. ・Velocity2009でFlickr社が発表 ・開発(Dev)&運用(Ops) ・ツール&文化 DevOpsとは? 1.Automated infrastructure 2.Shared version control 3.One step build and deploy 4.Feature flags 5.Shared metrics 6.IRC and IM robots http://www.publickey1.jp/blog/11/devops.html http://www.slideshare.net/jallspaw/10-deploys- per-day-dev-and-ops-cooperation-at-flickr 1.Respect 2.Trust 3.Healthy attitude about failure 4.Avoiding Blame 今日は主にツールの話
  • 11. Infrastructure Chef CapistranoPuppet Fabric Ansible 自分達の環境では何をどう組合せるのが良いのか? 実際に色々と触って試してみないとわかりにくい面も DevOpsとは? DevOpsをキーワードとしたツールが現在では様々存在 OrchestrationDevOps Tool Test xUnitSelenium RSpec serverspec Jenkins CI Bamboo Travis CI BuildHive drone.io Build Package Maven NuGet Gem sbt rake Gradle
  • 12. My Case
  • 13. My Case ビルド職人のみ がビルド可能 (環境構築も) xxx.dll yyy.dll zzz.dll ライブラリの依存関係 がカオス 自動テストは一切ない リグレッションは人海戦術 ライブラリアップロード ライブラリ案内メール モジュール公開 手作業 少し前…
  • 14. VM Depotとは? Code Repository Maven Internal Repository ビルド成果物管理 ユニットテスト インテグレーションテスト 試験環境APサーバ デプロイ CIサーバ GlassFish 最近 ビルド/テスト結果通知 モジュールアップ結果通知 デプロイ結果通知 My Case
  • 15. VM Depotとは? ビルド/テスト結果通知 モジュールアップ結果通知 デプロイ結果通知 Code Repository Maven Internal Repository ビルド成果物管理 ユニットテスト インテグレーションテスト 試験環境APサーバ デプロイ CIサーバ GlassFish 最近 ビルドツールで 依存関係管理 通知 モジュール 自動登録 自動デプロイ My Case自動テストで 負担軽減
  • 16. VM Depotとは? ・環境構築が人依存のまま ○mazonといって書籍サービスと間違えちゃう上の方々も Azureなら説得して伝わるんじゃ…! 課題 ・ツールが浸透しない 他プロジェクトでは使われない… 手軽に触れるように 環境構築も自動化 Jenkins知らないし メリットあるの? やってみようとしたけど Excel手順書メンテ されてないじゃんー Windows My Case
  • 17. AzureとDevOps
  • 18. VM Depotとは? ×Windows Azure Visual Studio Visual Studio Online Jenkins Chef Windows Azure Knife Azure VM Depot AzureとDevOps Windows Azure コミット→ビルド→デプロイ CI環境の簡単構築 Azure仮想マシンの簡単環境構築 PowerShell CLI Windows Azure Windows Azure × × × × × ×
  • 19. VM Depotとは? ×Windows Azure Visual Studio Visual Studio Online Jenkins Chef Windows Azure Knife Azure VM Depot Windows Azure コミット→ビルド→デプロイ CI環境の簡単構築 Azure仮想マシンの簡単環境構築 PowerShell CLI Windows Azure Windows Azure × × × × × × AzureとDevOps
  • 20. VM Depotとは? × Windows Azure Visual Studio Visual Studio Online× Visual Studio Online ・クラウドベースのALM(Application Lifecycle Management)サービス ・旧 Team Foundation Service ・Basic / Professional / Advanced ・Basicなら5ユーザまで無料 ・ブラウザでの開発環境「Monaco」
  • 21. VM Depotとは? × Windows Azure Visual Studio Visual Studio Online× Visual Studio Visual Studio Online Windows Azure チェックイン コミット デプロイ ビルド Webサイト コミット→ビルド→デプロイを簡単に実現
  • 22. チームプロジェクト作成~ASP.NET MVC4のテンプレート作成 Visual Studio Visual Studio Online チームプロジェクト 作成 ASP.NET MVC4 のテンプレ作成 チェックイン
  • 23. Windows AzureでWebサイト作成 Windows Azure Visual Studio Visual Studio Online Webサイト 作成
  • 24. ビルドトリガーの設定 Windows Azure Visual Studio Visual Studio Online ビルドトリガー 設定
  • 25. 自動ビルド~自動デプロイ Windows Azure Visual Studio Visual Studio Online 自動ビルドチェックイン 自動デプロイ
  • 26. VM Depotとは? × Windows Azure Visual Studio Visual Studio Online× Visual Studio Visual Studio Online Windows Azure Monacoを利用すると ブラウザで修正
  • 27. ×Windows Azure Visual Studio Visual Studio Online Jenkins Chef Windows Azure Knife Azure VM Depot Windows Azure コミット→ビルド→デプロイ CI環境の簡単構築 Azure仮想マシンの簡単環境構築 PowerShell CLI Windows Azure Windows Azure × × × × × × AzureとDevOps
  • 28. Jenkins Windows Azure VM Depot VM Depotとは? ・Microsoft Open Technologiesによるサービス ・仮想マシンイメージのカタログ ・Windows Azureから簡単に利用可能 http://vmdepot.msopentech.com/List/Index × ×
  • 29. Jenkins Windows Azure VM Depot Jenkins Mantis Redmine Tomcat GitLab Node.js Ruby Stack Apache SoIr WildFly WordPress Drupal OpenERP Django Stack ・アプリを簡単インストールするパッケージを提供してる企業 ・Windows Azure向けのVMイメージを多数提供 × ×
  • 30. Jenkins Windows Azure VM Depot ・OSSの継続的インテグレーション(CI : Continuous Integration)ツール ・豊富なプラグイン(600以上) ・開発者は日本の方(川口耕介さん) JavaのPaaSとしては CloudBeesが熱そう http://jenkins-ci.org/ × ×
  • 31. VM DepotからJenkinsを含むイメージをコピー Jenkins Windows Azure Storage Copy
  • 32. コピーしたイメージから仮想マシン作成 Windows Azure Storage VM作成
  • 33. 仮想マシンのサービスへアクセス 利用可能!
  • 34. でも今日はAzureのイベントですから(`・ω・´)キリッ でもそれ、Windows Azureじゃなくてもいいよね? java –jar Jenkins.war はい、Jenkinsサイトからwar落としてjavaコマンド実行で 簡単に使えます
  • 35. VM Depotとは? ×Windows Azure Visual Studio Visual Studio Online Jenkins Chef Windows Azure Knife Azure VM Depot Windows Azure コミット→ビルド→デプロイ CI環境の簡単構築 Azure仮想マシンの簡単環境構築 PowerShell CLI Windows Azure Windows Azure × × × × × × AzureとDevOps
  • 36. VM Depotとは? Windows Azure PowerShell× Windows Azure PowerShell ・PowerShellコマンドレットでAzureを操作 ・Objectやその配列をパイプ処理できる 例) VMイメージの一覧取得 Get-AzureVMImage VMイメージ名にUbuntuを含む一覧取得 Get-AzureVMImage | where {$_.ImageName -like "*Ubuntu*"} 直近3日に発行されたVMイメージの一覧取得 Get-AzureVMImage | where {((Get-Date) - $_.PublishedDate).Days -le 3}
  • 37. VM Depotとは? Windows Azure × CLI Command Line Inteface ・Windows/Mac/Linuxで利用可能 例) VMイメージの一覧取得 azure vm image list VMイメージ名にUbuntuを含む一覧取得 azure vm image list | grep “Ubuntu” 例) VMイメージの一覧取得 azure vm image list VMイメージ名にUbuntuを含む一覧取得 azure vm image list | findstr “Ubuntu”
  • 38. VM Depotとは? ×Windows Azure Visual Studio Visual Studio Online Jenkins Chef Windows Azure Knife Azure VM Depot Windows Azure コミット→ビルド→デプロイ CI環境の簡単構築 Azure仮想マシンの簡単環境構築 PowerShell CLI Windows Azure Windows Azure × × × × × × AzureとDevOps
  • 39. VM Depotとは? Windows Azure Chef Knife Azure ・Chef社(旧OpsCode社)開発のツール ・マシンの構築や設定を自動化 ・Infrastructure as Code ・日本語の本も今年何冊か出る(らしい)http://www.getchef.com/chef/ Chef Server nodeworkstation × × 伊藤直也さん著 入門Chef Solo - Infrastructure as Code
  • 40. VM Depotとは? Windows Azure Chef Knife Azure knife azure ・knifeのプラグイン ・gem install knife-azureでインストール × ×
  • 41. VM Depotとは? Windows Azure Chef Knife Azure knife azure JavaのCookbook GlassFishのCookbook node PowershellやCLI同様に仮想マシン構築ができる +アプリケーションインストールや環境設定まで自動化可能 例えば knife-azureでUbuntu仮想VMを構築して そのVMにJavaやGlassFishなどをインストール × ×
  • 42. Knife Azureで仮想マシン構築 knife azure
  • 43. nodeにChef-Soloのインストール knife prepare
  • 44. Chef-Solo&CookbookでJavaのインストール Java 8でましたが 今回はJava 7です… JavaのCookbook knife solo cook
  • 45. VM Depotとは? Windows Azure Chef Knife Azure ・今回はコミュニティのCookbookを利用 ・APサーバであるGlassFishなどもインストールできました ・自前で定義を準備すればインストール&設定まで自動化 http://community.opscode.com/cookbooks/glassfishhttp://community.opscode.com/cookbooks/java × ×
  • 46. でも今日はAzureのイベントですから(`・ω・´)キリッ でもそれ、Windows Azureじゃなくてもいいよね? はい、Vagrantなどでローカルに仮想マシン立ててChefを お手軽に試せます
  • 47. VM Depotとは?ブログにも書いてます はじめてのWindows Azure ~Chefのプラグインknife-azureの設定~ http://kikutaro777.hatenablog.com/entry/2014/01/08/235216 はじめてのWindows Azure ~knife-azureでVMの作成・削除~ http://kikutaro777.hatenablog.com/entry/2014/01/09/235022 ChefのCookbookでJavaとGlassFishをインストールしてみました http://kikutaro777.hatenablog.com/entry/2014/01/13/233106 はじめてのWindows Azure ~VM DepotでJenkinsサーバを簡単構築~ http://kikutaro777.hatenablog.com/entry/2014/01/15/122405 Visual Studio OnlineからチェックイントリガーでWindows Azureへ自動デプロイ http://kikutaro777.hatenablog.com/entry/2014/03/05/235323 knife-azureのインストール http://kikutaro777.hatenablog.com/entry/2014/03/11/222646
  • 48. まずはWindows Azureの無料評価版に登録!
  • 49. Windows Azureを利用したDevOps入門 ご清聴ありがとうございましたm(_ _)m Global Windows Azure Boot Camp 2014 in Japan 2014/3/29