Azure Marketplace: можно ли использовать образы в предложении по управляемому приложению?

Я создал управляемое приложение Azure. Я использовал управляемые образы в mainTemplate.json для создания новых виртуальных машин, например:

{
    "type": "Microsoft.Compute/images",
    "apiVersion": "2018-04-01",
    "name": "front-image",
    "location": "[parameters('location')]",
    "properties": {
        "storageProfile": {
            "osDisk": {
                "osType": "linux",
                "osState": "Generalized",
                "blobUri": "[concat('https://sdfasdfasdf.blob.core.windows.net/images/myserver.vhd')]",
                "caching": "ReadWrite",
                "storageAccountType": "Standard_LRS"
            }
        }
    }
}, {
    "apiVersion": "2016-04-30-preview",
    "type": "Microsoft.Compute/virtualMachines",
    "name": "myserver",
    "location": "[parameters('location')]",
    "dependsOn": ["myserver-nic", "myserver-images"],
    "properties": {
        "storageProfile": {
            "imageReference": {
                "id": "[resourceId('Microsoft.Compute/images', 'myserver-image')]"
            }
        },
        ...
    }
}

Это хорошо работает в каталоге услуг. Но когда я пытаюсь развернуть приложение из Azure Marketplace, у меня возникает следующая ошибка:

Исходный большой двоичный объект https://sdfasdfasdf.blob.core.windows.net/images/myserver.vhd не принадлежит учетной записи хранения в подписке ******.

В FAQ в Azure я нашел следующее :

Вопрос: Могу ли я использовать файл VHD в учетной записи хранения Azure для создания управляемого диска с другой подпиской?

Ответ: Да.

Что я делаю не так?


person FiftiN    schedule 23.01.2019    source источник
comment
Я нашел аналогичный вопрос на лазурном форуме, но без ответа: social.msdn.microsoft.com/Forums/azure/en-US/   -  person FiftiN    schedule 23.01.2019
comment
на самом деле не уверен в этом FAQ. они оба в одном регионе?   -  person 4c74356b41    schedule 24.01.2019
comment
Да, оба в центре   -  person FiftiN    schedule 24.01.2019
comment
странно, ну в любом случае, я знаю только об этом способе сделать это (они те, которые я описал в ответе)   -  person 4c74356b41    schedule 24.01.2019


Ответы (3)


Это запрещено на торговой площадке (не пройдёт сертификацию). Любые образы виртуальных машин, используемые в предложении торговой площадки (управляемом приложении или шаблоне решения), должны быть опубликованы в Azure Marketplace как предложение виртуальных машин. Его можно скрыть (чтобы пользователи не развертывали образ напрямую), но он все равно должен быть на торговой площадке.

person bmoore-msft    schedule 25.01.2019
comment
Спасибо. Как (если возможно) я могу использовать образы из предложения виртуальных машин в моем управляемом приложении, опубликованном в Marketplace? - person FiftiN; 25.01.2019
comment
Другой вопрос, как я могу скрыть предложение ВМ от Marketplace? - person FiftiN; 25.01.2019
comment
У вас есть 2 варианта: один - использовать частное предложение, что означает, что вы должны добавить подписки в белый список, чтобы иметь к нему доступ; другой - просто пометить образ виртуальной машины как скрытый при публикации. Скрытые изображения по-прежнему доступны программно, но не в любом UX. - person bmoore-msft; 29.01.2019
comment
Спасибо за ответ. Я создал предложение ВМ и добавил к нему свои ВМ. Отмечает их как скрытые. Меня устраивает. - person FiftiN; 03.03.2019
comment
Похоже, это не работает для нас - теперь скрытие изображения приводит к сбою приложения Azure. - person Dave Clarke; 20.09.2019
comment
если вы хотите отправить мне электронное письмо с вашим предложением, я могу взглянуть ... - person bmoore-msft; 21.09.2019

это может работать только с некоторыми причудами. в основном вам нужно сделать что-то вроде это. Поэтому используйте какой-то сторонний механизм для создания изображения в подписке клиента. вы не можете использовать изображения в подписках (по крайней мере, на момент написания).

person 4c74356b41    schedule 23.01.2019
comment
Спасибо! Это работает, но я не могу понять как. Я нашел образ TransferVM-osdisk.vhd в учетной записи хранения. Откуда он взялся? - person FiftiN; 23.01.2019
comment
в этой первой виртуальной машине есть сценарий, который это делает, вы можете изучить это решение, которое я связал, чтобы лучше понять - person 4c74356b41; 23.01.2019
comment
Это работает для каталога услуг, но не для торговой площадки. Теперь у меня следующая ошибка: клиент --- с идентификатором объекта - не имеет авторизации для выполнения действия Microsoft.Storage/storageAccounts/listKeys/action 'over scope' / subscriptions / --- / resourcegroups / mystorageaccountrg / sizes / Microsoft.Storage/storageAccounts/mystorageaccount '. - person FiftiN; 24.01.2019
comment
да, вот только разрешений недостаточно. если вы хотите сохранить этот vhd в своем большом двоичном объекте в своей учетной записи хранения - это должен быть общедоступный большой двоичный объект. - person 4c74356b41; 24.01.2019
comment
Этот шаблон не требует общего доступа к BLOB-объекту. ARM извлекает ключ доступа из хранилища исходной учетной записи и предоставляет его сценарию ps1, который использует его для доступа. Проблема с доступом к хранилищу аккаунта из ARM. В настройках приложения Marketplace я указал идентификатор группы с правами владельца в качестве принципала. - person FiftiN; 24.01.2019
comment
эта учетная запись хранения должна быть в вашем арендаторе подписки. нет способа, который работает. - person 4c74356b41; 24.01.2019
comment
Спасибо. Как результат - blob (изображение) должен иметь открытый доступ, чтобы приложение Marketplace могло скопировать его в хранилище другой подписки. Это прискорбно. - person FiftiN; 24.01.2019
comment
ну, поскольку это публичное предложение (торговая площадка), это не имеет никакого значения (вроде как). - person 4c74356b41; 24.01.2019
comment
Offtop: не можете понять, какое управляемое приложение можно продавать на Azure Marketplace, если не можете разместить в нем собственный образ? :) - person FiftiN; 24.01.2019
comment
Что ж, есть много способов взглянуть на это, я лично презираю нестандартные изображения (слишком много хлопот - нет никакой выгоды). мой подход: использовать базовые изображения и настраивать их. - person 4c74356b41; 24.01.2019

Кажется, что-то не так с уровнем доступа к контейнеру больших двоичных объектов. Отметьте, пожалуйста, он должен быть публичным, а не приватным. Так что не стоит хранить в своем образе никаких секретов.

person Denis Subbotin    schedule 23.01.2019
comment
Это не помогло. Похоже, что vhd должен находиться только в той же подписке. - person FiftiN; 24.01.2019