Как использовать учетную запись хранения BLOB-объектов Azure только с функциями Azure - Попытка создать снимок BLOB-объекта - PullRequest
0 голосов
/ 07 мая 2018

Я пытаюсь настроить функцию, чтобы делать снимок контейнера BLOB-объектов каждый раз, когда в него вносится изменение.Для этого в функциях Azure есть несколько довольно простых функций, но они работают только для учетных записей хранения общего назначения.Я пытаюсь сделать это с помощью учетной записи хранения только блоб.Я очень новичок в Azure, поэтому, возможно, я все неправильно подхожу к этому, но мне не удалось найти много полезной информации.Есть ли способ сделать это?

Ответы [ 2 ]

0 голосов
/ 09 мая 2018

Как уже упоминалось @ joy-wang, для времени выполнения функций Azure требуется учетная запись общего назначения .

Учетная запись общего назначения требуется для настройки AzureWebJobsStorage и AzureWebJobsDashboard ( local.settings.json или Appsettings Клинок на портале Azure):

{
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "my general purpose storage account connection string",
    "AzureWebJobsDashboard": "my general purpose storage account connection string",
    "MyOtherStorageAccountConnectionstring": "my blob only storage connection string"
  }
}

Если вы хотите создать функцию BlobTrigger , вы можете указать другую строку подключения и создавать моментальный снимок при каждом создании / обновлении большого двоичного объекта:

[FunctionName("Function1")]
public static async Task Run([BlobTrigger("test-container/{name}",
        Connection = "MyOtherStorageAccountConnectionstring")]CloudBlockBlob myBlob,
        string name, TraceWriter log)
{
    log.Info($"C# Blob trigger function Processed blob\n Name:{name}");
    await myBlob.CreateSnapshotAsync();
}
0 голосов
/ 08 мая 2018

В Visual Studio:

Я пытался создать снимок для хранилища только для блобов по имени joyblobstorage, но это не удалось. Я предполагал, что вы должны увидеть ту же ошибку на скриншоте.

enter image description here

Как говорится в информации об ошибке Microsoft.Azure.WebJobs.Host: Storage account 'joyblobstorage' is of unsupported type 'Blob-Only/ZRS'. Supported types are 'General Purpose'.

На портале:

Я пытаюсь создать Функциональное приложение и использовать существующее хранилище , но ему не удалось найти мою учетную запись только для BLOB-объектов . Настройка функции Azure на портале не должна позволять нам выбирать учетную запись хранения только для блобов. Пожалуйста, обратитесь к скриншоту.

enter image description here

Заключение

невозможно создать снимок для хранилища только для BLOB-объектов . В официальной документации вы можете увидеть Требования к учетной записи хранения .

При создании приложения-функции в службе приложений вы должны создать или связать с универсальной учетной записью хранилища Azure, которая поддерживает хранилище BLOB-объектов, очередей и таблиц.

Кроме того, в справочнике настроек приложения вы можете увидеть

AzureWebJobsStorage

Среда выполнения функций Azure использует эту строку подключения к учетной записи хранения для всех функций, кроме функций, запускаемых по протоколу HTTP. Учетная запись хранения должна быть универсальной , которая поддерживает BLOB-объекты, очереди и таблицы.

AzureWebJobsDashboard

Необязательная строка подключения учетной записи хранения для хранения журналов и их отображения на вкладке Монитор на портале. Учетная запись хранения должна быть универсальной , поддерживающей BLOB-объекты, очереди и таблицы.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...