2014年9月25日木曜日

Runbookの中で条件判断させるには

Runbookの条件分岐は、リンクの線で定義するのは、自明です。
たとえばこういう感じ。
Create Userアクティビティの失敗をトラップするように構成しています。
scorunbookbranch01

では、アクティビティの成功や失敗ではなくて、データの内容で条件分岐させるには?
Compare Values(値の比較)アクティビティを使ってみます。
このアクティビティを使うと、リンクで下記のように条件判断を書くことができます。
scorunbookbranch02

Not Equalも書けます。
scorunbookbranch03
リンクで選択可能な条件判断は以下の通り。
scorunbookbranch07link

では、Compare Values(値の比較)アクティビティの中はどうなっているかというと、Field関数で文字列をスプリットして条件判断をしています。
scorunbookbranch04
scorunbookbranch05

Field関数は、
関数 http://technet.microsoft.com/ja-jp/library/hh440537.aspx
に載っています。Runbookの中では、正規表現も使えますよ~
正規表現 http://technet.microsoft.com/ja-jp/library/hh440535.aspx

Compare Values(値の比較)アクティビティのプルダウンに定義されている条件判断は、以下の通り。
scorunbookbranch06comparevalue

以上、ご参考になれば幸いです。

2014年9月15日月曜日

System Center 2012 R2 Orchestrator on Azure IaaS

※Orchestratorの挙動で不可思議なことが起こるため、この方法よりSQL Serverを別途入れたほうが良さそうです…

Azure IaaSでSystem Centerなる記事を見つけて思ったこと、System Center on Azure IaaSで考えなきゃと思ったことの投稿で、Azure IaaSにSystem Centerを載せる場合の思索めいたことを書きましたが、今回はOrchestratorを実際にインストールしてみます。
なお、これはMicrosoftの見解も基づくものではなく、ブログオーナーである私の個人的な見解となりますので、ご注意ください。

IaaSのイメージは、SQL Server 2012が含まれているものを使います。
この場合は、saは有効になっているものの、Active Directoryドメインの管理者アカウントがSQL Serverにログインできるようにはなっていません(イメージとしてはActive Directoryドメインがない想定で構成されていますので、当たり前の話ですね)。
※これ、Orchestratorを1台目にインストールしているときに気が付きました(^^;

綺麗な手順とするために、2台目をデプロイして、そこへOrchestratorをインストールするため、前述のSQL Serverログインを構成します。
すでにAzure IaaS城へActive Directoryドメインを構成していますので、Active Directoryドメインの管理者アカウントでOrchestratorマシンへサインインします。
SQL Server Management Studioは、Orchestratorマシンのローカル管理者アカウントを使って起動します。
こうしないと、SQL Server Management Studio経由でデータベースエンジンへログインできませんので。
scoonazureiaas-sqllogin01
scoonazureiaas-sqllogin02
scoonazureiaas-sqllogin03

Active Directoryドメイン関連のアカウントは何も登録されていないことがわかります。
scoonazureiaas-sqllogin04

Orchestratorマシンのローカル管理者アカウントが保有する権限等を確認しておきます。
scoonazureiaas-sqllogin05
scoonazureiaas-sqllogin06
scoonazureiaas-sqllogin07
scoonazureiaas-sqllogin08
scoonazureiaas-sqllogin09
scoonazureiaas-sqllogin10
scoonazureiaas-sqllogin11

Active Directoryドメイン管理者を登録していきます。
セキュリティのログインで右ボタンクリックし、[新しいログイン]をクリックします。
scoonazureiaas-sqllogin12

Active Directoryドメイン管理者を指定します。
scoonazureiaas-sqllogin13

サーバーの役割で[sysadmin]を追加します。
scoonazureiaas-sqllogin14

SQL Serverのシステムデータベースに対する権限を確認しておきます。
scoonazureiaas-sqllogin15
scoonazureiaas-sqllogin16
scoonazureiaas-sqllogin17

SQL Connectの権限を付与します。
scoonazureiaas-sqllogin18

データベース接続とログインがそれぞれ許可されていることを確認します。
scoonazureiaas-sqllogin19

Active Directoryのドメイン管理者が登録できました。
scoonazureiaas-sqllogin20
これで、Orchestratorのインストール中にデータベース接続できなくて焦る必要がなくなります(^^;
繰り返しますが、AzureのギャラリーからSQL Serverのイメージを選択した場合には、ここまでの作業が必要となります。
AzureのギャラリーからWindows Serverのイメージを選択し、ボリュームライセンスなどのSQL ServeをActive Directoryドメイン管理者アカウントによってインストールする場合は、この限りではありません(Active Directoryも構築済みという前提条件)。

ここまでくれば後はAzure IaaS VMにOrchestratorをインストールするだけ。
※ここから日本語化した画面になります
インストールメディアをセットし、セットアッププログラムを実行。
[インストール]をクリックします。
scoonazureiaas-scoinstall01

[名前]、[組織]、[プロダクトキー]を入力します。[次へ]ボタンを押します。
scoonazureiaas-scoinstall02

[ライセンス条項に同意します]をチェックします。[次へ]ボタンを押します。
scoonazureiaas-scoinstall03

1台にすべてインストールするのですべての項目にチェックが入ったままにします。[次へ]ボタンを押します。
scoonazureiaas-scoinstall04

[次へ]ボタンを押します。
scoonazureiaas-scoinstall05

.NET FrameworkとIISの追加インストールに同意します。[次へ]ボタンを押します。
scoonazureiaas-scoinstall06

.NET FrameworkとIISが追加インストールされます。
scoonazureiaas-scoinstall07

Orchestrator用のサービスアカウントを指定します。[テスト]ボタンを押して、資格情報を確認します。
scoonazureiaas-scoinstall08

資格情報が確認できたら、[次へ]ボタンを押します。
scoonazureiaas-scoinstall09

接続するデータベースホストを指定します。今回はローカルホストです。。[データベース接続のテスト]ボタンを押して、確認します。記事冒頭でSQL Serverログインを構成したのでここでは問題なく接続できました。問題ないことを確認できたら、[次へ]ボタンを押します。
scoonazureiaas-scoinstall10

データベース名はデフォルトとします。[次へ]ボタンを押します。
scoonazureiaas-scoinstall11

Orchesratorユーザーグループは規定値とします。[次へ]ボタンを押します。
scoonazureiaas-scoinstall12

接続ポート番号は規定値とします。[次へ]ボタンを押します。
scoonazureiaas-scoinstall13

インストール先は規定値とします。[次へ]ボタンを押します。
scoonazureiaas-scoinstall14

カスタマーエクスペリエンス向上プログラム、エラー報告は任意のものをチェックします。[次へ]ボタンを押します。
scoonazureiaas-scoinstall15

スクロールして構成情報を確認しておきます。
scoonazureiaas-scoinstall16
[インストール]ボタンを押します。
scoonazureiaas-scoinstall17

インストール中。
scoonazureiaas-scoinstall18

インストール完了しました。
scoonazureiaas-scoinstall19

[Windows Updateの起動]のみをチェックして、ウィザードを終了します。
scoonazureiaas-scoinstall20

Update Rollup 2を適用します(9/6のインストール時点では何故かUpdate Rollup 2でしたが、既にUpdate Rollup 3がリリースされています)。
scoonazureiaas-scoinstall21

Orchestratorマシンを再起動して、一通りのセットアップが完了です。
scoonazureiaas-scoinstall22

2014年9月10日水曜日

System Center 2012 Orchestratorの各バージョン用Integration Packsダウンロ ードページ

Integration Packs for System Center 2012 - Orchestrator http://technet.microsoft.com/en-us/library/hh295851.aspxからだと、Integration Packsは、System Center 2012向けも、System Center 2012 SP1向けもSystem Center 2012 R2向けもダウンロードできるようです。
直接ダウンロード可能なページを備忘録としてまとめておきます。

System Center 2012 – Orchestrator Component Add-ons and Extensions http://www.microsoft.com/en-us/download/details.aspx?id=28725ページからは、CM 2007、OM 2007、VMM 2008、DPM 2010、SM 2010そしてSC 2012用のIntegration Packsをダウンロードできます。
sc2012orc-ip

System Center 2012 Service Pack 1 - Orchestrator Component Add-ons and Extensions http://www.microsoft.com/en-us/download/details.aspx?id=34611ページからは、Microsoft Azure、SC 2012 SP1、Active Directory、Exchange、ftp用のIntegration Packsをダウンロードできます。
sc2012sp1orc-ip

System Center 2012 R2 - Orchestrator Component Add-ons and Extensions http://www.microsoft.com/en-us/download/details.aspx?id=39622ページからは、Microsoft Azure、SC 2012 R2、Active Directory、Exchange、ftp、SharePoint用のIntegration Packsをダウンロードできます。
sc2012r2orc-ip

最後にsearch.microsoft.comで"Orchestrator Component Add-ons and Extensions"を検索してみると下記の結果が得られますので、参考までに載せておきます。
http://www.microsoft.com/en-us/search/DownloadResults.aspx?q=Orchestrator%20Component%20Add-ons%20and%20Extensions

Integration Packsをダウンロードする際の一助になれば幸いです。

2014年9月1日月曜日

System Center on Azure IaaSで考えなきゃと思ったこと

※ここに記載しているのは、ブログオーナーたる私の個人的な見解です。

2014/9/1追記 buchizoさんより、コメント頂きまして、内容が不正確であることがわかりましたので、お詫び申し上げるとともに内容を加筆訂正(取り消しや青字部分)致します。

Azureのギャラリーから、SQL Serverを含むVMイメージを展開してみました。
(すでにSC 2012 R2 Orchestratorをインストール済みで、DBファイルがしっかりありますが。。。)
Cドライブにデータベースファイルが置かれていました。
Azure-SQLfiles

日本マイクロソフトの安納さんが3年前に書かれたブログ記事によれば、
【Azure for IT Pro】Guest VM の C: ドライブは絶対に消えないか? http://blogs.technet.com/b/junichia/archive/2011/06/10/3434620.aspx
Cドライブは最悪消失の可能性がある(ブログ記事にある表の最下行です)と。。。


つまり、SQL Serverで重要なmasterなどいわゆる重要といわれているDBは消えちゃうということですね。
既定でSQL ServerのDATAドライブにインストールされてしまう(System Centerなどの)DBももれなく消えそうですね(最悪のケースですが)。

buchizoさんよりコメント頂きまして、いろいろ調べてみたところ、Azure VMの正式リリース前ではありますが、下記の記事を見つけました。
Windows Azure Disk Partition Preservation http://blogs.msdn.com/b/kwill/archive/2012/10/05/windows-azure-disk-partition-preservation.aspx
この記事に下記の文章があります(原文を引用)。
One of the regular questions I get asked is what happens to my disks and drive letters in Windows Azure VMs when happens. The following chart will outline the different scenarios that affect your VM instances, and what happens to the different disks. Note that this information is for stateless PaaS VMs and not the new Windows Azure Virtual Machine persistent VMs.

この文章以降に、ノードをマイグレーションしたときにはCドライブがリビルドされると書いてあるのですが、
Note that this information is for stateless PaaS VMs and not the new Windows Azure Virtual Machine persistent VMs.

とあるように、このブログ記事が書かれた時点では正式リリースされていない「新しいAzure VMでは違うよ」とあるように読めます(少々強引か?!)。

あと、しばらく前に見ていてどのページだったかわからなくて難儀していたドキュメントも見つけました。
About Virtual Machine Disks in Azure http://msdn.microsoft.com/en-US/library/azure/dn790303.aspx
このドキュメントにCドライブは永続的(Persistent)だと書かれています。

ということで、Azure VMのCドライブにSQL Serverのデータディスクが置かれるのは、ちゃんと理由があったということになります。
Azure-installedSQLDB2
ブログ記事の内容を見直すきっかけを頂いたbuchizoさんには、感謝です!

さて、Azure VMのCドライブが永続的だということがわかってすっきりしましたが、そうはいってもデータ消失の危機が去ったわけではないと思います。
これはAzure VMだろうが、それ以外の仮想マシンだろうが、物理マシンだろうがCドライブのデータ消失は気にしておかないといけませんね(と個人的に思います)。
バックアップはきちんと取っておくことは言わずもがなですが、AzureでSystem Centerなどをインストールした場合は、サービスを停止後、一旦データベースをデタッチ、(VMに接続したEドライブ等に)アタッチしたほうが良さそうかもしれませんね。。。しておくのも一考かなと思ったりしました。
(先にDBファイルを作成しておいても、権限設定が面倒かもしれないですしね(^^;))

と、ここ迄考えたところでAlwayson可用性グループの出番なのかなと思っています。
今回はラボ的に構築していますが、リリース環境的にはバックアップ以外で、Alwayson可用性グループなり、ミラーを構成するのは、至極普通なことでしょう。
また、Cドライブが壊れる想定でのでデータ消失が起きた時のリカバリー手順は、Azure VMでも使うでしょう。そうすると、これ迄の知見も活かせるのではないかなぁ〜となんとなく思ってみました。

以上、思索ベースですが、考え方の参考になれば…