本文共 7195 字,大约阅读时间需要 23 分钟。
在写这篇博客的时候,我已经第六次部署Azure Stack 开发工具包(ASDK),原因也很简单:ASDK每月更新没法就地升级,需要推倒重来。毕竟这是一个测试和开发环境,可以在部署后用来评估和演示 Azure Stack 功能和服务。
当然开始之前,还是为大家科普下,什么是Azure Stack,按照官方的定义,Azure Stack 是一种混合云平台,通过它可从组织的数据中心提供 Azure 服务。 Azure Stack 旨在为重要场景(如边缘环境和离线环境,或者满足特定安全性和合规性要求)中的现代应用程序启用新方案。
在开始之前,我们需要本地的单节点服务器满足以下配置:
具体的细节可以参考:在确保开发工具包主机满足安装 ASDK 的基本要求以后,下一步是下载并提取 ASDK 部署包。 部署包包括 Cloudbuilder.vhdx 文件,该文件是一个虚拟硬盘驱动器,其中包括一个可启动的操作系统,以及 Azure Stack 安装文件。
下面开始分步描述各个部署环节:
一、 准备ASDK主机环境
# Variables$Uri = 'https://raw.githubusercontent.com/Azure/AzureStack-Tools/master/Deployment/asdk-installer.ps1'$LocalPath = 'C:\AzureStack_Installer'# Create folderNew-Item $LocalPath -Type directory# Enforce usage of TLSv1.2 to download from GitHub[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12# Download fileInvoke-WebRequest $uri -OutFile ($LocalPath + '\' + 'asdk-installer.ps1')
从提升了权限的 PowerShell 控制台启动 C:\AzureStack_Installer\asdk-installer.ps1 脚本,然后单击“准备环境”
在安装程序的“选择 Cloudbuilder vhdx”页上浏览到 cloudbuilder.vhdx 文件并将其选中,该文件是在前述步骤中下载并提取的。 如果需要向开发工具包主机添加其他驱动程序,则也可选择在此页上启用“添加驱动程序”复选框。 单击“下一步”。
在“可选设置”页上,提供开发工具包主机 的本地管理员帐户信息,然后单击“下一步”。 还可以提供以下可选设置的值:单击“立即重新启动”,将开发工具包主机启动到 cloudbuilder.vhdx 中,然后继续部署过程。
当重启到ASDK的VHDX环境中的时候,这台物理服务器已经变为了双系统启动状态,这是进入了一个直接挂载VHDX启动的物理机环境,所有的操作系统层面的操作都是在这个VHDX中完成的,不会影响之前的物理操作系统。
接下来我们开始安装ASDK(Azure Stack 开发工具包的安装程序用户界面是一种基于 WCF 和 PowerShell 的开源脚本。)
在主机成功启动到 CloudBuilder.vhdx 映像之后,使用准备用于 ASDK 安装的开发工具包主机时指定的管理员凭据登录。 此凭据应与开发工具包主机本地管理员凭据相同。
在标识提供者的“类型”下拉框中,选择“Azure Cloud”、“Azure China”或“AD FS”。 在“本地管理员密码”下的“密码”框中,键入本地管理员密码(必须与当前配置的本地管理员密码相符),然后单击“下一步”。
为 BGPNAT01 虚拟机选择 DHCP 或静态网络配置。
提示
BGPNAT01 VM 是边缘路由器,提供适用于 Azure Stack 的 NAT 和 VPN* 功能。
静态:仅当 DHCP 无法为 Azure Stack 分配可访问 Internet 的有效 IP 地址时,才使用此选项。 静态 IP 地址必须在 CIDR 格式中使用子网掩码长度来指定(例如,10.0.0.5/24)。
提示
若要查找时间服务器 IP 地址,请访问 pool.ntp.org 或 ping time.windows.com。
(可选)设置以下值:
在“验证网络接口卡属性”页上会看到一个进度栏。 完成验证后,单击“下一步”。在“摘要”页上单击“部署”,开始在开发工具包主机上安装 ASDK。
如果执行 Azure AD 部署,系统会在安装开始后数分钟提示输入 Azure AD 全局管理员帐户凭据。
部署程序需要花费数小时,在此期间,主机会自动重新启动一次。 若要监视部署进度,请在开发工具包主机重启后,以 azurestack\AzureStackAdmin 身份登录。 如果部署成功,PowerShell 控制台会显示“COMPLETE: Action 'Deployment'”。
超级顺利,几个小时的自动化部署,现已成功安装 ASDK!
如果部署出于某种原因失败,可以从头重新部署,也可以在同一个权限提升的 PowerShell 窗口中使用以下 PowerShell 命令,从最后一个成功步骤重新开始部署:
cd C:\CloudDeployment\Setup.\InstallAzureStackPOC.ps1 -Rerun
部署ASDK完成后的配置任务
需要安装与 Azure Stack 兼容的 Azure PowerShell 模块才能使用 Azure Stack。
通过 PowerShell 库安装适用于 Azure Stack 的 PowerShell 命令。 若要注册 PSGallery 存储库,请打开权限提升的 PowerShell 会话并运行以下命令:
Set-PSRepository ` -Name "PSGallery" ` -InstallationPolicy Trusted
通过 API 版本配置文件安装与 Azure Stack 兼容的 AzureRM 模块。 Azure Stack 需要 2017-03-09-profile API 版本配置文件(可通过安装 AzureRM.Bootstrapper 模块获取)。
无论是否与 ASDK 主机建立了 Internet 连接,都可以安装 Azure Stack PowerShell,我们这里主要采用了连接互联网的方式进行安装:
# Install the AzureRM.Bootstrapper module. Select Yes when prompted to install NuGet Install-Module ` -Name AzureRm.BootStrapper# Install and import the API Version Profile required by Azure Stack into the current PowerShell session.Use-AzureRmProfile ` -Profile 2017-03-09-profile -ForceInstall-Module ` -Name AzureStack ` -RequiredVersion 1.2.11
如果安装成功,输出中会显示 AzureRM 和 AzureStack 模块。
AzureStack-Tools 是托管 PowerShell 模块的 GitHub 存储库,可用于管理资源并将其部署到 Azure Stack。 若要获取这些工具,请克隆 GitHub 存储库,或运行以下脚本来下载 AzureStack-Tools 文件夹:
# Change directory to the root directory. cd \# Enforce usage of TLSv1.2 to download the Azure Stack tools archive from GitHub[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12invoke-webrequest ` https://github.com/Azure/AzureStack-Tools/archive/master.zip ` -OutFile master.zip# Expand the downloaded files.expand-archive master.zip ` -DestinationPath . ` -Force# Change to the tools directory.cd AzureStack-Tools-master
最后就是验证ASDK的安装是否成功了。
若要确保 ASDK 部署成功,可以遵循以下步骤使用 Test-AzureStack cmdlet:以 AzureStack\CloudAdmin 身份登录到 ASDK 主机。以管理员身份打开 PowerShell(非 PowerShell ISE)。运行: Enter-PSSession -ComputerName AzS-ERCS01 -ConfigurationName PrivilegedEndpoint运行: Test-AzureStack
此项测试可能需要几分钟时间才能完成。 如果安装成功,将返回如下所示的输出:
激活管理员门户和租户门户
在完成使用 Azure AD 的部署以后,必须激活 Azure Stack 管理员门户和租户门户。 对于目录的所有用户来说,此激活是指同意为 Azure Stack 门户和 Azure 资源管理器提供正确的权限(已在同意页上列出)。
如果在管理员门户中操作,请导航到 ,
阅读信息,然后单击“接受”。 接受后即可添加服务管理员,但这些管理员不能也是目录租户管理员。如果在租户门户中操作,请导航到 ,阅读信息,然后单击“接受”。 接受后,目录中的用户即可登录到租户门户。
到此大家就会看到当前我已经安装好最新的1.0.180513.1的版本。
最后因为是开发测试环境,我们就要对当前的环境进行密码过期策略进行调整,以防测试期间出现密码过期的状况。
若要通过 Powershell 更改密码过期策略,请执行以下步骤:在提升权限的 Powershell 控制台中,运行以下命令:
Set-ADDefaultDomainPasswordPolicy -MaxPasswordAge 180.00:00:00 -Identity azurestack.local
可将 Azure Stack 开发工具包 (ASDK) 安装注册到 Azure,以便从 Azure 下载 Marketplace 项,并设置向 Microsoft 报告商务数据的功能。 之所以建议注册,是因为这样可以测试重要的 Azure Stack 功能,例如 Marketplace 联合和使用情况报告。 注册 Azure Stack 之后,使用情况将报告给 Azure 商业组件。 用于注册的订阅下会显示此信息。 但是,ASDK 用户无需付费,不管他们报告的用量是多少。
接下来我就为已经部署好的ASDK进行注册,以确保可以正常下载市场镜像。
# Add the Azure cloud subscription environment name. Supported environment names are AzureCloud or, if using a China Azure Subscription, AzureChinaCloud.Add-AzureRmAccount -EnvironmentName "AzureChinaCloud"# Register the Azure Stack resource provider in your Azure subscriptionRegister-AzureRmResourceProvider -ProviderNamespace Microsoft.AzureStack#Import the registration module that was downloaded with the GitHub toolsImport-Module C:\AzureStack-Tools-master\Registration\RegisterWithAzure.psm1#Register Azure Stack$AzureContext = Get-AzureRmContext$CloudAdminCred = Get-Credential -UserName AZURESTACK\CloudAdmin -Message "Enter the credentials to access the privileged endpoint."Set-AzsRegistration ` -PrivilegedEndpointCredential $CloudAdminCred ` -PrivilegedEndpoint AzS-ERCS01 ` -BillingModel Development-ResourceGroupLocation "ChinaEast"
其中如果是国际版的Azure账号,需要将其中的参数 "AzureChinaCloud"改为“AzureCloud”,并且将-ResourceGroupLocation "ChinaEast"删去
如果脚本运行成功,那么就会显示:Your environment is now registered and activated using the provided parameters.
我们可以来验证一下ASDK是否注册成功,在登录管理门户之后,点击 Marketplace Management > Add from Azure.
如果看到以上画面,那么说明已经注册成功,可以开始测试之旅啦!
转载地址:http://iaejx.baihongyu.com/