1
votes

Terraform et Azure: impossible de provisionner le compte de stockage

J'essaie de provisionner un compte de stockage, mais son exécution entraîne une erreur:

# Configure the Azure Provider
provider "azurerm" {
  version = "=2.0.0"
  features {}
}

resource "azurerm_resource_group" "example" {
  name     = "example-resources"
  location = "Australia East"
}

resource "azurerm_storage_account" "example" {
  name                     = "sa12345461234512name"
  resource_group_name      = azurerm_resource_group.example.name
  location                 = azurerm_resource_group.example.location
  account_tier             = "Standard"
  account_replication_type = "LRS"

  tags = {
    environment = "staging"
  }
}

Exécution du système d'exploitation Windows 10 Professionnel.

Étapes de réplication (dans Powershell avec Azure CLI installée)

  1. connexion az
  2. mkdir dummyFolder
  3. cd dummyFolder
  4. créer config.tf
  5. terraform init
  6. plan de terraform
  7. terraform appliquer -auto-approuver

Contenu du fichier Config.tf

Error: Error reading static website for AzureRM Storage Account "sa12345461234512name":
accounts.Client#GetServiceProperties: 
Failure responding to request: StatusCode=403 -- Original Error: autorest/azure: 
Service returned an error. Status=403 Code="AuthorizationPermissionMismatch" 
Message="This request is not authorized to perform this operation using this permission.\n
RequestId:05930d46-301e-00ac-6d72-f021f0000000\n
Time:2020-03-02T09:09:44.9417598Z"

Je ne sais pas ce qui me manque, toutes les autres ressources fonctionnent bien, juste le compte de stockage.

p>


2 commentaires

cela ressemble à un manque d'autorisations? quelles sont vos autorisations sur l'abonnement?


Je n'ai appliqué aucune autorisation à l'abonnement, donc quels que soient les paramètres par défaut, c'est ce que j'utilise. Il avise que je suis administrateur sur l'abonnement


4 Réponses :


0
votes

J'ai trouvé le problème. Cela a à voir avec Terraform. Je viens de vérifier les mises à jour et les avis 0.12.21 est sorti (je courais 0.12.20).

On dirait que si vous exécutez AzureARM 2.0.0, vous devez vraiment être au minimum 0.12.21 pour que cela fonctionne.


2 commentaires

Cela n'a pas fonctionné pour moi, alors que la réponse proposée par Doug a fonctionné. Pouvez-vous confirmer si la mise à jour de la version patch de terraform a vraiment résolu ce problème?


@aquaraga yup quand j'ai eu le problème, celui qui a fonctionné était une simple bosse. La version que j'ai laissée selon la question (utilisez toujours cette version pour farcir)



1
votes

Il s'agit d'un bogue dans le fournisseur azure, voir: https: //github.com/terraform-providers/terraform-provider-azurerm/issues/5869

Mettez à jour votre fournisseur; il ne semble pas être lié à la version de terraform.

De:

provider "azurerm" {
  version = "~> 2.1.0" 
  features {}
}

À:

# Configure the Azure Provider
provider "azurerm" {
  # whilst the `version` attribute is optional, we recommend pinning to a given version of the Provider
  version = "=2.0.0"
  features {}
}


0 commentaires

1
votes

Juste pour ajouter à cela, car aucun des éléments ci-dessus n'a fonctionné. Dans mon cas, cela n'a pas fonctionné d'abord, puis le lendemain a fonctionné juste pour ne plus travailler le soir ... Ne pas changer de version ou quoi que ce soit, c'était le même ordinateur.

Il s'est avéré que mes paramètres d'heure sur mon Ubuntu fonctionnant sous Windows étaient faussés. Le simple fait d'exécuter un sudo ntpdate time.nist.gov pour mettre à jour l'heure a résolu le problème.


0 commentaires

0
votes

Même problème que @tesharp rencontré. Sur mon Ubuntu WSL2, la commande suivante a résolu le problème:

sudo hwclock -s


0 commentaires