配置使用Powershell管理Azure Stack

简介:

前面的博文中和大家聊了如何部署微软的最新混合云技术Microsoft Azure Stack,那么既然已经部署了Azure Stack,我们可以考虑创建一个存储帐户(blob或table),启动我们的第一个虚拟机,与租户/计划,或者向现有的Azure Stack市场发布更多的内容。但在进行下一步之前,我们需要我们的MSA环境准备好接受PowerShell连接。我们需要额外的模块和工具来运行针对Azure Stack本地订阅的现有AzureRM命令。
通过使用Windows Management Framework 5.0,我们可以有一种更好的方式与其他社区成员以预定义的格式共享PowerShell工作,这样任何人都可以在组织中轻松使用这些工具。使用名为“PowerShellGet”的新软件包管理器,您可以搜索公共或专用存储库来查找所需的PowerShell模块。默认情况下,有一个名为PSGallery的存储库,我们可以使用如下命令来产看:
Get-PSRepository
若需注册PSGallery存储库可运行如下命令:
Set-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
配置使用Powershell管理Azure Stack
安装所需版本的Powershell模块:
Azure stack通过安装API版本配置文件兼容AzureRM模块,AzureRM.Bootstrapper模块提供使用API版本配置文件所需的PowerShell命令。使用以下命令安装AzureRM.Bootstrapper模块:
Install-Module -Name AzureRm.BootStrapper
为计算、存储、网络、密钥库等安装2017-03-09配置文件版本的AzureRM模块:
Use-AzureRmProfile -Profile 2017-03-09-profile
安装Azure Stack特定的Powershell模块,如AzureStackAdmin和AzureStackStorage:
Install-Module -Name AzureStack -RequiredVersion 1.2.10
配置使用Powershell管理Azure Stack
查看所需的版本的Powershell模块是否安装成功:
Get-Module -ListAvailable | where-Object {$_.Name -like “Azure*”}
配置使用Powershell管理Azure Stack
从GitHUB下载并解压Azure Stack Tools:
配置使用Powershell管理Azure Stack

invoke-webrequest https://github.com/Azure/AzureStack-Tools/archive/master.zip -OutFile master.zip
expand-archive master.zip -DestinationPath . -Force
cd AzureStack-Tools-master
配置使用Powershell管理Azure Stack
配置Powershell环境
导入Connect Powershell模块:
配置使用Powershell管理Azure Stack
注册AzureRM环境(管理环境用户环境二选一):
管理环境:
Add-AzureRMEnvironment -Name "AzureStackAdmin" -ArmEndpoint "https://adminmanagement.local.azurestack.external"
配置使用Powershell管理Azure Stack
用户环境:
Add-AzureRMEnvironment -Name "AzureStackUser" -ArmEndpoint "https://management.local.azurestack.external"
配置使用Powershell管理Azure Stack
使用以下PS命令设置GraphEndpointResourceId值:
管理环境:
Set-AzureRmEnvironment -Name "AzureStackAdmin" -GraphAudience "https://graph.windows.net/"
配置使用Powershell管理Azure Stack
用户环境:
Set-AzureRmEnvironment -Name "AzureStackUser" -GraphAudience "https://graph.windows.net/"
配置使用Powershell管理Azure Stack

获取用于部署Azure Stack的活动目录租户的GUID值(使用AAD部署)
$TenantID = Get-AzsDirectoryTenantId -AADTenantName "wuyvzhanghotmail.onmicrosoft.com" -EnvironmentName "AzureStackAdmin"
配置使用Powershell管理Azure Stack
登陆到Azure Stack
管理员:
Login-AzureRmAccount -EnvironmentName "AzureStackAdmin" -TenantId $TenantID
配置使用Powershell管理Azure Stack
配置使用Powershell管理Azure Stack
用户:
Login-AzureRmAccount -EnvironmentName "AzureStackUser" -TenantId $TenantID
配置使用Powershell管理Azure Stack
配置使用Powershell管理Azure Stack
注册资源提供程序:
登录到管理员或用户门户后, 可以针对在该订阅中注册的资源提供程序发出操作。默认情况下, 所有基础资源提供程序都在默认的提供程序订阅 (管理员订阅) 中注册。在对新创建的用户订阅进行操作时, 如果这些订阅没有通过门户部署任何资源, 则应使用以下命令注册此订阅的资源提供程序
foreach($s in (Get-AzureRmSubscription)) {
Select-AzureRmSubscription -SubscriptionId $s.SubscriptionId | Out-Null
Write-Progress $($s.SubscriptionId + " : " + $s.SubscriptionName)
Get-AzureRmResourceProvider -ListAvailable | Register-AzureRmResourceProvider -Force
}
配置使用Powershell管理Azure Stack
在Azure上注册Azure Stack:
允许如下PS命令使用Azure注册Azure Stack:
C:\AzureStack-Tools-master\Registration\RegisterWithAzure.ps1 -azureDirectory wuyvzhanghotmail.onmicrosoft.com -azureSubscriptionId e5a2e705-e06f-454e-bbce-41d3bbeb1b9f -azureAccountId mas@wuyvzhanghotmail.onmicrosoft.com
配置使用Powershell管理Azure Stack
注册完成以后登陆Azure Stack管理端可以看到Azure Stack已经可以调用Azure中的部分资源:
配置使用Powershell管理Azure Stack

本文转自wuyvzhang 51CTO博客,原文链接:http://blog.51cto.com/wuyvzhang/2068084,如需转载请自行联系原作者


相关文章
|
4月前
【Azure 应用服务】Azure Powershell Function 出错 The term 'Connect-AzAccount' is not recognized
【Azure 应用服务】Azure Powershell Function 出错 The term 'Connect-AzAccount' is not recognized
|
1月前
【Azure App Service】PowerShell脚本批量添加IP地址到Web App允许访问IP列表中
Web App取消公网访问后,只允许特定IP能访问Web App。需要写一下段PowerShell脚本,批量添加IP到Web App的允许访问IP列表里!
|
2月前
|
数据安全/隐私保护
【Azure Entra ID】使用PowerShell脚本导出Entra ID中指定应用下的所有用户信息
在Azure Entra ID中,需要导出一个Application 下的用户信息, 包含User的创建时间。
|
4月前
【Azure Durable Function】PowerShell Activity 函数遇见 Newtonsoft.Json.JsonReaderException: The reader's MaxDepth of 64 has been exceeded.
【Azure Durable Function】PowerShell Activity 函数遇见 Newtonsoft.Json.JsonReaderException: The reader's MaxDepth of 64 has been exceeded.
|
4月前
【Azure Web Job】Azure Web Job执行Powershell脚本报错 The term 'Select-AzContext' is not recognized as the name
【Azure Web Job】Azure Web Job执行Powershell脚本报错 The term 'Select-AzContext' is not recognized as the name
|
4月前
|
JSON 数据格式
【Azure 应用服务】Azure Function App 执行PowerShell指令[Get-Azsubscription -TenantId cxt]错误
【Azure 应用服务】Azure Function App 执行PowerShell指令[Get-Azsubscription -TenantId cxt]错误
【Azure 应用服务】Azure Function App 执行PowerShell指令[Get-Azsubscription -TenantId  cxt]错误
|
4月前
|
存储 C# Python
【Azure Storage Account】Azure 存储服务计算Blob的数量和大小的PowerShell代码
【Azure Storage Account】Azure 存储服务计算Blob的数量和大小的PowerShell代码
|
4月前
|
Ubuntu Linux 测试技术
【Azure Function App】Python Function调用Powershell脚本在Azure上执行失败的案例
【Azure Function App】Python Function调用Powershell脚本在Azure上执行失败的案例
|
4月前
|
数据安全/隐私保护 异构计算 Windows
【Azure 环境】 介绍两种常规的方法来监视Window系统的CPU高时的进程信息: Performance Monitor 和 Powershell Get-Counter
【Azure 环境】 介绍两种常规的方法来监视Window系统的CPU高时的进程信息: Performance Monitor 和 Powershell Get-Counter
|
4月前
|
存储 Shell 容器
【Azure 存储服务】使用PowerShell脚本创建存储账号(Storage Account)的共享访问签名(SASToken) : New-AzStorageContainerSASToken
【Azure 存储服务】使用PowerShell脚本创建存储账号(Storage Account)的共享访问签名(SASToken) : New-AzStorageContainerSASToken