问题标签 [azure-resource-manager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
powershell - Azure ARM 模板部署中的 DSC ConfigurationData 参数
我正在使用 Azure REST API 部署资源组并提供 ARM 模板。在虚拟机资源中,我有一个类型为DSC
. 代码片段如下:
正在调用的 DSC 配置如下所示:
当我在本地运行 DSC 脚本时,要成功为此 DSC 脚本生成 MOF 文件,我需要为 ConfigurationData 传递一个哈希表,如下所示:
我现在的问题是,我想ConfigurationData
通过我首先展示的 ARM 模板传递这种类型。甚至可能吗?如果不是,那么我应该如何设置 VM 扩展执行的 DSC 脚本的 ConfigurationData?
谢谢!
azure - 使用 ARM 模板部署 Azure 数据工厂
我正在尝试使用 Azure 资源管理器模板部署 Azure 数据工厂服务。到目前为止,我能够创建数据工厂本身,但我无法使用这种方法向其中添加任何链接服务、管道或数据集。由于没有可用的数据工厂模板示例,我根据 REST API 文档创建了我的模板。以下是我试图实现的模板,但服务器返回了“错误请求”。
根据我可以从日志中获得的信息,执行了对 API 的请求,并且端点似乎是正确的。但是,请求有效负载似乎存在问题。
你们中有人有使用 ARM 模板部署数据工厂服务的经验吗?可以使用这种方法创建链接服务吗?有没有办法查看用于创建链接服务的请求?
非常感谢您的帮助!
哈维
python - azure python sdk 是否支持 azure 资源管理器 api?
我是 azure 新手,我看到一个名为 Azure Resource Manger 的新 api/abstraction 已发布,它将取代旧的 azure 服务管理:
我试图使用azure python sdk启动一个实例,但我看到 sdk 仍在使用旧概念(afinity groups、虚拟网络、托管服务)。没有提及资源组。这支持吗?如果没有,何时将其添加到 sdk?
azure - 通过 Azure Powershell for Resource Manager 进行无人参与的身份验证
我有大量 Azure Powershell 部署脚本,这些脚本在构建完成后由构建服务器触发,这些脚本运行良好 - 我使用 Import-AzurePublishSettingsFile(安全地存储在本地)在无人值守的情况下登录 Azure。
我现在需要扩展这些以包括对 Sql Azure 服务器、弹性池和数据库的管理。
但是,这些是Azure 资源管理器 cmdlet的一部分,它们具有不同的身份验证方法。
我找到了这些文章:
- 使用 Azure 资源管理器对服务主体进行身份验证
- 将 Azure PowerShell 与 Azure 资源管理器结合使用
- 使用 Windows Azure Active Directory 验证管理库)
但似乎都要求您在此过程的某个阶段输入您的凭据。上面的第二个链接明确指出:
AzureResourceManager 模块需要 Add-AzureAccount。发布设置文件是不够的。
我已经尝试(只是为了看看会发生什么)切换到资源管理器,Switch-AzureMode -Name AzureResourceManager
然后只执行其中一个 cmdlet,例如,Get-AzureResourceGroup -Name "blah"
但我只是得到一个错误
Get-AzureResourceGroup:AuthenticationFailed:身份验证失败。“授权”标头不存在或以无效格式提供。
我很高兴通过门户手动设置一次 AD 应用程序,然后为我的脚本提供相关的应用程序 ID 或所需的任何内容。我只需要它无人看管,以便我的构建可以部署!
谁能告诉我如何制作无人参与的脚本以通过 Powershell 使用这些 Azure 资源管理器 cmdlet?
azure - Azure Resource Manger - Microsoft.Storage/storageAccounts vs microsoft.classicstorage/storageAccounts
What is the difference between microsoft.classicstorage/storageAccounts
and Microsoft.Storage/storageAccounts
?
Running the following commands
> Switch-AzureMode -Name AzureResourceManager
> Get-AzureLocation
Results in:
Microsoft.Storage/storageAccounts
- East US
- East US 2
- West US
- West Europe
- East Asia
- Southeast Asia
- Japan East
- Japan West
- North Central US
- South Central US
- Central US
- North Europe
microsoft.classicstorage/storageAccounts
- East Asia
- Southeast Asia
- East US
- East US 2
- West US
- North Central US
- South Central US
- Central US
- North Europe
- West Europe
- Japan East
- Japan West
- Brazil South
- Australia East
- Australia Southeast
You can see that Microsoft.Storage/storageAccounts
are not avaliable in any of the Australian data centers.
Should I use microsoft.classicstorage/storageAccounts
in my azure resource manager template so I can target an australian region, or will this storage type ultimately be deprecated so I'm better of going with Microsoft.Storage/storageAccounts
in another location?
powershell - 使用 PowerShell Azure 资源管理器 cmdlet 将现有 vhd 添加到 Azure VM
注意:这是一个 Azure ARM 问题,而不是 Azure 服务管理问题。
我在存储帐户中有 2 个 vhd - machine-os.vhd 和 machine-data.vhd。我可以使用 PowerShell ARM cmdlet 创建具有现有操作系统 vhd 的 VM,但无法弄清楚如何附加现有数据 vhd。我发现的所有样本都创建了 EMPTY 数据磁盘 - 但我想将现有的 vhd 附加为数据磁盘。
我试过像这样使用createOption attach
开关Add-AzureVMDataDisk
:
$vm = New-AzureVMConfig ...
$vm = Add-AzureVMDataDisk -VM $vm -VhdUri $existingDiskUri -Name "machine-data.vhd" -Caching ReadOnly -CreateOption attach -DiskSizeInGB 200
但是,操作失败并显示:
Blob https://x.blob.core.windows.net/vhds/machine-data.vhd already exists. Please provide a different blob URI to create a new blank data disk 'machine-data.vhd.'
我必须指定DiskSizeInGB
命令Add-AzureVMDataDisk
才能工作(这看起来很奇怪)。我尝试为 指定SourceImageUri
一个不同的名称VhdUri
,根据文档,应该将 vhd 从 sourceImageUri 复制到 vhdUri 并附加它。尝试createOption fromImage
失败,因为“您无法使用源图像 uri 指定大小”。但是,cmdlet 的 size 参数是强制性的,所以我不知道如何指定 sourceUri 而不是 size。
这个 SO question提出了一个类似的问题(尽管我没有得到相同的错误),但是答案中的链接显示了一个带有 EMPTY 数据磁盘的模板,这没有帮助。
有趣的是,我尝试将磁盘从 Azure 门户添加到 VM - 您必须在此处指定名称和 URI,但操作总是失败并出现一些奇怪的 json 解析错误。我似乎无法正确获取数据磁盘的 uri。
azure - Azure 服务主体 - 帐户已禁用?
我在使用服务主体对 Azure 资源管理器进行身份验证时遇到问题。在故障排除过程中,我注意到Get-AzureADServicePrincipal
显示AccountEnabled: False
的是我的服务主体,而Get-MsolServicePrincipal
显示AccountEnabled: True
的是同一服务主体。
我试过做Set-MsolServicePrincipal -ObjectId 585cd6c7-403a-4940-9817-5139a254245e -AccountEnabled $true
,但这并没有改变任何东西。没有Set-AzureADServicePrincipal
cmdlet。
那么如何确保该帐户真正启用呢?
azure - 在 Azure 自动化中使用服务主体向 Azure 资源管理器进行身份验证
因此,现在有一个记录在案的解决方法可以在 Azure 自动化中使用 ARM,并且还详细记录了如何使用服务主体对 ARM 进行身份验证。但即使按照这些步骤进行操作,我仍然无法将这些组合起来工作。使用服务主体在自动化中运行我的运行手册总是会出现以下错误:
Add-AzureAccount
并且Select-AzureSubscription
两者都执行得很好,但是当我调用任何 cmdlet 来实际做某事时,我得到了上述错误。
当我使用常规 AAD org 帐户时,我的运行手册有效,因此我认为这不是自动化/ARM 问题。
使用服务主体在我的 PC 上运行我的工作流也可以,所以我认为我的服务主体设置正确。
有没有人成功实现过这个场景?
azure - 从模板自动缩放 ARM 模式下的 IaaS VM
我创建了一个基于模板的部署,它过度配置了许多 Linux VM。我想根据经典实例自动缩放它们,Azure 将根据 CPU 负载打开/关闭实例。
ARM模式可以吗?如果没有,是否有建议的替代方法?我能找到的唯一示例是使用 Application Insights 和 PaaS 功能。我有一个 Python 应用程序在 Ubuntu 主机上的 Docker 中运行。
azure - 资源管理器 - 具有多个警报的 JSON 失败
我使用下面的 JSON 来创建 AI 警报,效果很好。但是,当我尝试在此 JSON 文件中添加多个警报时,它会创建几个警报,有时是一个,有时是两个或三个,最后返回配置状态为Failed。它永远不会在 JSON 中创建所有警报(六)。