你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn 。
创建一个库来存储和共享资源
本文内容
Azure Compute Gallery 以前称为“共享映像库”,它简化了在整个组织中共享资源(如映像和应用程序包)的工作。
使用 Azure Compute Gallery 可以在一个租户内与组织中的其他用户(在同一区域或跨区域)共享自定义 VM 映像和应用程序包。 选择要共享哪些内容,要在哪些区域中提供它们,以及希望与谁共享它们。 可以创建多个库,以便可以按逻辑方式对资源进行分组。
库是一种顶级资源,可通过多种方式共享:
共享对象:
人员
组
Service Principal
特定订阅(或)租户中的所有用户
与 Azure 中的所有用户公开共享
RBAC 共享
是
是
是
否
否
RBAC + 直接共享库
是
是
是
是
否
RBAC + 社区库
是
是
是
No
是
命名
库名称允许的字符包括大写 (A-Z) 和小写 (a-z) 字母、数字 (0-9)、点(或句点).
及下划线 _
。 库名称不能包含短划线 -
。 库名称在你的订阅中必须唯一。
创建专用库
登录 Azure 门户 。
在搜索框中键入“Azure Compute Gallery”,并在结果中选择“Azure Compute Gallery”。
在“Azure Compute Gallery”页中,选择“添加”。
在“创建 Azure Compute Gallery”页上,选择正确的订阅。
在“资源组”中,从下拉列表中选择资源组,或选择“新建”并键入新资源组的名称。
在“名称”中,键入一个名称作为库的名称。
从下拉列表中选择一个区域 。
可以键入库的简短说明,例如“我的映像库,用于测试”,然后单击“查看 + 创建”。
通过验证后,选择“创建”。
部署完成后,选择“转到资源”。
使用 az sig create 创建库。 以下示例在“美国东部”创建名为 myGalleryRG 的资源组,以及名为 myGallery 的库 。
az group create --name myGalleryRG --location eastus
az sig create --resource-group myGalleryRG --gallery-name myGallery
使用 New-AzGallery 创建库。 以下示例在“myGalleryRG”资源组中创建名为“myGallery”的库 。
$resourceGroup = New-AzResourceGroup `
-Name 'myGalleryRG' `
-Location 'West Central US'
$gallery = New-AzGallery `
-GalleryName 'myGallery' `
-ResourceGroupName $resourceGroup.ResourceGroupName `
-Location $resourceGroup.Location `
-Description 'Azure Compute Gallery for my organization'
使用 REST API 创建资源组。
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}?api-version=2021-04-01
{
"location": "eastus"
}
使用 REST API 创建库。
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}?api-version=2019-12-01
{
"properties": {
"description": "Azure Compute Gallery for my organization"
},
"location": "eastus",
}
创建直接共享库
重要
Azure Compute Gallery - 直接共享库目前处于预览阶段,并受 Azure Compute Gallery 预览条款 的约束。
在预览期间,需要新建一个库,并将属性 sharingProfile.permissions
设置为 Groups
。 使用 CLI 创建库时,请使用 --permissions groups
参数。 不能使用现有库,当前无法更新该属性。
目前无法从另一租户共享给你的映像创建灵活的虚拟机规模集。
若要开始与订阅或租户共享直接共享库,请参阅与订阅或租户共享库 。
登录 Azure 门户 。
在搜索框中键入“Azure Compute Gallery”,并在结果中选择“Azure Compute Gallery”。
在“Azure Compute Gallery”页中,选择“添加”。
在“创建 Azure Compute Gallery”页上,选择正确的订阅。
填写此页上的所有详细信息。
在页面底部,选择“下一步:共享方法”。
在“共享”选项卡上,选择“RBAC + 直接共享”。
完成操作后,选择“查看 + 创建”。
通过验证后,选择“创建”。
部署完成后,选择“转到资源”。
要开始与订阅或租户共享库,请参阅与订阅或租户共享库 。
要使用直接共享库创建可共享给订阅或租户的库,需要创建库并将 --permissions
参数设置为 groups
。
az sig create \
--gallery-name myGallery \
--permissions groups \
--resource-group myResourceGroup
要开始与订阅或租户共享库,请参阅与订阅或租户共享库 。
使用 Azure REST API 为订阅或租户级共享创建库。
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{rgName}/providers/Microsoft.Compute/galleries/{gallery-name}?api-version=2020-09-30
{
"properties": {
"sharingProfile": {
"permissions": "Groups"
}
},
"location": "{location}
}
要开始与订阅或租户共享库,请参阅与订阅或租户共享库 。
重置共享以清除 sharingProfile
中的所有内容。
POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{rgName}/providers/Microsoft.Compute/galleries/{galleryName}/share?api-version=2020-09-30
{
"operationType" : "Reset",
}
社区库 与所有人公开共享。 若要创建社区库,请先创建库,然后启用该库进行共享。 库的公共实例的名称是你提供的前缀加上唯一的 GUID。 请确保在同一区域中创建库、映像定义和映像版本,以便公开共享库。
创建要与社区共享的映像时,需要提供联系人信息。 此信息会公开显示,因此在提供此信息时要小心:
社区库前缀
发布者支持电子邮件
发布者 URL
法律协议 URL
映像定义中的信息也将公开提供,例如为发布者、套餐和 SKU 提供的信息。
先决条件
只有订阅的所有者或在订阅或库级别分配有 Compute Gallery Sharing Admin
角色的用户或服务主体才能将库公开给社区。 若要将角色分配给用户、组、服务主体或托管标识,请参阅分配 Azure 角色的步骤 。
--public-name-prefix
值用于为库的公共版本创建名称。 --public-name-prefix
是公共名称的第一部分,最后一部分是由平台创建的 GUID,对于库来说是独一无二的。
location=westus
galleryName=contosoGallery
resourceGroup=myCGRG
publisherUri=https://www.contoso.com
publisherEmail=support@contoso.com
eulaLink=https://www.contoso.com/eula
prefix=ContosoImages
az group create --name $resourceGroup --location $location
az sig create \
--gallery-name $galleryName \
--permissions community \
--resource-group $resourceGroup \
--publisher-uri $publisherUri \
--publisher-email $publisherEmail \
--eula $eulaLink \
--public-name-prefix $prefix
此命令的输出将提供社区库的公共名称(在 sharingProfile
节中的 publicNames
下)。
要开始与所有 Azure 用户共享库,请参阅使用社区库共享映像 。
若要创建库,请提交 PUT 请求:
PUT https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName?api-version=2021-10-01
在请求正文中,将 permissions
指定为 Community
并指定库的信息:
{
"location": "West US",
"properties": {
"description": "This is the gallery description.",
"sharingProfile": {
"permissions": "Community",
"communityGalleryInfo": {
"publisherUri": "http://www.uri.com",
"publisherContact": "contact@domain.com",
"eula": "http://www.uri.com/terms",
"publicNamePrefix": "Prefix"
}
}
}
}
要开始与所有 Azure 用户共享库,请参阅使用社区库共享映像 。
向所有 Azure 用户提供社区库是一个包含两个步骤的过程。 首先,需要创建启用了社区共享的库,当准备好将其公开时,共享库。
登录 Azure 门户 。
在搜索框中键入“Azure Compute Gallery”,并在结果中选择“Azure Compute Gallery”。
在“Azure Compute Gallery”页中,单击“添加”。
在“创建 Azure Compute Gallery”页上,选择正确的订阅。
在“资源组”中选择“新建”,键入 myGalleryRG 作为名称。
在“名称”中,键入 myGallery 作为库名称。
对“区域”保留默认值。
可以键入库的简短说明,如“用于测试的库”。
在页面底部,选择“下一步:共享方法”。
在“共享”选项卡上,选择“RBAC + 共享到公共社区库”。
对于“社区库前缀”,键入将追加到 GUID 的前缀,以便为社区库创建唯一名称。
对于“发布者电子邮件”,请键入一个有效的电子邮件地址,该地址可用于与你就有关库的事宜进行沟通。
对于“发布者 URL”,键入用户可获取有关社区库中映像的详细信息的 URL。
对于“法律协议 URL”,键入最终用户可以找到映像的法律条款的 URL。
完成操作后,选择“查看 + 创建”。
通过验证后,选择“创建”。
部署完成后,选择“转到资源”。
若要查看库的公共名称,请选择左侧菜单中的“共享”。
要开始与所有 Azure 用户共享库,请参阅使用社区库共享映像 。
后续步骤