Azure PowerShell 1.0.0以上版本在中国Azure使用的注意事项

 随着Azure PowerShell 1.0.0+的推出,越来越多的客户开始使用新的版本的Azure PowerShell。此版本的PowerShell最大的改变在于将原先的Switch-AzureMode的指令移除,将原本在其下的指令改以加上Rm的方式存在,如Get-AzureResource改为Get-AzureRmResource。如此一来,在使用之前就不需要先做AzureMode的切换。因此,PowerShell 1.0.0的改变主要影响的是使用Azure资源管理器 (Azure Resource Manager,以下简称ARM)的用户,对于使用Azure服务管理器(Azure Service Manager,以下简称ASM)的用户影响并不大。(关于两者差异可参考下列常见问题) 然而,由于此次版本的改变,许多用户在验证身份时发生了问题: 1. 如同以前版本使用Add-AzureAccount –Environment AzureChinaCloud输入中国Azure的身份。却发现在使用AzureRm相关指令时要求重新以Login-AzureRmAccount输入身份。 2. 当输入Login-AzureRmAccount –Environment AzureChinaCloud时,出现错误。 这是因为此次改版之后将ASR和ARM两者的身份信息及环境参数分开因此需要分别输入并需要对环境参数进行额外操作。   在解决这个错误之前,需要先确认当前Azure PowerShell的版本。 可在控制台中查找相关信息或在PowerShell中执行 Get-Module -ListAvailable | Where-Object { $_.name -like “*Azure*” } 这边需要特别确认AzureRM.Profile的版本,我这边的版本是1.0.1。 首先,建议所有的用户升级到Azure PowerShell 1.0.2以上版本,主要是因为在此版本中提供了相关修正。使用0.9.x版本的用户,也建议进行升级,主要是因为有些新的服务在新的版本下才能使用。(如Redis Cache Premium) 最新的Azure PowerShell安装文件下载地址请到这里查找: https://github.com/Azure/azure-powershell/releases   在此,我假设Azure PowerShell都升级到1.0.2以上版本了。(无法升级的1.0.0及1.0.1用户作法可参考常见问题) 接着,在PowerShell中输入下列指令 Login-AzureRmAccount –EnvironmentName AzureChinaCloud 在Azure PowerShell 1.0.2之后,加入了-EnvironmentName参数,使用该参数就能成功验证中国Azure的账户信息。 接着,就能正常的操作AzureRm相关指令   常见问题…


部署和管理Nano Server

Nano Server是一种可远程管理的服务器操作系统,专门优化用于运行在云和数据中心中,类似Windows Server的Server Core模式,但是更加小很多,甚至连本地的PowerShell界面都不提供。不能本地登录,也不支持远程桌面。仅仅占用很少的磁盘空间(根据所安装的模块多少,从300MB到600MB不等),安装速度也非常快。更加重要的是相对与普通的Windows Server甚至Server Core模式的Windows Server,都大大减少了补丁的数量,从而很少需要重新启动。 可以看出Nano Server是下面这些场景理想的操作系统: 计算节点(运行Hyper-V,可以是群集) 存储节点(Scale-Out File Server,可以是群集) 云端的Container或者虚拟机的操作系统 这篇博客不是一个有关Nano Server的详尽的部署手册,只是用于分享一些部署和管理的经验。完整的文档见https://technet.microsoft.com/en-us/library/mt126167.aspx?f=255&MSPPError=-2147217396 。这里还经实测修正了一些命令。   步骤一:创建可以引导的Windows Server Nano 2016 VHD文件 1. 下载下面两个PowerShell脚本。    Convert-WindowsImage.ps1 https://gallery.technet.microsoft.com/scriptcenter/Convert-WindowsImageps1-0fe23a8f    New-NanoServerVHD.ps1 https://gallery.technet.microsoft.com/scriptcenter/Create-a-New-Nano-Server-61f674f1/view/Reviews 2. 创建一个文件夹,我这里用的是F:\NanoServer。将上面两个脚本复制到这个文件夹。 3. 下载Windows Server 2016 Technical Preview ISO (https://www.microsoft.com/en-us/evalcenter/evaluate-windows-server-technical-preview) 到本地某个文件夹,我这里用的是D:\ISO 4. 以管理员权限打开一个PowerShell窗口,进入上面的创建的文件夹(F:\NanoServer)。 5. 运行命令.\New-NanoServerVHD.ps1 -serveriso D:\ISO\10074.0.150424-1350.fbl_impressive_SERVER_OEMRET_X64FRE_EN-US.ISO-destvhd f:\nanoserver\Nano-msg8-3.vhd -computername nano-msg8-3 -AdministratorPassword ‘pass@word1’ -Packages ‘Storage’,’OEM-Drivers’,’Guest’同脚本说明中的范例不同,我这里没有指定IP地址,因为在我这里是通过DHCP分配IP地址的。   步骤二:向VHD中添加额外的安装包(这里仅用于说明如何添加,你可以根据自己需要在上面创建VHD的时候就添加,也可以通过下面的步骤添加)…