2018年9月30日日曜日

Azure サブスクリプションから登録削除する際、Remove-AzsRegistration を実行すると、オプション不足に遭遇した

機会ありまして、Azure Stack を Azure サブスクリプションから別の Azure サブスクリプションへ再登録しました。
その際に遭遇した事象を記載します。
今回の様に、一つのアカウントで複数の Azure サブスクリプションを関連づけている場合に、別の Azure サブスクリプションへ再登録し直すというのは往々にしてありそうです。
Remove-AzsRegistration にどういうオプションを指定するかは要注意ですね。

事象としては、件名の通り、
Azure サブスクリプションから登録削除する際、Remove-AzsRegistration を実行すると、オプション不足に遭遇した
ということです。

通常は、
Renew or change registration
Switch registration to a new subscription
に記載ある通り、

Remove-AzsRegistration -PrivilegedEndpointCredential $YourCloudAdminCredential -PrivilegedEndpoint $YourPrivilegedEndpoint

を実行すればよいわけです。
が、上記を実行したところ

Searching for registration resource in Azure...
************************ Error ************************
Registration resource with matching CloudId property GUIDが表示される was not found. Please ensure a registration resource exists in the provided subscription & resource group.
*********************** Ending registration action during Remove-AzsRegistration ***********************

と出ちゃいました。

Remove-AzsRegistration は、Azurestack-tools に含まれています。
なので、PowerShell のソースコードから上記エラーメッセージ出力個所を確認して、そこから前にさかのぼれば何かわかるのではと考えました。

ソースコードは、
AzureStack-Tools/Registration/RegisterWithAzure.psm1
が該当します。
現在のソースコードだと、396行目に該当メッセージを出力する個所があります。
※本ブログエントリーに記載した行番号/行数は、今後改版に伴い変わる可能性がありそうです。ご注意ください。

Log-Throw -Message "Registration resource with matching CloudId property $($stampInfo.CloudId) was not found. Please ensure a registration resource exists in the provided subscription & resource group." -CallingFunction $($PSCmdlet.MyInvocation.MyCommand.Name)

このメッセージが含まれる if 文ではなく、その前(すなわち if ($RegistrationName)から始まる)ブロックを見ます。

この if 文は条件が真だと、メッセージが出ます。
が上記エラーメッセージまで、そんなメッセージは出ていません。
if ($RegistrationName) の条件が偽になったため、上記エラーメッセージが出たと判断できます。

それと登録時に実行した
Set-AzsRegistration から生成されたログ
AzureStack.Activation.Set-AzsRegistration-YYYY-MM-DD.log
から、

"ResourceId": "/subscriptions/現在登録されているAzureサブスクリプションのGUID/resourceGroups/現在登録されているリソース名/providers/Microsoft.AzureStack/registrations/現在登録されているレジストレーション名",

という行がありますので、必ずチェックしましょう。

ということで、Remove-AzsRegistration に
-RegistrationName 現在登録されているレジストレーション名
を与えて実行したもののまた失敗。。。

Azure ポータル画面を見直しつつ、
現在のソースコードだと、356行目

$registrationResourceId = "/subscriptions/$($AzureContext.Subscription.SubscriptionId)/resourceGroups/$ResourceGroupName/providers/Microsoft.AzureStack/registrations/$registrationName"

と369行目

$registrationResourceId = "/subscriptions/$($AzureContext.Subscription.SubscriptionId)/resourceGroups/$ResourceGroupName/providers/Microsoft.AzureStack/registration

を見て、$ResourceGroupName もうまく指定されていないのではないかと思いました。

Remove-AzsRegistration に
-ResourceGroupName 現在登録されているリソース名
をさらに追加して実行したところ、うまくいきました。

最終的な PowerShell コマンドレットは、下記の通りとなりました。

Remove-AzsRegistration -PrivilegedEndpointCredential $YourCloudAdminCredential -PrivilegedEndpoint $YourPrivilegedEndpoint -ResourceGroupName "現在登録されているリソース名" -RegistrationName "現在登録されているレジストレーション名"

※ $YourPrivilegedEndpoint は、IPアドレスでも行けましたね。

2018年9月22日土曜日

SCVMM Semi-Annual Channel 1807 の SQL Server を2017へアップグレード

SCVMM Semi-Annual Channel 1807 から SQL Server 2017 がサポートされるので、アップグレードしてみます。
※あまりこういうケースは無いでしょうけれど。

SQL Server 2017 のサポートされているバージョンとエディションのアップグレードと、
SQL Server のインストールに必要なハードウェアおよびソフトウェアで、アップグレードの前提を確認します。

SQL Server 2017 のサポートされているバージョンとエディションのアップグレード
アップグレード前のチェック リストは、概ね行けると思いましたが、下記を念のため確認してみます。
  • SQL Server エージェントのサービス アカウントが SQL Server sysadmin グループのメンバー

    まあこれが通常の設定なので、条件を満たしています。
  • 再起動の保留

    ちょうど9月の累積更新プログラムがありましたので、適用しときます。

さて、SQL Server を2017へアップグレードする前にVMMのサービスを止めておきます。



SQL Server 2017を進めます。


[Upgrade from a previous version of SQL Server]をクリックします。


[Next]ボタンをクリックします。


ライセンス条項にチェックを入れて、[Next]ボタンをクリックします。


該当のインスタンスを確認して、[Next]ボタンをクリックします。


アップグレードする機能は、これだけなので[Next]ボタンをクリックします。


該当のインスタンスを確認して、[Next]ボタンをクリックします。


サマリーを確認して、[Upgrade]ボタンをクリックします。

こちらの環境では、所要時間が8分ほどでした。


VMMのサービスも無事起動。


SSMS からも SQL Server 2017 へアップグレードできたことを確認。


VMMの動作も問題ないです。


2018年9月16日日曜日

SCVMM Semi-Annual Channel 1801 から 1807 へ

ようやく、SCVMM Semi-Annual Channel 1801 ができたので、1807にしてみます。

といいつつ、やり方は System Center 2016 Update Rollup と同様で、Windows Updateか、Microsoft Update Catalogからの手動ダウンロード/インストールになる旨、
System Center Virtual Machine Manager, version 1807
に説明あります。
※System Center 全コンポーネントのサポート情報は、System Center, version 1807 を確認してください。

Windows Update 出てくるのを待たずに、Microsoft Update Catalogからの手動ダウンロード/インストールを試します。
  • VMM Server
  • 管理コンソール
  • VMM Agent
の三種類が用意されています。


VMM Server 1807 をMicrosoft Update Catalogよりダウンロードします。



管理コンソール 1807 をMicrosoft Update Catalogよりダウンロードします。


管理コンソールは、64bit版のみをダウンロードしました。

VMM Agent 1807 をMicrosoft Update Catalogよりダウンロードします。


VMM Agentは、64bit版のみをダウンロードしました。
全種類ダウンロード完了しました。



VMM Server 1807 をインストールします。



VMM Server と VMM Agentを停止してアップデートするか否かを問われます。
ここは停止するほうを選択しました。


VMM Agentの配布用ファイルも、日付が 1807 のものに変わっていますね。ということで、別途 VMM Agnet のアップデータを VMM Server に適用する必要はありませんね。



続いて管理コンソールをインストールします。


特に問題なく完了。

管理コンソールに認証画面も、1807に変わっています。

スプラッシュ画面も、1807に変わっています。


管理コンソールからバージョンを確認しましたが、1807に変わっています。


今回は、Hyper-V ホストに VMM Agent を入れていないので、ここで作業終了。
Hyper-V ホストを管理している場合は、管理コンソールから VMM Agent をアップデートすればよいです。

以上。
SCVMM Semi-Annual Channel 1807より、SQL Server 2017をサポートするとのこと。
別稿で、SQL Server 2016からSQL Server 2017へのアップデートを試してみます。

2018年9月9日日曜日

SCVMM Semi-Annual Channelのシステム要件コンポーネント

SCVMM Semi-Annual Channelに限らず、でもSQL Serverとかではなくて、Windows ADKとか、SQL Server command line utilitiesはどこからダウンロードするのか、迷わないようにするための記事w

元ネタは、
System requirements for System Center Virtual Machine Manager
です。

Chrome 69でもWindows Admin Center 1808の認証ダイアログはでます。

Google Chromeが69へメジャーバージョンアップしましたので、確認しました。
結論としては、Windows Admin Centerのknown Issueである「都度あるごとに認証ダイアログが表示される」件、直っていませんorz


2018年9月8日土曜日

SCOMのモニターとルールをcsv化するPowerShellが出てます

Kevinさんのブログを見ていたら、下記の紹介が。
Get All SCOM Rules and Monitors, with their Alert details to a CSV

良さそうと思っていましたが、ようやく試しました。
※SCOM 2016で確認しています。
Get All SCOM Rules and Monitors, with their Alert details to a CSVからダウンロードページに移動し、ファイルをダウンロード。
回答した状態がこちら。


拡張子をps1に変えます。警告がでるので、[Yes]ボタンを押します。


PowerShellファイルになりました。


PowerShell ISEで開きます。


実行!


しばし待つと完了します。


既定では、c:\reportにcsvファイルが二つできます。


CSVファイルを開く前に、比較用としてSCOMでモニターとルールを開いてみました。



出来上がったファイルは、下記の通りです。(見やすいようにsortをかけています。ファイル自体は未ソートの状態で出来上がります、ご注意ください。)



というわけで、ドキュメント作成に如何でしょうか~