Azureの小ネタ (改)

~Azureネタを中心に、色々とその他の技術的なことなどを~

Azure Automation その2

前回に続いてAzure Automationの話です。今回は、Automationのスクリプトから特定のサブスクリプションVM情報を取得するところまでやってみたいと思います。

必要なもの

必要なものは以下

  • AutomationのPreviewを申し込んでください。
  • 管理証明書(CERとPFX)。CERは、操作対象サブスクリプションの管理ポータルから登録しておく必要があります。
続きを読む

Azure Automationのアセット

Azure Automationのアセット周りがよく分からなかったので、備忘録をかねてモデル化。適当なモデリングですのであしからず。

20140707182712

以下の4つが定義可能。

  • スケジュール
  • コネクション
  • 変数
  • クレデンシャル。PSのUser/Passwordまたは、Azureの証明書。

これらは、実際のスクリプトで参照できるみたいですが、それらは別途。

以上。

Remote PowerShell で Azure 仮想マシンに接続する

試したことがなかったので備忘録をかねてレッツトライ。

まず普通に仮想マシンを作ると、PowerShell というエンドポイントが定義されていているので、ここに接続することになります。

f:id:StateMachine:20140704101445p:plain

とりあえず、以下のようにスクリプトを実行すれば接続はできます。

$pass = ConvertTo-SecureString "password" -AsPlainText -Force
$creds = New-Object System.Management.Automation.PSCredential("user", $pass)
$uri = Get-AzureWinRMUri -ServiceName サービス名 -Name VM名
Enter-PSSession -ConnectionUri $uri -Credential $creds  -SessionOption (New-PSSessionOption -SkipCACheck)

Get-AzureWinRMUri でURI情報を取っていますが、Enter-PSSessionに直接 URIやポート等を指定しても行けそうです。

Enter-PSSession -ComputerName xxxx.cloudapp.net -Port 5986 -Credential $creds -SessionOption (New-PSSessionOption -SkipCACheck) -UseSSL

あと、SSL証明書の署名が不明であるためエラーがでますが、それを回避するめに SessionOptionを指定しております。

では。