, поэтому проблема заключается в том, что когда azcopy копирует файл из системы и передает его в учетную запись хранения, требуется вход в систему azcopy для аутентификации этого процесса, но эти шаги мы можем 'Не выполнять через автоматизацию.
с использованием следующего сценария azcopy и версии v10, пожалуйста, помогите мне с этой
AzCopy /Source:/var/log/syslog/Dest:https://testingwt.blob.core.windows.net/insights-operational-logs//SourceKey:y/bUACOu/wogikUT1EG0XeaPC4Y6spHcZly2d26QeENKwMiRpjFu5PwmXrThRbNGS3PiPfqEX8WsYC3dg== /S
обновленная ошибка azcopy с использованием linux машины в azure
Для автоматической загрузки файлов в большой двоичный объект хранилища с помощью сценария оболочки можно использовать маркер SAS хранилища или azcopy login с субъектом службы или управляемым удостоверением виртуальной машины.
azcopy login
Для токена SAS:
azcopy copy "/path/to/file" "https://account.blob.core.windows.net/mycontainer1/?sv=2018-03-28&ss=bjqt&srt=sco&sp=rwddgcup&se=2019-05-01T05:01:17Z&st=2019-04-30T21:01:17Z&spr=https&sig=MGCXiyEzbtttkr3ewJIh2AR8KrghSy1DGM9ovN734bQF4%3D" --recursive=true
Для субъекта-службы необходимо установить переменную среды AZCOPY_SPA_CLIENT_SECRET с секретом субъекта-службы в качестве значения и назначить роль Storage Blob Data Contributor или роль Storage Blob Data Owner большого двоичного объекта хранилища:
AZCOPY_SPA_CLIENT_SECRET
Storage Blob Data Contributor
Storage Blob Data Owner
azcopy login --service-principal --application-id <application-id> --tenant-id=<tenant-id> azcopy copy "/path/to/file" "https://account.blob.core.windows.net/mycontainer1/" --recursive=true
Для управляемого удостоверения виртуальной машины вам также необходимо назначить управляемому удостоверению ВМ роль Storage Blob Data Contributor или роль Storage Blob Data Owner большого двоичного объекта хранилища :
azcopy login --identity azcopy copy "/path/to/file" "https://account.blob.core.windows.net/mycontainer1/" --recursive=true
Но когда вы используете управляемую идентификацию виртуальной машины, вам необходимо выполнить сценарий оболочки на виртуальной машине Azure, это означает, что вам необходимо развернуть Terraform на виртуальной машине Azure. Итак, лучший способ - использовать субъект-службу, вы можете выполнить сценарий оболочки в другой Linux ОС, например, на вашем локальном Linux компьютере. Токен SAS также является хорошим способом без назначения роли. Для получения дополнительных сведений см. Использование Azcopy для Azure большого двоичного объекта хранилища .