Tárfióknevek hibáinak elhárítása
Ez a cikk azt ismerteti, hogyan háríthatja el az Azure Storage-fióknevek bicep-fájllal vagy Azure Resource Manager-sablonnal (ARM-sablonnal) történő üzembe helyezés során előforduló hibáit. A hibák gyakori okai a tárfiók neve érvénytelen karakterekkel, vagy olyan tárfiók, amely ugyanazt a nevet használja, mint egy meglévő tárfiók. A tárfiókok nevének globálisan egyedinek kell lennie az Azure-ban.
Hibajelenség
Az érvénytelen tárfióknév hibakódot okoz az üzembe helyezés során. Az alábbiakban néhány példát láthat a tárfiókok neveivel kapcsolatos hibákra.
A fióknév érvénytelen
Ha a tárfiók neve tiltott karaktereket tartalmaz, például nagybetűt vagy speciális karaktert, például felkiáltójelet.
Code=AccountNameInvalid
Message=S!torageckrexph7isnoc is not a valid storage account name. Storage account name must be
between 3 and 24 characters in length and use numbers and lower-case letters only.
Érvénytelen erőforrás-hely
Ha új tárfiókot próbál üzembe helyezni ugyanazzal a névvel és ugyanabban az erőforráscsoportban, de egy másik helyet használ, mint egy meglévő tárfiókot az Azure-előfizetésében. A hiba azt jelzi, hogy a tárfiók már létezik, és nem hozható létre az új helyen. Válasszon másik nevet az új tárfiók létrehozásához.
Code=InvalidResourceLocation
Message=The resource 'storageckrexph7isnoc' already exists in location 'westus'
in resource group 'demostorage'. A resource with the same name cannot be created in location 'eastus'.
Please select a new resource name.
Tárfiók egy másik erőforráscsoportban
Ha olyan új tárfiókot próbál üzembe helyezni, amelynek neve és helye megegyezik egy meglévő tárfiókkal, de az előfizetés egy másik erőforráscsoportjában található.
Code=StorageAccountInAnotherResourceGroup
Message=The account storageckrexph7isnoc is already in another resource group in this subscription.
A tárfiók már meg van véve
Ha olyan új tárfiókot próbál üzembe helyezni, amelynek neve megegyezik az Azure-ban már létező tárfiók nevével. Előfordulhat, hogy a meglévő tárfiók neve szerepel az előfizetésben vagy a bérlőben, vagy bárhol az Azure-ban. A tárfiókok nevének globálisan egyedinek kell lennie az Azure-ban.
Code=StorageAccountAlreadyTaken
Message=The storage account named storageckrexph7isnoc is already taken.
Ok
A hibák gyakori okai az, hogy a tárfiók neve érvénytelen karaktereket használ, vagy ismétlődő név. A tárfiókok nevének meg kell felelnie a következő feltételeknek:
- 3 és 24 karakter közötti hossz, csak kisbetűkkel és számokkal.
- Globálisan egyedinek kell lennie az Azure-ban. A tárfiókok nevei nem duplikálhatók az Azure-ban.
Megoldás
Egyedi nevet úgy hozhat létre, ha összefűz egy előtagot vagy utótagot a uniqueString
függvény értékével.
Az alábbi példák egy olyan előtagot adnak meg, amelynek a sztringje storage
össze van fűzve a következő értékével uniqueString
: .
A Bicep sztring interpolációt és uniqueStringet használ.
resource storageAccount 'Microsoft.Storage/storageAccounts@2021-09-01' = {
name: 'storage${uniqueString(resourceGroup().id)}'
Győződjön meg arról, hogy a tárfiók neve nem haladja meg a 24 karaktert. A uniqueString
függvény 13 karaktert ad vissza. Ha össze szeretne fűzni egy előtagot vagy utótagot, adjon meg 11 karakternél rövidebb értéket.
Az alábbi példák egy nevű storageNamePrefix
paramétert használnak, amely legfeljebb 11 karakterből álló előtagot hoz létre.
@description('The prefix value for the storage account name.')
@maxLength(11)
param storageNamePrefix string = 'storage'
Ezután összefűzi a storageNamePrefix
paraméter értékét az uniqueString
értékkel, hogy létrehozhasson egy tárfióknevet.