SlideShare una empresa de Scribd logo
1 de 40
Descargar para leer sin conexión
リリースとPowerShell 
かめがわかずし(@kkamegawa)
自己紹介 
 
亀川和史(かめがわかずし) / 会社員 
 
Twitter:@kkamegawaFacebook:https://www.facebook.com/kkamegawa/ 
 
Microsoft MVP for Visual Studio ALM(2012/7~) 
 
@ITさんでちょこちょこ書かせていただいています。 現在:アプリの運用監視サービスとは?New Relic vs. Application Insights http://www.atmarkit.co.jp/ait/articles/1410/06/news145.html 
 
はじめてのTeam Foundation Server 現在発売中 http://www.shuwasystem.co.jp/products/7980html/4046.html
PowerShell成分かなり薄めです 
ほかの特濃セッションで 
補充してください
Agenda 
 
リリース振り返り 
 
リリース方式について 
 
PowerShell DSCとRelease Management Serverを使った活用
やることとやらないこと 
 
やること 
 
PowerShell DSCとRelease Managementを使ったリリースの承認フロー 
 
やらないこと 
 
PowerShell DSCの詳細 
 
PowerShellの基礎文法 
 
TFSとはといった情報
リリースを 
自動化している?
手作業リリース 
リリース職人の 手による伝統 
完璧な手順書 
チェックシート 
リリース日 フォルダに整理 
一部スクリプト 
エビデンスを Excel貼り付け
手作業のどこが悪い? 
職人じゃないと できない 
手順書の日本語レ ビューになりがち 
チェックしづらい 作業がある 
新規環境作る時 多くのパッチ適用 
スクリプト実行 手順失敗の可能性 
作業完了までに時 間かかる
よろしい、ならば自動化だ 
OS設定 
パッチ 
再起動 
追加設定 
発行 (インストール) 
(アプリ固有の) 設定変更
リリースの難しさ 
リリースの 責任者は? 
え、知らな かった! 
ステージン グと本番 
リリースす る根拠は? 
自動化の テスト 
リリース 検証
リリース方式いろいろ 
 
Staging(検証)環境なし。すべてが本番 
 
Facebook(ただし、特定の人のみに機能をONするといった仕組みはある) https://www.facebook.com/publications/514128035341603/ http://wazanova.jp/items/724(日本語概要) 
 
自己責任でデプロイ 
 
CookpadなどのGitを使っている企業に多い(?) https://speakerdeck.com/mirakui/cookpads-deployment-and-auto-scalinghttp://www.publickey1.jp/blog/14/110jaws_day_2014_1.html 
 
リリース承認制 
 
顧客の依頼を受けて開発する場合多い
リリースの自己責任方式 
リリース用 
本番 
開発者 
開発者 
開発者 
開発者 
ユーザ 
コミット 
コミット 
コミット 
コミット
リリースの組織方式 
リリース用 
開発者 
リーダー 
品質管理 
本番 
ユーザ 
コミット 
確認 
承認 
承認 
デプロイ
どっちが好き?
自己責任方式 
承認方式
リリースワークフロー 
 
好き嫌いは別にして、承認フローを通してリリースしたい要件もある。 
 
客先作業 
 
自分が信用できない 
 
テストも承認フローの一部として組み込まれている 
 
Visual Studioから担当者の裁量で発行は楽だけど、台数多くなると… 
 
承認ワークフローでも自動化の恩恵は必要 
 
QAの人が自動化を組めるとは限らない 
 
むしろできない前提
Release Management Server 
 
リリース作業に承認フローを提供するソフトウェア 
 
もともとInCycleSoftwareという会社のTFS拡張機能 (TFSがあるとビルド時にリリーストリガを設定可能) 
 
Visual Studio 2013リリースのタイミングでMicrosoftに部門買収されて、 Visual Studio 2013の一部分となる 
 
Visual Studio 2013 Update 3でPowerShell DSCをサポート 
 
複数台のデプロイもサポート PowerShell DSCを使えばエージェントなくてもいい
PowerShellでリリーススクリプト作れば? 
 
「設定の手順」を自分で考えてPowerShellで作る必要がある 
 
スクリプト自身のテストも大変 
 
まっさらの環境用意して 
 
OSパッチ当てて 
 
各種ソフト入れて 
 
順番に設定変更… 
 
デバッグ… 
Install-WindowsFeature(略) 
$exe = new-object system.diagnostics.Process 
$exe.StartInfo.FileName= “¥¥server¥share¥build¥22222¥drop¥hoge.msi"; 
$exe.StartInfo.Arguments=“/Silent” 
$exe.Start() 
$exe.WaitForExit()
PowerShell DSCで何とか救おう 
 
DSC = Desired State Configuration 
 
「あるべき設定」を定義して、あっていないところを自動的に更新する →(ある)べき→冪等制 
 
@guitarrapc_techさんの連載と資料を見るといいよ! http://www.atmarkit.co.jp/ait/articles/1405/22/news131.html 
 
PowerShell DSCのサーバとしてWindows Server 2012 R2が必要 
 
クライアントにはWindows Management Framework(PowerShell込) 4.0がある といい(エージェントとどっちを入れるのがいい?) http://www.microsoft.com/ja-jp/download/details.aspx?id=40855→もちろんPowerShell !
Release Management Serverの構成 
デプロイ先 
TFS Webサーバ 
Release Management 
Webサーバ 
SQL Server 
(Express可) 
Domain 
Controller 
クライアント 
PowerShell DSC 
サーバ 
Release Management Agentインス トール
Release Managementのリリース構成 
 
標準とvNextの構成の二種類 
 
サーバ、リリースパス、環境それぞれ別に設定 
 
別な理由は使用するインフラの差 
 
標準:WinRM→Release Management Serverがコントロール 
 
vNext:ChefやPowerShell DSC→外部のインフラに依存(承認ワークフローのみ提供)
PowerShell DSC とRelease Management 
 
PowerShell DSC サーバが必要になる代わりに、Release Management Agentが不要になる 
 
ただし、Windows Management Framework 4.0が必要なので、 Windows Server 2012 R2/Windows 8.1より前のOSでは注意 
 
PowerShellDSCサーバはほかと兼用でもOK 
 
TFS WebサーバとPowerShell DSCとRelease Management Server共存させる 
 
SQL Serverも同一環境で実行可能 
 
今回の構成では全部入り 
 
ちなみにChefも使えます
オンプレミスとクラウド 
 
Azure対応済み。Azureへのデプロイ時に必要な情報 
 
サブスクリプションID 
 
ストレージアカウント 
 
管理証明書(拡張子publishsettingsに含まれている長いあれ) 
 
オンプレミス 
 
Active Directoryがほぼ必須 (アカウントやTFS連携で必要) 
 
デプロイも認証がからむと難しい
ステージの設定 
任意のステージを 
追加可能
提供コマンド
リリース対象サーバ 
エージェント有無
ビルドパスの定義 
TFSのビルド定義を 指定
Azureへのリリース承認も同じUI
ビルドをトリガーにしてリリース 
 
Release Management Serverの以下の場所にあるビルドテンプレートを VisualStudioから追加 %ProgramFiles(x86)%¥Visual Studio 12.0¥Release Management¥bin 
 
接続するTFSのバージョンによって指定するビルドテンプレートが変わる ので注意 
 
TFS 2013 
 
Git:ReleaseGitTemplate.12.xaml 
 
TFVC:TfvcTemplate.12.xaml 
 
TFS 2012:ReleaseDefaultTemplate.11.1.xaml 
 
TFS 2010:ReleasedefaultTemplate.xaml
ビルドトリガを設定するときの注意点 
 
「ビルドからリリースをトリガーできます か?」にチェックがあるかどうか 
 
ビルド定義が正しいか確認 
 
ステージで受け入れと配置手順が「自動」に設 定されていないとリリースは開始されないので 注意 
 
TFSビルドサーバにRMクライアントがない 
 
配置完了までにデフォルトの10分が経過した ※リリーステンプレートの名前変更できないの で注意
ビルドをトリガーにしてリリース(VS) 
ビルド定義に 
リリースターゲットを 指定 
Tokenは特定の機能を持 つデプロイ用に振り分 けるために使う
標準のリリーステンプレート 
従来のVBScript などで手続き書 くのと変わらな い
vNextのリリーステンプレート 
Chefと標準 (DSCのこと) の選択のみ
リリース承認 
承認フロー
最終的なリリース承認
PowerShell DSCを使う前に 
 
実行前にはWinRMを有効にして、信頼するホストを設定 Set-Item wsman:¥localhost¥Client¥TrustedHosts-Value * -Force (全ホストを信頼) 
 
PowerShell Resource Kit(現在Wave7)にいろんなモジュールが登録されている。 
 
TechnetGalleryから入手 https://gallery.technet.microsoft.com/DSC-Resource-Kit-All-c449312d 
 
以下のフォルダに展開 64bit版:%ProgramFiles%¥WindowsPowerShell¥Modules※:Hyper-Vもあるけど、おそらくWindows Server 2008 R2では使えない(名前空 間非互換のため) 
 
Import-DscResourceコマンドレットで使用する 例:import-DscResource–Module xWebAdministration
本日の環境(オンプレミス) 
デプロイ先 
Release Management 
TFS + SQL Server 
Windows 8.1 
Domain 
Controller 
ThinkPad T440p 
(8core 16GB 480GB SSD)
本日の環境(Azure on IaaS) 
デプロイ先 
Azure Basic A2 
Release Management + 
TFS + SQL Server 
Azure Basic A3 
(4core 7GB RAM 10GB Data HDD) 
• 
Azure ADなしのぬるい環境 
• 
SQL Serverイメージ使うと高 いので、SQL ServerはMSDN のライセンスで持ち込み。検 証ならExpressでもOK 
• 
ISOイメージの持ち込みでは まった(Add-AzureVHDコマン ドレットで容量固定VHDを アップロード) 
• 
レポートなど動いてない機能 がある
まとめ 
 
リリースにワークフローが必要な場合は便利 
 
環境作成結構大変なので、燃え尽きないように 
 
PowerShell DSCやChef使えばリリースフローから依存性を切り離せてよい 
 
PowerShell DSCはアドホックなインストールスクリプトのデバッグから解 放してくれる(かも) 
 
とりあえず@guitarrapc_techさんをフォローしておこう
参考資料 
 
How to trigger deployments to Chef managed environments from Release Management 2013 with Update 3 RChttp://blogs.msdn.com/b/visualstudioalm/archive/2014/07/08/how-to-trigger-deployments-to-chef- managed-environment-from-release-management.aspx 
 
How to deploy to Standard or Azure environments in Release Management 2013 with Update 3 RChttp://blogs.msdn.com/b/visualstudioalm/archive/2014/07/07/how-to-deploy-to-standard-or-azure- environments-in-release-management-2013-with-update-3-rc.aspx 
 
Release Management Update 3 CTP1 is now available with DSC Deployment Feature! http://blogs.msdn.com/b/visualstudioalm/archive/2014/05/22/release-management-for-microsoft-visual- studio-2013-with-update-3-ctp1-is-live.aspx 
 
How to modify the TFS 2013 default build process template (GitTemplate.12.xaml & TfvcTemplate.12.xaml) to enable releasing from a buildhttp://blogs.msdn.com/b/visualstudioalm/archive/2013/12/09/how-to-modify-the-build-process- template-to-use-the-option-trigger-release-from-build.aspx 
 
リリース管理を使用したリリースの管理 http://msdn.microsoft.com/ja-jp/library/dn217874.aspx 
 
PowerShell DSCで始めるWindowsインフラストラクチャ自動化の基本 http://www.atmarkit.co.jp/fwin2k/operation/indexpage/index.html#powershelldsc

Más contenido relacionado

La actualidad más candente

それでも僕はユニットテストを書きたい - Pester powered by PowerShell
それでも僕はユニットテストを書きたい - Pester powered by PowerShellそれでも僕はユニットテストを書きたい - Pester powered by PowerShell
それでも僕はユニットテストを書きたい - Pester powered by PowerShellHidari Ikw
 
System4 comment
System4 commentSystem4 comment
System4 commentJun Chiba
 
20150530 めとべや東京 Reactive Property + Livetで作るWPFアプリ
20150530 めとべや東京 Reactive Property + Livetで作るWPFアプリ20150530 めとべや東京 Reactive Property + Livetで作るWPFアプリ
20150530 めとべや東京 Reactive Property + Livetで作るWPFアプリTakayoshi Tanaka
 
Windows PowerShell 2.0 の基礎知識
Windows PowerShell 2.0 の基礎知識Windows PowerShell 2.0 の基礎知識
Windows PowerShell 2.0 の基礎知識shigeya
 
はじめてのTeam foundation server執筆裏話
はじめてのTeam foundation server執筆裏話はじめてのTeam foundation server執筆裏話
はじめてのTeam foundation server執筆裏話Kazushi Kamegawa
 
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみたAlfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみたTasuku Otani
 
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみようAlfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみようTasuku Otani
 
テスト環境まるごとAwsにのっけてみた
テスト環境まるごとAwsにのっけてみたテスト環境まるごとAwsにのっけてみた
テスト環境まるごとAwsにのっけてみたKazuaki Fujikura
 
Windows PowerShell によるWindows Server 管理の自動化 v4.0 2014.03.13 更新版
Windows PowerShell によるWindows Server 管理の自動化 v4.0 2014.03.13 更新版Windows PowerShell によるWindows Server 管理の自動化 v4.0 2014.03.13 更新版
Windows PowerShell によるWindows Server 管理の自動化 v4.0 2014.03.13 更新版junichi anno
 
Alfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしよう
Alfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしようAlfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしよう
Alfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしようTomomi Kawabe
 
元気玉的 分散テスト 実行システム TestStreamer
元気玉的 分散テスト 実行システム TestStreamer元気玉的 分散テスト 実行システム TestStreamer
元気玉的 分散テスト 実行システム TestStreamerYoshitaka Kawashima
 
JavaFX 2.0 - リッチクライアントのためのUI基盤
JavaFX 2.0 - リッチクライアントのためのUI基盤JavaFX 2.0 - リッチクライアントのためのUI基盤
JavaFX 2.0 - リッチクライアントのためのUI基盤Yuichi Sakuraba
 

La actualidad más candente (16)

それでも僕はユニットテストを書きたい - Pester powered by PowerShell
それでも僕はユニットテストを書きたい - Pester powered by PowerShellそれでも僕はユニットテストを書きたい - Pester powered by PowerShell
それでも僕はユニットテストを書きたい - Pester powered by PowerShell
 
System4 comment
System4 commentSystem4 comment
System4 comment
 
20150530 めとべや東京 Reactive Property + Livetで作るWPFアプリ
20150530 めとべや東京 Reactive Property + Livetで作るWPFアプリ20150530 めとべや東京 Reactive Property + Livetで作るWPFアプリ
20150530 めとべや東京 Reactive Property + Livetで作るWPFアプリ
 
Windows PowerShell 2.0 の基礎知識
Windows PowerShell 2.0 の基礎知識Windows PowerShell 2.0 の基礎知識
Windows PowerShell 2.0 の基礎知識
 
はじめてのTeam foundation server執筆裏話
はじめてのTeam foundation server執筆裏話はじめてのTeam foundation server執筆裏話
はじめてのTeam foundation server執筆裏話
 
Clrh 20121215
Clrh 20121215Clrh 20121215
Clrh 20121215
 
TFSを支える技術
TFSを支える技術TFSを支える技術
TFSを支える技術
 
Visual studio de debug
Visual studio de debugVisual studio de debug
Visual studio de debug
 
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみたAlfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
 
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみようAlfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
 
テスト環境まるごとAwsにのっけてみた
テスト環境まるごとAwsにのっけてみたテスト環境まるごとAwsにのっけてみた
テスト環境まるごとAwsにのっけてみた
 
Windows PowerShell によるWindows Server 管理の自動化 v4.0 2014.03.13 更新版
Windows PowerShell によるWindows Server 管理の自動化 v4.0 2014.03.13 更新版Windows PowerShell によるWindows Server 管理の自動化 v4.0 2014.03.13 更新版
Windows PowerShell によるWindows Server 管理の自動化 v4.0 2014.03.13 更新版
 
Alfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしよう
Alfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしようAlfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしよう
Alfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしよう
 
Vue入門
Vue入門Vue入門
Vue入門
 
元気玉的 分散テスト 実行システム TestStreamer
元気玉的 分散テスト 実行システム TestStreamer元気玉的 分散テスト 実行システム TestStreamer
元気玉的 分散テスト 実行システム TestStreamer
 
JavaFX 2.0 - リッチクライアントのためのUI基盤
JavaFX 2.0 - リッチクライアントのためのUI基盤JavaFX 2.0 - リッチクライアントのためのUI基盤
JavaFX 2.0 - リッチクライアントのためのUI基盤
 

Similar a PowerShell and Release Management Server

Recap: PowerShell Core
Recap: PowerShell CoreRecap: PowerShell Core
Recap: PowerShell CoreKazuki Takai
 
20170422 azure portal cli 使いこなし
20170422 azure portal cli 使いこなし20170422 azure portal cli 使いこなし
20170422 azure portal cli 使いこなしTakayoshi Tanaka
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejsTakayoshi Tanaka
 
Windows PowerShell 2.0 の基礎知識
Windows PowerShell 2.0 の基礎知識Windows PowerShell 2.0 の基礎知識
Windows PowerShell 2.0 の基礎知識shigeya
 
HDPをWindowsで動かしてみた
HDPをWindowsで動かしてみたHDPをWindowsで動かしてみた
HDPをWindowsで動かしてみたadachij2002
 
Azure サポート エンジニア直伝 ~ PowerShell 実践活用術 ~
Azure サポート エンジニア直伝 ~ PowerShell 実践活用術 ~Azure サポート エンジニア直伝 ~ PowerShell 実践活用術 ~
Azure サポート エンジニア直伝 ~ PowerShell 実践活用術 ~ShuheiUda
 
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)Daisuke Ikeda
 
Azure Arc Automanage Machine Configuration による構成の管理と適用
Azure Arc Automanage Machine Configuration による構成の管理と適用Azure Arc Automanage Machine Configuration による構成の管理と適用
Azure Arc Automanage Machine Configuration による構成の管理と適用Kazuki Takai
 
PowerShellを使用したWindows Serverの管理
PowerShellを使用したWindows Serverの管理PowerShellを使用したWindows Serverの管理
PowerShellを使用したWindows Serverの管理junichi anno
 
App controllerとwindows azure packで作る大規模プライベートクラウド
App controllerとwindows azure packで作る大規模プライベートクラウドApp controllerとwindows azure packで作る大規模プライベートクラウド
App controllerとwindows azure packで作る大規模プライベートクラウドTakashi Kanai
 
PowerShell 5.0 で広がる運用管理の世界
PowerShell 5.0 で広がる運用管理の世界PowerShell 5.0 で広がる運用管理の世界
PowerShell 5.0 で広がる運用管理の世界Kazuki Takai
 
SC2012 VMM SP1 Update ヒーロー島 版
SC2012 VMM SP1 Update ヒーロー島 版SC2012 VMM SP1 Update ヒーロー島 版
SC2012 VMM SP1 Update ヒーロー島 版Kishima Masakazu
 
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスドMicrosoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスドKazumi Hirose
 
Tokyo SFDG Meetup#16 / Release Note, Einstein Platform Service
Tokyo SFDG Meetup#16 / Release Note, Einstein Platform ServiceTokyo SFDG Meetup#16 / Release Note, Einstein Platform Service
Tokyo SFDG Meetup#16 / Release Note, Einstein Platform ServiceTakahiro Yonei
 
Microsoft Hyper-V Server 2012 とCitrix XenDesktop 7で始めるデスクトップ仮想化入門
Microsoft Hyper-V Server 2012 とCitrix XenDesktop 7で始めるデスクトップ仮想化入門Microsoft Hyper-V Server 2012 とCitrix XenDesktop 7で始めるデスクトップ仮想化入門
Microsoft Hyper-V Server 2012 とCitrix XenDesktop 7で始めるデスクトップ仮想化入門Citrix Systems Japan
 
社内システムの移行に役立った“時間節約”方法~PowerShellとExcelを上手に使おう
社内システムの移行に役立った“時間節約”方法~PowerShellとExcelを上手に使おう社内システムの移行に役立った“時間節約”方法~PowerShellとExcelを上手に使おう
社内システムの移行に役立った“時間節約”方法~PowerShellとExcelを上手に使おうSatoru Nasu
 
Windows Server 2016 Essentials TP4の強化ポイントと PowerShellの使いどころ
Windows Server 2016 Essentials TP4の強化ポイントとPowerShellの使いどころWindows Server 2016 Essentials TP4の強化ポイントとPowerShellの使いどころ
Windows Server 2016 Essentials TP4の強化ポイントと PowerShellの使いどころSatoru Nasu
 
SCCM を用いた OS 展開
SCCM を用いた OS 展開SCCM を用いた OS 展開
SCCM を用いた OS 展開Yutaro Tamai
 

Similar a PowerShell and Release Management Server (20)

Recap: PowerShell Core
Recap: PowerShell CoreRecap: PowerShell Core
Recap: PowerShell Core
 
20170422 azure portal cli 使いこなし
20170422 azure portal cli 使いこなし20170422 azure portal cli 使いこなし
20170422 azure portal cli 使いこなし
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs
 
Windows PowerShell 2.0 の基礎知識
Windows PowerShell 2.0 の基礎知識Windows PowerShell 2.0 の基礎知識
Windows PowerShell 2.0 の基礎知識
 
HDPをWindowsで動かしてみた
HDPをWindowsで動かしてみたHDPをWindowsで動かしてみた
HDPをWindowsで動かしてみた
 
Azure サポート エンジニア直伝 ~ PowerShell 実践活用術 ~
Azure サポート エンジニア直伝 ~ PowerShell 実践活用術 ~Azure サポート エンジニア直伝 ~ PowerShell 実践活用術 ~
Azure サポート エンジニア直伝 ~ PowerShell 実践活用術 ~
 
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
 
DSC 再入門
DSC 再入門DSC 再入門
DSC 再入門
 
Azure Arc Automanage Machine Configuration による構成の管理と適用
Azure Arc Automanage Machine Configuration による構成の管理と適用Azure Arc Automanage Machine Configuration による構成の管理と適用
Azure Arc Automanage Machine Configuration による構成の管理と適用
 
PowerShellを使用したWindows Serverの管理
PowerShellを使用したWindows Serverの管理PowerShellを使用したWindows Serverの管理
PowerShellを使用したWindows Serverの管理
 
App controllerとwindows azure packで作る大規模プライベートクラウド
App controllerとwindows azure packで作る大規模プライベートクラウドApp controllerとwindows azure packで作る大規模プライベートクラウド
App controllerとwindows azure packで作る大規模プライベートクラウド
 
Using Windows Azure
Using Windows AzureUsing Windows Azure
Using Windows Azure
 
PowerShell 5.0 で広がる運用管理の世界
PowerShell 5.0 で広がる運用管理の世界PowerShell 5.0 で広がる運用管理の世界
PowerShell 5.0 で広がる運用管理の世界
 
SC2012 VMM SP1 Update ヒーロー島 版
SC2012 VMM SP1 Update ヒーロー島 版SC2012 VMM SP1 Update ヒーロー島 版
SC2012 VMM SP1 Update ヒーロー島 版
 
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスドMicrosoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
 
Tokyo SFDG Meetup#16 / Release Note, Einstein Platform Service
Tokyo SFDG Meetup#16 / Release Note, Einstein Platform ServiceTokyo SFDG Meetup#16 / Release Note, Einstein Platform Service
Tokyo SFDG Meetup#16 / Release Note, Einstein Platform Service
 
Microsoft Hyper-V Server 2012 とCitrix XenDesktop 7で始めるデスクトップ仮想化入門
Microsoft Hyper-V Server 2012 とCitrix XenDesktop 7で始めるデスクトップ仮想化入門Microsoft Hyper-V Server 2012 とCitrix XenDesktop 7で始めるデスクトップ仮想化入門
Microsoft Hyper-V Server 2012 とCitrix XenDesktop 7で始めるデスクトップ仮想化入門
 
社内システムの移行に役立った“時間節約”方法~PowerShellとExcelを上手に使おう
社内システムの移行に役立った“時間節約”方法~PowerShellとExcelを上手に使おう社内システムの移行に役立った“時間節約”方法~PowerShellとExcelを上手に使おう
社内システムの移行に役立った“時間節約”方法~PowerShellとExcelを上手に使おう
 
Windows Server 2016 Essentials TP4の強化ポイントと PowerShellの使いどころ
Windows Server 2016 Essentials TP4の強化ポイントとPowerShellの使いどころWindows Server 2016 Essentials TP4の強化ポイントとPowerShellの使いどころ
Windows Server 2016 Essentials TP4の強化ポイントと PowerShellの使いどころ
 
SCCM を用いた OS 展開
SCCM を用いた OS 展開SCCM を用いた OS 展開
SCCM を用いた OS 展開
 

Más de Kazushi Kamegawa

「何もしないのにCIが失敗した」を防ぐ
「何もしないのにCIが失敗した」を防ぐ「何もしないのにCIが失敗した」を防ぐ
「何もしないのにCIが失敗した」を防ぐKazushi Kamegawa
 
Ignite 2021秋 recap - 開発者向け新機能紹介
Ignite 2021秋 recap - 開発者向け新機能紹介Ignite 2021秋 recap - 開発者向け新機能紹介
Ignite 2021秋 recap - 開発者向け新機能紹介Kazushi Kamegawa
 
Azure boards for beginners
Azure boards for beginnersAzure boards for beginners
Azure boards for beginnersKazushi Kamegawa
 
Deploy Strategy with Azure Pipelines
Deploy Strategy with Azure PipelinesDeploy Strategy with Azure Pipelines
Deploy Strategy with Azure PipelinesKazushi Kamegawa
 
DevOps and compliance and security
DevOps and compliance and securityDevOps and compliance and security
DevOps and compliance and securityKazushi Kamegawa
 
DevOps and Compliance and Security
DevOps and Compliance and SecurityDevOps and Compliance and Security
DevOps and Compliance and SecurityKazushi Kamegawa
 
Ignite 2021 振り返り(DevOps)
Ignite 2021 振り返り(DevOps)Ignite 2021 振り返り(DevOps)
Ignite 2021 振り返り(DevOps)Kazushi Kamegawa
 
How to create your own Azure Pipeline's image
How to create your own Azure Pipeline's imageHow to create your own Azure Pipeline's image
How to create your own Azure Pipeline's imageKazushi Kamegawa
 
Azure DevOps入門~TechLab編
Azure DevOps入門~TechLab編Azure DevOps入門~TechLab編
Azure DevOps入門~TechLab編Kazushi Kamegawa
 
Introduce TFSUG and Azure DevOps Server 2020
Introduce TFSUG and Azure DevOps Server 2020Introduce TFSUG and Azure DevOps Server 2020
Introduce TFSUG and Azure DevOps Server 2020Kazushi Kamegawa
 
Azure DevOps Online Vol.3 - Inside Azure Pipelines
Azure DevOps Online Vol.3 - Inside Azure PipelinesAzure DevOps Online Vol.3 - Inside Azure Pipelines
Azure DevOps Online Vol.3 - Inside Azure PipelinesKazushi Kamegawa
 
Getting Start for Azure Pipelines
Getting Start for Azure PipelinesGetting Start for Azure Pipelines
Getting Start for Azure PipelinesKazushi Kamegawa
 
Azure Boards and Azure Test Plans inside out.
Azure Boards and Azure Test Plans inside out.Azure Boards and Azure Test Plans inside out.
Azure Boards and Azure Test Plans inside out.Kazushi Kamegawa
 
Azure DevOps Management in Organization
Azure DevOps Management in OrganizationAzure DevOps Management in Organization
Azure DevOps Management in OrganizationKazushi Kamegawa
 
What's new Azure DevOps in //Build 2019
What's new Azure DevOps in //Build 2019What's new Azure DevOps in //Build 2019
What's new Azure DevOps in //Build 2019Kazushi Kamegawa
 
Deploy to Azure by ??? Azure Repos or GitHub
Deploy to Azure by ??? Azure Repos or GitHubDeploy to Azure by ??? Azure Repos or GitHub
Deploy to Azure by ??? Azure Repos or GitHubKazushi Kamegawa
 
Azure DevOpsとセキュリティ
Azure DevOpsとセキュリティAzure DevOpsとセキュリティ
Azure DevOpsとセキュリティKazushi Kamegawa
 

Más de Kazushi Kamegawa (20)

「何もしないのにCIが失敗した」を防ぐ
「何もしないのにCIが失敗した」を防ぐ「何もしないのにCIが失敗した」を防ぐ
「何もしないのにCIが失敗した」を防ぐ
 
Ignite 2021秋 recap - 開発者向け新機能紹介
Ignite 2021秋 recap - 開発者向け新機能紹介Ignite 2021秋 recap - 開発者向け新機能紹介
Ignite 2021秋 recap - 開発者向け新機能紹介
 
Azure boards for beginners
Azure boards for beginnersAzure boards for beginners
Azure boards for beginners
 
Deploy Strategy with Azure Pipelines
Deploy Strategy with Azure PipelinesDeploy Strategy with Azure Pipelines
Deploy Strategy with Azure Pipelines
 
DevOps and compliance and security
DevOps and compliance and securityDevOps and compliance and security
DevOps and compliance and security
 
DevOps and Compliance and Security
DevOps and Compliance and SecurityDevOps and Compliance and Security
DevOps and Compliance and Security
 
Ignite 2021 振り返り(DevOps)
Ignite 2021 振り返り(DevOps)Ignite 2021 振り返り(DevOps)
Ignite 2021 振り返り(DevOps)
 
How to create your own Azure Pipeline's image
How to create your own Azure Pipeline's imageHow to create your own Azure Pipeline's image
How to create your own Azure Pipeline's image
 
NET5 and Diagnostics
NET5 and DiagnosticsNET5 and Diagnostics
NET5 and Diagnostics
 
Azure DevOps入門~TechLab編
Azure DevOps入門~TechLab編Azure DevOps入門~TechLab編
Azure DevOps入門~TechLab編
 
Introduce TFSUG and Azure DevOps Server 2020
Introduce TFSUG and Azure DevOps Server 2020Introduce TFSUG and Azure DevOps Server 2020
Introduce TFSUG and Azure DevOps Server 2020
 
Azure DevOps Online Vol.3 - Inside Azure Pipelines
Azure DevOps Online Vol.3 - Inside Azure PipelinesAzure DevOps Online Vol.3 - Inside Azure Pipelines
Azure DevOps Online Vol.3 - Inside Azure Pipelines
 
Getting Start for Azure Pipelines
Getting Start for Azure PipelinesGetting Start for Azure Pipelines
Getting Start for Azure Pipelines
 
Azure Boards and Azure Test Plans inside out.
Azure Boards and Azure Test Plans inside out.Azure Boards and Azure Test Plans inside out.
Azure Boards and Azure Test Plans inside out.
 
Azure DevOps's security
Azure DevOps's securityAzure DevOps's security
Azure DevOps's security
 
Azure DevOps Management in Organization
Azure DevOps Management in OrganizationAzure DevOps Management in Organization
Azure DevOps Management in Organization
 
What's new Azure DevOps in //Build 2019
What's new Azure DevOps in //Build 2019What's new Azure DevOps in //Build 2019
What's new Azure DevOps in //Build 2019
 
Deploy to Azure by ??? Azure Repos or GitHub
Deploy to Azure by ??? Azure Repos or GitHubDeploy to Azure by ??? Azure Repos or GitHub
Deploy to Azure by ??? Azure Repos or GitHub
 
Azure DevOpsとセキュリティ
Azure DevOpsとセキュリティAzure DevOpsとセキュリティ
Azure DevOpsとセキュリティ
 
What's Azure DevOps
What's Azure DevOpsWhat's Azure DevOps
What's Azure DevOps
 

Último

論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 

Último (11)

論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 

PowerShell and Release Management Server

  • 2. 自己紹介  亀川和史(かめがわかずし) / 会社員  Twitter:@kkamegawaFacebook:https://www.facebook.com/kkamegawa/  Microsoft MVP for Visual Studio ALM(2012/7~)  @ITさんでちょこちょこ書かせていただいています。 現在:アプリの運用監視サービスとは?New Relic vs. Application Insights http://www.atmarkit.co.jp/ait/articles/1410/06/news145.html  はじめてのTeam Foundation Server 現在発売中 http://www.shuwasystem.co.jp/products/7980html/4046.html
  • 4. Agenda  リリース振り返り  リリース方式について  PowerShell DSCとRelease Management Serverを使った活用
  • 5. やることとやらないこと  やること  PowerShell DSCとRelease Managementを使ったリリースの承認フロー  やらないこと  PowerShell DSCの詳細  PowerShellの基礎文法  TFSとはといった情報
  • 7. 手作業リリース リリース職人の 手による伝統 完璧な手順書 チェックシート リリース日 フォルダに整理 一部スクリプト エビデンスを Excel貼り付け
  • 8. 手作業のどこが悪い? 職人じゃないと できない 手順書の日本語レ ビューになりがち チェックしづらい 作業がある 新規環境作る時 多くのパッチ適用 スクリプト実行 手順失敗の可能性 作業完了までに時 間かかる
  • 9. よろしい、ならば自動化だ OS設定 パッチ 再起動 追加設定 発行 (インストール) (アプリ固有の) 設定変更
  • 10. リリースの難しさ リリースの 責任者は? え、知らな かった! ステージン グと本番 リリースす る根拠は? 自動化の テスト リリース 検証
  • 11. リリース方式いろいろ  Staging(検証)環境なし。すべてが本番  Facebook(ただし、特定の人のみに機能をONするといった仕組みはある) https://www.facebook.com/publications/514128035341603/ http://wazanova.jp/items/724(日本語概要)  自己責任でデプロイ  CookpadなどのGitを使っている企業に多い(?) https://speakerdeck.com/mirakui/cookpads-deployment-and-auto-scalinghttp://www.publickey1.jp/blog/14/110jaws_day_2014_1.html  リリース承認制  顧客の依頼を受けて開発する場合多い
  • 12. リリースの自己責任方式 リリース用 本番 開発者 開発者 開発者 開発者 ユーザ コミット コミット コミット コミット
  • 13. リリースの組織方式 リリース用 開発者 リーダー 品質管理 本番 ユーザ コミット 確認 承認 承認 デプロイ
  • 16. リリースワークフロー  好き嫌いは別にして、承認フローを通してリリースしたい要件もある。  客先作業  自分が信用できない  テストも承認フローの一部として組み込まれている  Visual Studioから担当者の裁量で発行は楽だけど、台数多くなると…  承認ワークフローでも自動化の恩恵は必要  QAの人が自動化を組めるとは限らない  むしろできない前提
  • 17. Release Management Server  リリース作業に承認フローを提供するソフトウェア  もともとInCycleSoftwareという会社のTFS拡張機能 (TFSがあるとビルド時にリリーストリガを設定可能)  Visual Studio 2013リリースのタイミングでMicrosoftに部門買収されて、 Visual Studio 2013の一部分となる  Visual Studio 2013 Update 3でPowerShell DSCをサポート  複数台のデプロイもサポート PowerShell DSCを使えばエージェントなくてもいい
  • 18. PowerShellでリリーススクリプト作れば?  「設定の手順」を自分で考えてPowerShellで作る必要がある  スクリプト自身のテストも大変  まっさらの環境用意して  OSパッチ当てて  各種ソフト入れて  順番に設定変更…  デバッグ… Install-WindowsFeature(略) $exe = new-object system.diagnostics.Process $exe.StartInfo.FileName= “¥¥server¥share¥build¥22222¥drop¥hoge.msi"; $exe.StartInfo.Arguments=“/Silent” $exe.Start() $exe.WaitForExit()
  • 19. PowerShell DSCで何とか救おう  DSC = Desired State Configuration  「あるべき設定」を定義して、あっていないところを自動的に更新する →(ある)べき→冪等制  @guitarrapc_techさんの連載と資料を見るといいよ! http://www.atmarkit.co.jp/ait/articles/1405/22/news131.html  PowerShell DSCのサーバとしてWindows Server 2012 R2が必要  クライアントにはWindows Management Framework(PowerShell込) 4.0がある といい(エージェントとどっちを入れるのがいい?) http://www.microsoft.com/ja-jp/download/details.aspx?id=40855→もちろんPowerShell !
  • 20. Release Management Serverの構成 デプロイ先 TFS Webサーバ Release Management Webサーバ SQL Server (Express可) Domain Controller クライアント PowerShell DSC サーバ Release Management Agentインス トール
  • 21. Release Managementのリリース構成  標準とvNextの構成の二種類  サーバ、リリースパス、環境それぞれ別に設定  別な理由は使用するインフラの差  標準:WinRM→Release Management Serverがコントロール  vNext:ChefやPowerShell DSC→外部のインフラに依存(承認ワークフローのみ提供)
  • 22. PowerShell DSC とRelease Management  PowerShell DSC サーバが必要になる代わりに、Release Management Agentが不要になる  ただし、Windows Management Framework 4.0が必要なので、 Windows Server 2012 R2/Windows 8.1より前のOSでは注意  PowerShellDSCサーバはほかと兼用でもOK  TFS WebサーバとPowerShell DSCとRelease Management Server共存させる  SQL Serverも同一環境で実行可能  今回の構成では全部入り  ちなみにChefも使えます
  • 23. オンプレミスとクラウド  Azure対応済み。Azureへのデプロイ時に必要な情報  サブスクリプションID  ストレージアカウント  管理証明書(拡張子publishsettingsに含まれている長いあれ)  オンプレミス  Active Directoryがほぼ必須 (アカウントやTFS連携で必要)  デプロイも認証がからむと難しい
  • 29. ビルドをトリガーにしてリリース  Release Management Serverの以下の場所にあるビルドテンプレートを VisualStudioから追加 %ProgramFiles(x86)%¥Visual Studio 12.0¥Release Management¥bin  接続するTFSのバージョンによって指定するビルドテンプレートが変わる ので注意  TFS 2013  Git:ReleaseGitTemplate.12.xaml  TFVC:TfvcTemplate.12.xaml  TFS 2012:ReleaseDefaultTemplate.11.1.xaml  TFS 2010:ReleasedefaultTemplate.xaml
  • 30. ビルドトリガを設定するときの注意点  「ビルドからリリースをトリガーできます か?」にチェックがあるかどうか  ビルド定義が正しいか確認  ステージで受け入れと配置手順が「自動」に設 定されていないとリリースは開始されないので 注意  TFSビルドサーバにRMクライアントがない  配置完了までにデフォルトの10分が経過した ※リリーステンプレートの名前変更できないの で注意
  • 31. ビルドをトリガーにしてリリース(VS) ビルド定義に リリースターゲットを 指定 Tokenは特定の機能を持 つデプロイ用に振り分 けるために使う
  • 36. PowerShell DSCを使う前に  実行前にはWinRMを有効にして、信頼するホストを設定 Set-Item wsman:¥localhost¥Client¥TrustedHosts-Value * -Force (全ホストを信頼)  PowerShell Resource Kit(現在Wave7)にいろんなモジュールが登録されている。  TechnetGalleryから入手 https://gallery.technet.microsoft.com/DSC-Resource-Kit-All-c449312d  以下のフォルダに展開 64bit版:%ProgramFiles%¥WindowsPowerShell¥Modules※:Hyper-Vもあるけど、おそらくWindows Server 2008 R2では使えない(名前空 間非互換のため)  Import-DscResourceコマンドレットで使用する 例:import-DscResource–Module xWebAdministration
  • 37. 本日の環境(オンプレミス) デプロイ先 Release Management TFS + SQL Server Windows 8.1 Domain Controller ThinkPad T440p (8core 16GB 480GB SSD)
  • 38. 本日の環境(Azure on IaaS) デプロイ先 Azure Basic A2 Release Management + TFS + SQL Server Azure Basic A3 (4core 7GB RAM 10GB Data HDD) • Azure ADなしのぬるい環境 • SQL Serverイメージ使うと高 いので、SQL ServerはMSDN のライセンスで持ち込み。検 証ならExpressでもOK • ISOイメージの持ち込みでは まった(Add-AzureVHDコマン ドレットで容量固定VHDを アップロード) • レポートなど動いてない機能 がある
  • 39. まとめ  リリースにワークフローが必要な場合は便利  環境作成結構大変なので、燃え尽きないように  PowerShell DSCやChef使えばリリースフローから依存性を切り離せてよい  PowerShell DSCはアドホックなインストールスクリプトのデバッグから解 放してくれる(かも)  とりあえず@guitarrapc_techさんをフォローしておこう
  • 40. 参考資料  How to trigger deployments to Chef managed environments from Release Management 2013 with Update 3 RChttp://blogs.msdn.com/b/visualstudioalm/archive/2014/07/08/how-to-trigger-deployments-to-chef- managed-environment-from-release-management.aspx  How to deploy to Standard or Azure environments in Release Management 2013 with Update 3 RChttp://blogs.msdn.com/b/visualstudioalm/archive/2014/07/07/how-to-deploy-to-standard-or-azure- environments-in-release-management-2013-with-update-3-rc.aspx  Release Management Update 3 CTP1 is now available with DSC Deployment Feature! http://blogs.msdn.com/b/visualstudioalm/archive/2014/05/22/release-management-for-microsoft-visual- studio-2013-with-update-3-ctp1-is-live.aspx  How to modify the TFS 2013 default build process template (GitTemplate.12.xaml & TfvcTemplate.12.xaml) to enable releasing from a buildhttp://blogs.msdn.com/b/visualstudioalm/archive/2013/12/09/how-to-modify-the-build-process- template-to-use-the-option-trigger-release-from-build.aspx  リリース管理を使用したリリースの管理 http://msdn.microsoft.com/ja-jp/library/dn217874.aspx  PowerShell DSCで始めるWindowsインフラストラクチャ自動化の基本 http://www.atmarkit.co.jp/fwin2k/operation/indexpage/index.html#powershelldsc