### đ PrĂ©-requis
- **Installer Azure CLI** : [Documentation officielle](https://docs.microsoft.com/fr-fr/cli/azure/install-azure-cli)
#### Se connecter Ă Azure
```powershell
az login
```
#### Changer dâabonnement
```powershell
az account set --subscription "Nom_de_l'abonnement"
```
#### Afficher lâabonnement courant
```powershell
az account show
```
---
### đ„ Gestion des Groupes de Ressources
#### Lister les groupes de ressources
```powershell
az group list --output table
```
#### Créer un groupe de ressources
```powershell
az group create --name MyResourceGroup --location eastus
```
#### Supprimer un groupe de ressources
```powershell
az group delete --name MyResourceGroup --yes
```
#### Afficher les dĂ©tails dâun groupe de ressources
```powershell
az group show --name MyResourceGroup
```
---
### đ» Gestion des Machines Virtuelles (VM)
#### Créer une VM
```powershell
az vm create --resource-group MyResourceGroup --name MyVM --image UbuntuLTS --admin-username azureuser --generate-ssh-keys
```
#### Démarrer une VM
```powershell
az vm start --resource-group MyResourceGroup --name MyVM
```
#### ArrĂȘter une VM
```powershell
az vm stop --resource-group MyResourceGroup --name MyVM
```
#### Redémarrer une VM
```powershell
az vm restart --resource-group MyResourceGroup --name MyVM
```
#### Supprimer une VM
```powershell
az vm delete --resource-group MyResourceGroup --name MyVM --yes
```
#### Lister toutes les VM dans un groupe de ressources
```powershell
az vm list --resource-group MyResourceGroup --output table
```
#### Afficher les informations dĂ©taillĂ©es dâune VM
```powershell
az vm show --resource-group MyResourceGroup --name MyVM --show-details
```
#### Obtenir l'adresse IP publique dâune VM
```powershell
az vm list-ip-addresses --resource-group MyResourceGroup --name MyVM --output table
```
---
### đŸ Gestion des Disques
#### Lister les disques dâun groupe de ressources
```powershell
az disk list --resource-group MyResourceGroup --output table
```
#### Créer un disque managé
```powershell
az disk create --resource-group MyResourceGroup --name MyDisk --size-gb 128
```
#### Supprimer un disque
```powershell
az disk delete --resource-group MyResourceGroup --name MyDisk --yes
```
---
### đïž Gestion des Comptes de Stockage
#### Lister les comptes de stockage
```powershell
az storage account list --output table
```
#### Créer un compte de stockage
```powershell
az storage account create --name mystorageaccount --resource-group MyResourceGroup --location eastus --sku Standard_LRS
```
#### Obtenir les clĂ©s dâaccĂšs dâun compte de stockage
```powershell
az storage account keys list --resource-group MyResourceGroup --account-name mystorageaccount --output table
```
#### Supprimer un compte de stockage
```powershell
az storage account delete --name mystorageaccount --resource-group MyResourceGroup --yes
```
---
### đ Gestion des RĂ©seaux
#### Créer un Virtual Network (VNet)
```powershell
az network vnet create --name MyVNet --resource-group MyResourceGroup --subnet-name MySubnet
```
#### Ajouter un sous-réseau
```powershell
az network vnet subnet create --resource-group MyResourceGroup --vnet-name MyVNet --name MyNewSubnet --address-prefix 10.0.1.0/24
```
#### Créer une adresse IP publique
```powershell
az network public-ip create --resource-group MyResourceGroup --name MyPublicIP
```
#### Créer un Network Security Group (NSG)
```powershell
az network nsg create --resource-group MyResourceGroup --name MyNSG
```
#### Ajouter une rĂšgle au NSG
```powershell
az network nsg rule create --resource-group MyResourceGroup --nsg-name MyNSG --name AllowSSH --protocol Tcp --direction Inbound --priority 1000 --source-address-prefix '*' --source-port-range '*' --destination-address-prefix '*' --destination-port-range 22 --access Allow
```
---
### đïž Gestion des Bases de DonnĂ©es (SQL)
#### Créer un serveur SQL
```powershell
az sql server create --name myserver --resource-group MyResourceGroup --location eastus --admin-user myadmin --admin-password SecurePassword123!
```
#### Créer une base de données SQL
```powershell
az sql db create --resource-group MyResourceGroup --server myserver --name mydatabase --service-objective S0
```
#### Lister les bases de donnĂ©es SQL dâun serveur
```powershell
az sql db list --resource-group MyResourceGroup --server myserver --output table
```
#### Supprimer une base de données SQL
```powershell
az sql db delete --resource-group MyResourceGroup --server myserver --name mydatabase --yes
```
---
### đ€Œ Gestion des Utilisateurs Azure AD
#### Lister tous les utilisateurs
```powershell
az ad user list --output table
```
#### Créer un nouvel utilisateur
```powershell
az ad user create --display-name "John Doe" --user-principal-name
[email protected] --password "SecurePassword123!"
```
#### Supprimer un utilisateur
```powershell
az ad user delete --id
[email protected]
```
---
### â ïž Gestion des RĂšgles dâAlertes
#### CrĂ©er une rĂšgle dâalerte sur une VM (CPU > 80%)
```powershell
az monitor metrics alert create --name "HighCPUAlert" --resource-group MyResourceGroup --scopes "/subscriptions/<subscription-id>/resourceGroups/MyResourceGroup/providers/Microsoft.Compute/virtualMachines/MyVM" --condition "avg Percentage CPU > 80" --description "Alerte lorsque le CPU dépasse 80%" --action-group "MyActionGroup"
```
#### Lister les alertes
```powershell
az monitor alert list --output table
```
---
### đŸ Gestion des Sauvegardes
#### Créer un Recovery Vault
```powershell
az backup vault create --resource-group MyResourceGroup --name MyRecoveryVault --location eastus
```
#### Configurer la protection dâune VM
```powershell
az backup protection enable-for-vm --resource-group MyResourceGroup --vault-name MyRecoveryVault --vm MyVM --policy-name DefaultPolicy
```
#### Démarrer une sauvegarde manuelle
```powershell
az backup protection backup-now --resource-group MyResourceGroup --vault-name MyRecoveryVault --container-name MyContainer --item-name MyVM --retain-until 30-12-2024
```