共用方式為


Add-AzureProvisioningConfig

新增 Azure 虛擬機的佈建組態。

注意

本文件中參考的 Cmdlet 用於管理使用 Azure Service Manager(ASM) API 的舊版 Azure 資源。 建立新的資源時,不建議使用此舊版 PowerShell 模組,因為 ASM 已排定淘汰。 如需詳細資訊,請參閱 Azure Service Manager 淘汰

Az PowerShell 模組是使用 PowerShell 管理 Azure Resource Manager (ARM) 資源的建議 PowerShell 模組。

語法

Add-AzureProvisioningConfig
   -VM <IPersistentVM>
   [-DisableGuestAgent]
   [-CustomDataFile <String>]
   [-Windows]
   [-AdminUsername <String>]
   [-Password <String>]
   [-ResetPasswordOnFirstLogon]
   [-DisableAutomaticUpdates]
   [-NoRDPEndpoint]
   [-TimeZone <String>]
   [-Certificates <CertificateSettingList>]
   [-EnableWinRMHttp]
   [-DisableWinRMHttps]
   [-WinRMCertificate <X509Certificate2>]
   [-X509Certificates <X509Certificate2[]>]
   [-NoExportPrivateKey]
   [-NoWinRMEndpoint]
   [-Profile <AzureSMProfile>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]
Add-AzureProvisioningConfig
   -VM <IPersistentVM>
   [-DisableGuestAgent]
   [-Linux]
   [-LinuxUser <String>]
   [-DisableSSH]
   [-NoSSHEndpoint]
   [-NoSSHPassword]
   [-SSHPublicKeys <SSHPublicKeyList>]
   [-SSHKeyPairs <SSHKeyPairList>]
   [-CustomDataFile <String>]
   [-Password <String>]
   [-Profile <AzureSMProfile>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]
Add-AzureProvisioningConfig
   -VM <IPersistentVM>
   [-DisableGuestAgent]
   [-CustomDataFile <String>]
   -AdminUsername <String>
   [-WindowsDomain]
   [-Password <String>]
   [-ResetPasswordOnFirstLogon]
   [-DisableAutomaticUpdates]
   [-NoRDPEndpoint]
   [-TimeZone <String>]
   [-Certificates <CertificateSettingList>]
   -JoinDomain <String>
   -Domain <String>
   -DomainUserName <String>
   -DomainPassword <String>
   [-MachineObjectOU <String>]
   [-EnableWinRMHttp]
   [-DisableWinRMHttps]
   [-WinRMCertificate <X509Certificate2>]
   [-X509Certificates <X509Certificate2[]>]
   [-NoExportPrivateKey]
   [-NoWinRMEndpoint]
   [-Profile <AzureSMProfile>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]

Description

Add-AzureProvisioningConfig Cmdlet 會將布建組態資訊新增至 Azure 虛擬機組態。 您可以使用組態物件來建立虛擬機。

此 Cmdlet 支援不同的布建組態,包括獨立 Windows 伺服器、已加入 Active Directory 網域的 Windows 伺服器,以及以 Linux 為基礎的伺服器。

若要建立已加入 Active Directory 網域的伺服器,請指定 Active Directory 網域的完整功能變數名稱,以及有權將虛擬機加入網域的使用者網域認證。

範例

範例 1:建立獨立虛擬機

PS C:\> New-AzureVMConfig -Name "NonDomainVM" -InstanceSize Small -ImageName "Image07" | Add-AzureProvisioningConfig -Windows -Password "password" -AdminUsername "AdminMain" | New-AzureVM -ServiceName "ContosoService"

此命令會使用 New-AzureVMConfig Cmdlet 建立虛擬機組態物件。 命令會使用管線運算符,將該對象傳遞至目前的 Cmdlet。 目前的 Cmdlet 會為執行 Windows 作業系統的虛擬機新增佈建組態。 組態包含系統管理員使用者名稱和密碼。 此命令會將組態傳遞至 New-AzureVM Cmdlet,以建立虛擬機。

範例 2:建立已加入網域的虛擬機

PS C:\> New-AzureVMConfig -Name "DomainVM" -InstanceSize Small -ImageName "Image09" | Add-AzureProvisioningConfig -WindowsDomain -Password "password" -AdminUsername "AdminMain" -ResetPasswordOnFirstLogon -JoinDomain "contoso.com" -Domain "contoso" -DomainUserName "DomainAdminUser" -DomainPassword "DomainPassword" -MachineObjectOU 'OU=AzureVMs,DC=contoso,DC=com' | New-AzureVM -ServiceName "ContosoService"

此命令會建立虛擬機組態對象,然後將它傳遞給目前的 Cmdlet。 目前的 Cmdlet 會新增要加入 contoso 網域之虛擬機的佈建組態。 此命令包含將虛擬機加入網域所需的使用者名稱和密碼。 設定要求使用者在第一次登入時變更用戶密碼。 命令會根據布建物件建立虛擬機。

範例 3:建立以 Linux 為基礎的虛擬機

PS C:\> New-AzureVMConfig -Name "LinuxVM" -InstanceSize Small -ImageName "LinuxImage03" | Add-AzureProvisioningConfig -Linux -LinuxUser "LinuxRoot" -Password "password" | New-AzureVM -ServiceName "ContosoService"

此命令會建立虛擬機組態對象,然後將它傳遞給目前的 Cmdlet。 目前的 Cmdlet 會為執行 Linux 作業系統的虛擬機新增佈建組態。 組態包含根用戶名稱和密碼。 命令會根據布建物件建立虛擬機。

範例 4:建立包含 WinRM 憑證的虛擬機

PS C:\> $certs = Get-ChildItem Cert:\CurrentUser\My
New-AzureVMConfig -Name "NonDomainVM" -InstanceSize Small -ImageName "Image11" | Add-AzureProvisioningConfig -Windows -Password "password" -AdminUsername "AdminMain" -WinRMCertificate $certs[0] -X509Certificates $certs[1], $certs[2] | New-AzureVM -ServiceName "ContosoService" -WaitForBoot

第一個命令會從證書存儲取得憑證,然後將它們儲存在$certs陣列變數中。

第二個命令會建立虛擬機組態對象,然後將它傳遞給目前的 Cmdlet。 目前的 Cmdlet 會新增布建組態,其中包含 WinRM 的憑證。 命令會根據布建物件建立虛擬機。

範例 5:建立已透過 HTTP 啟用 WinRM 的虛擬機

PS C:\> New-AzureVMConfig -Name "NonDomainVM" -InstanceSize Small -ImageName "Image14" | Add-AzureProvisioningConfig -Windows -Password "password" -AdminUsername "AdminMain" -EnableWinRMHttp | New-AzureVM -ServiceName "ContosoService" -WaitForBoot

此命令會建立虛擬機組態對象,然後將它傳遞給目前的 Cmdlet。 目前的 Cmdlet 會新增透過 HTTP 啟用 WinRM 的布建組態。 命令會根據布建物件建立虛擬機。

範例 6:建立已透過 HTTPS 停用 WinRM 的虛擬機

PS C:\> New-AzureVMConfig -Name "NonDomainVM" -InstanceSize Small -ImageName "Image07" | Add-AzureProvisioningConfig -Windows -Password "password" -AdminUsername "AdminMain" -DisableWinRMHttps | New-AzureVM -ServiceName "ContosoService" -WaitForBoot

此命令會建立虛擬機組態對象,然後將它傳遞給目前的 Cmdlet。 目前的 Cmdlet 會新增布建組態,以停用 WinRM over HTTPS。 命令會根據布建物件建立虛擬機。

範例 7:建立沒有密鑰導出的虛擬機

PS C:\> $certs = Get-ChildItem Cert:\CurrentUser\My
New-AzureVMConfig -Name "NonDomainVM" -InstanceSize Small -ImageName "Image07" | Add-AzureProvisioningConfig -Windows -Password "password" -AdminUsername "AdminMain" -X509Certificates $certs[0], $certs[1] -NoExportPrivateKey | New-AzureVM -ServiceName "ContosoService" -WaitForBoot

第一個命令會從證書存儲取得憑證,然後將它們儲存在$certs陣列變數中。

第二個命令會建立虛擬機組態對象,然後將它傳遞給目前的 Cmdlet。 目前的 Cmdlet 會為包含憑證且不會匯出私鑰的虛擬機新增布建組態。 命令會根據布建物件建立虛擬機。

參數

-AdminUsername

指定此組態在虛擬機上建立的系統管理員帳戶用戶名稱。

類型:String
Position:Named
預設值:None
必要:True
接受管線輸入:False
接受萬用字元:False

-Certificates

指定此組態在虛擬機上安裝的一組憑證。

類型:CertificateSettingList
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-CustomDataFile

指定虛擬機的數據檔。 此 Cmdlet 會將檔案的內容編碼為Base64。 檔案長度必須小於 64 KB。

如果客體作業系統是 Windows 作業系統,此組態會將此資料儲存為名為 %SYSTEMDRIVE%\AzureData\CustomData.bin的二進位檔。

如果客體操作系統是Linux,此組態會使用 ovf-env.xml 檔案傳遞數據。 組態會將該檔案複製到 /var/lib/waagent 目錄。 代理程式也會將Base64編碼的數據儲存在 /var/lib/waagent/CustomData 中。

類型:String
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-DisableAutomaticUpdates

表示此組態會停用自動更新。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-DisableGuestAgent

表示此設定會停用基礎結構即服務 (IaaS) 客體代理程式。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-DisableSSH

表示此組態會停用SSH。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-DisableWinRMHttps

表示此設定會停用 HTTPS 上的 Windows 遠端管理 (WinRM)。 根據預設,WinRM 會透過 HTTPS 啟用。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Domain

指定有權將計算機新增至網域之帳戶的功能變數名稱。

類型:String
Position:Named
預設值:None
必要:True
接受管線輸入:False
接受萬用字元:False

-DomainPassword

指定具有將電腦新增至網域之許可權的用戶帳戶密碼。

類型:String
Position:Named
預設值:None
必要:True
接受管線輸入:False
接受萬用字元:False

-DomainUserName

指定有權將計算機新增至網域的用戶帳戶名稱。

類型:String
Position:Named
預設值:None
必要:True
接受管線輸入:False
接受萬用字元:False

-EnableWinRMHttp

表示此設定會啟用 WinRM over HTTP。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-InformationAction

指定此 Cmdlet 如何回應資訊事件。

此參數可接受的值為:

  • 繼續
  • 忽略
  • 詢問
  • SilentlyContinue
  • 停止
  • 暫止
類型:ActionPreference
別名:infa
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-InformationVariable

指定資訊變數。

類型:String
別名:iv
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-JoinDomain

指定要加入之網域的完整功能變數名稱 (FQDN)。

類型:String
Position:Named
預設值:None
必要:True
接受管線輸入:False
接受萬用字元:False

-Linux

表示此組態會建立Linux組態。

類型:SwitchParameter
Position:Named
預設值:None
必要:True
接受管線輸入:False
接受萬用字元:False

-LinuxUser

指定此設定在虛擬機上建立之 Linux 系統管理帳戶的用戶名稱。

類型:String
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-MachineObjectOU

指定組態建立計算機帳戶的組織單位 (OU) 完整名稱。

類型:String
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-NoExportPrivateKey

表示此組態不會上傳私鑰。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-NoRDPEndpoint

表示此組態會建立沒有遠端桌面端點的虛擬機。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-NoSSHEndpoint

表示此組態會建立沒有 SSH 端點的虛擬機。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-NoSSHPassword

表示此組態會建立沒有 SSH 密碼的虛擬機。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-NoWinRMEndpoint

表示此設定不會為虛擬機新增 WinRM 端點。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Password

指定系統管理員帳戶的密碼。

類型:String
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Profile

指定此 Cmdlet 從中讀取的 Azure 設定檔。 如果您未指定設定檔,此 Cmdlet 會從本機預設配置檔讀取。

類型:AzureSMProfile
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-ResetPasswordOnFirstLogon

指出虛擬機要求使用者在第一次登入時變更密碼。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-SSHKeyPairs

指定 SSH 金鑰組。

類型:SSHKeyPairList
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-SSHPublicKeys

指定 SSH 公鑰。

類型:SSHPublicKeyList
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-TimeZone

指定虛擬機的時區,例如太平洋標準時間或加拿大中部標準時間。

類型:String
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-VM

指定虛擬機物件。

類型:IPersistentVM
別名:InputObject
Position:Named
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-Windows

表示此組態會建立執行 Windows 作業系統的獨立虛擬機。

類型:SwitchParameter
Position:Named
預設值:None
必要:True
接受管線輸入:False
接受萬用字元:False

-WindowsDomain

指出此組態會建立已加入 Active Directory 網域的 Windows 伺服器。

類型:SwitchParameter
Position:Named
預設值:None
必要:True
接受管線輸入:False
接受萬用字元:False

-WinRMCertificate

指定此組態與 WinRM 端點相關聯的憑證。

類型:X509Certificate2
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-X509Certificates

指定部署至託管服務的 X509 憑證陣列。

類型:X509Certificate2[]
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False