Posts Tagged Scripts
Utiliser vSphere PowerCLI pour interagir sur une machine virtuelle
Publié par Aurélien dans Virtualisation le 26 février 2010
Voici la liste non exhaustive des opérations que vous pourrez réaliser en utilisant vSphere PowerCLI pour interagir sur une machine virtuelle :
[table id=22 /]
Démarrer une machine virtuelle
On utilise la commande Start-VM <nom_vm>
[vSphere PowerCLI] C:> start-vm SRV-TEST Name PowerState Num CPUs Memory (MB) ---- ---------- -------- ----------- SRV-TEST PoweredOn 1 512
Arrêter une machine virtuelle
On utilise la commande Shutdown-VMGuest <nom_vm>
[vSphere PowerCLI] C:> shutdown-vmguest SRV-TEST
State IPAddress OSFullName
----- --------- ----------
Running {192.168.99.200, ... Microsoft Windows Server 2003, Enterprise E...
Forcer l’extinction d’une machine virtuelle
On utilise la commande Stop-VM <nom_vm> qui nécessite une confirmation manuelle
[vSphere PowerCLI] C:> stop-vm SRV-TEST Confirmer Êtes-vous sûr de vouloir effectuer cette action ? Opération « Stop-VM » en cours sur la cible « VM 'SRV-TEST' ». O Oui T Oui pour tout N Non U Non pour tout S Suspendre ? Aide (la valeur par défaut est « O ») : O Name PowerState Num CPUs Memory (MB) ---- ---------- -------- ----------- SRV-TEST PoweredOff 1 512
Je vous invite à suivre cet article qui sera régulièrement mis à jour.
Utiliser vSphere PowerCLI pour interagir sur le vCenter
Publié par Aurélien dans Virtualisation le 17 février 2010
Voici une liste non exhaustive des opérations que vous pourrez réaliser en utilisant vSphere PowerCLI pour interagir sur le vCenter :
[table id=21 /]
Connexion au vCenter
Connect-VIServer -server <server> -user <user> -password <password> -port <port>
L’option -port n’est utile que si le serveur n’écoute pas sur le port par défaut (443)
Exemple de connexion réussie à un vCenter :
[vSphere PowerCLI] C:> Connect-VIServer -server vcenter.xitim.com -user vcenter -password vCenter@123 Name Port User ---- ---- ---- vcenter.xitim.com 443 vcenter
Récupérer la liste des hôtes ESX
[vSphere PowerCLI] C:> Get-VMHost Name State Id ---- ----- -- srv-esx1.xitim.com.... Connected HostSys... srv-esx2.xitim.com.... Connected HostSys... srv-esx3.xitim.com.... Connected HostSys...
Récupérer la liste des machines virtuelles
[vSphere PowerCLI] C:> Get-VM Name PowerState Num CPUs Memory (MB) ---- ---------- -------- ----------- srv-sql PoweredOn 1 1536 srv-lamp PoweredOn 1 512 srv-windows PoweredOn 1 512 srv-mail PoweredOn 1 768
Récupérer les vSwitchs des hôtes ESX
[vSphere PowerCLI] C:> Get-VMHost | Get-VirtualSwitch Name Num Ports Num Ports Mtu Key Available ---- --------- ---------- --- --- vSwitch0 32 17 9000 key-vim.host.VirtualSwitch-... vSwitch1 64 59 9000 key-vim.host.VirtualSwitch-...
Récupérer les adaptateurs réseau des machines virtuelles
[vSphere PowerCLI] C:> Get-VM | Get-NetworkAdapter MacAddress : 00:50:56:b0:6a:97 WakeOnLanEnabled : True NetworkName : externe0 Type : Flexible ConnectionState : VMware.VimAutomation.Client20.ConnectInfoImpl Id : VirtualMachine-208/4000 Name : Network adapter 1 MacAddress : 00:50:56:94:10:e1 WakeOnLanEnabled : True NetworkName : externe0 Type : Flexible ConnectionState : VMware.VimAutomation.Client20.ConnectInfoImpl Id : VirtualMachine-176/4000 Name : Network adapter 1
Je vous invite à régulièrement consulter cette page pour connaître les derniers ajouts de commandes !
Interagir sur Active Directory avec DSGET, DSQUERY et DSMOD
Requêter ou modifier automatiquement Active Directory à partir de lignes de commandes est très utile pour obtenir instantanément des informations globales sur les utilisateurs plutôt que de les rechercher ou les modifier graphiquement via une MMC, ce qui est purement et simplement un gouffre de temps. Rappelez-vous que le but de l’administrateur est toujours de se simplifier la vie dès que possible.
Prenons quelques exemples. Premièrement, pour savoir qui n’a pas de klogon utilisé dans un groupe donné d’une société donnée, on tape la commande suivante dans une invite de commande :
C:>dsget group "CN=GRPG-XitimCorp,OU=Groupes,DC=xitim,DC=com" -members -s srv-2003 |dsget user -samid -loscr -s srv-2003>c:export.txt
Remarquez que l’on renvoie le résultat de la commande dans un fichier texte export.txt qu’on écrit à la racine de C:. Cela évite un potentiel remplissage massif et illisible de votre output DOS et vous permettra au besoin de vous servir des données du fichier ainsi exporté pour ensuite les importer – pourquoi pas – dans un fichier CSV à tabulations…
Autre exemple, pour savoir les utilisateurs qui ont un répertoire de base et dont le compte est désactivé on tape :
C:>dsget group "CN=GRPG-XitimCorp,OU=Groupes,DC=xitim,DC=com" -members -s srv-2003 |dsget user -samid -hmdir -disabled -s srv-2003>c:export2.txt
Dernier exemple, pour récupérer tous les noms, prénoms et bureaux de chaque employé d’une société, on tape la commande suivante :
dsget group "CN=GRPG-XitimCorp,OU=Groupes,DC=xitim,DC=com" -members -s srv-2003 |dsget user -fn -ln -office -s srv-2003>c:export3.txt
Comment fonctionnent ces commandes ?
dsget group récupère la liste des membres du groupe choisi dans une arborescence d’OU de l’annuaire LDAP. Cette liste est redirigée à dsget user (via le pipe) qui récupère à son tour les informations en y ajoutant des arguments Active Directory.
Voici un panel non exhaustif d’arguments quasi indispensables dans l’exploitation quotidienne…
[table id=20 /]
Modifier Active Directory
Avec les exemples ci-dessous, on ajoute un utilisateur et/ou une machine à un groupe spécifié. Bien évidemment, on pourrait ajouter 1000 personnes ou ordinateurs d’un coup et utiliser des wildcards pour pousser l’automatisation un cran plus loin. Notez que pour modifier votre annuaire, ces commandes seront une base de travail fondamentale, afin de créer, notamment, des groupes dynamiques.
Exemple : ajout de l’utilisateur john doe au groupe zorro
C:>dsquery user "CN=john doe,OU=Test,DC=xitim,DC=com" | dsmod group "CN=zorro,OU=Test,DC=xitim,DC=com" -addmbr dsmod réussi:CN=zorro,OU=Test,DC=xitim,DC=com
Exemple : ajout de la machine VM-XPSP2 au groupe zorro
C:>dsquery computer "CN=VM-XPSP2,OU=Test,DC=xitim,DC=com" | dsmod group "CN=zorro,OU=Test,DC=xitim,DC=com" -addmbr dsmod réussi:CN=zorro,OU=Test,DC=xitim,DC=com
Pour en savoir plus, je vous invite à consulter les pages dédiées de DSGET et DSQUERY sur le site de Microsoft.