Azure ARM - 将 StorageAccount FileShare 挂载到 Linux VM

问题描述 投票:0回答:1

我准备了一个 ARM 模板,模板创建了列出的 azure 资源:linux VM 部署、存储部署、此存储帐户中的文件共享。

ARM 工作正常,但我想添加一件事,将文件共享安装到 Linux VM(使用文件共享刀片中的脚本,Microsoft 提出的脚本)。

我想使用自定义脚本扩展,然后使用“commandToExecute”选项粘贴内联linux脚本(此脚本用于文件共享安装)。

我的问题是:如何检索文件共享的密码,然后将其作为参数传递给内联脚本。是否可以?是否可以将文件共享安装脚本作为内联脚本粘贴到 ARM 模板中?也许还有其他方法可以完成我的任务吗?我知道我可以将脚本存储在存储帐户中,并在 ARM 模板中将“blob SAS URL”放入自定义扩展 ARM 区域,但如何检索文件共享的密码仍然是一个问题,下面是文件共享挂载的脚本.

    sudo mkdir /mnt/wsustorageaccount

    if [ ! -d "/etc/smbcredentials" ]; then
    sudo mkdir /etc/smbcredentials
    fi

    if [ ! -f "/etc/smbcredentials/StorageAccountName.cred" ]; then
        sudo bash -c 'echo "username=xxxxx" >> /etc/smbcredentials/StorageAccountName.cred'
        sudo bash -c 'echo "password=xxxxxxx" >> /etc/smbcredentials/StorageAccountName.cred'
    fi
    sudo chmod 600 /etc/smbcredentials/StorageAccountName.cred
    
    sudo bash -c 'echo "//StorageAccount.file.core.windows.net/test /mnt/StorageAccount cifs nofail,vers=3.0,credentials=/etc/smbcredentials/StorageAccountName.cred,dir_mode=0777,file_mode=0777,serverino" >> /etc/fstab'
    sudo mount -t cifs //StorageAccountName.file.core.windows.net/test /mnt/StorageAccountName -o vers=3.0,credentials=/etc/smbcredentials/StorageAccountName.cred,dir_mode=0777,file_mode=0777,serverino
azure-resource-manager azure-automation
1个回答
1
投票

您可以使用这个快速入门示例:

listKeys(variables('storageAccountId'), '2019-04-01').keys[0].value
© www.soinside.com 2019 - 2024. All rights reserved.