El Blog de Gualtrysoft

Windows 2000/2003/2008, Active Directory, VBScript, Hyper-V, PowerShell y todo aquello interesante a la hora de usar, configurar y administrar Windows Server. También tenemos longanizas…

Script Powershell para listar las conexiones de red de los host de virtualización gestionados por un servidor de System Center Virtual Machine Manager 2008

Posted by urpiano en Miércoles 21 \21\UTC octubre \21\UTC 2009

Este script nos permite obtener un listado de las conexiones de red de los hosts de virtualización que son gestionadas por un servidor de SCVMM, listado que se vuelca a un fichero de valores separados por tabuladores, ideal para ser abierto con Excel. El script es necesario que sea lanzado desde un servidor SCVMM o desde un equipo que tenga la consola de SCVMM instalada, para que así pueda cargar los Snap-ins de SCVMM.

La sintaxis de script es:

<ruta>\listar-conexiones-de-hosts -VMM <servidor scvmm> -Fichero <ruta y nombre de fichero>

Siendo:

  • ruta (requerido): Powershell exige que los scripts sean lanzados indicando la ruta donde están, no le vale que estén en una carpeta que esté referenciada en la variable de entorno PATH. En el caso de que se encuentre en la misma carpeta donde se encuentra localizado el propio Powershell se puede poner como ruta un punto (.).
  • VMM(requerido): Nombre del servidor SCVMM del que se obtendrá el listado.
  • Fichero (requerido): ruta y nombre del fichero en el que se volcará el listado

Ejemplos:

Se listarán las conexiones de red de los hosts de virtualización gestionados por el servidor de System Center Virtual Machine Manager bacterio-vmm y el resultado se volcará en el fichero \\bacterio-fs\vmms\bacterio-vmm.tab. El script está situado en la misma carpeta en la que se encuentra Powershell al momento de invocarlo:

.\listar-conexiones-de-hosts -VMM bacterio-vmm -Fichero \\bacterio-fs\vmms\bacterio-vmm.tab

Se listarán las conexiones de red de los hosts de virtualización gestionados por el servidor de System Center Virtual Machine Manager bacterio-vmm y el resultado se volcará en el fichero \\bacterio-fs\vmms\bacterio-vmm.tab. El script se encuentra ubicado en la carpeta c:\scripts-ps\vmm:

c:\scripts-ps\vmm\listar-conexiones-de-hosts -VMM bacterio-vmm -Fichero \\bacterio-fs\vmms\bacterio-vmm.tab

Este es el código del script

################################################################################
# listar-conexiones-de-hosts.ps1                                               #
#                                                                              #
# Este script lista las conexiones de red de todos los host de virtualización  #
# administrados por un servidor de SCVMM 2008.                                 #
# Recibe dos parametros:                                                       #
#                                                                              #
#          -VMM: Nombre o IP del servidor de SCVMM 2008 al que conectar        #
#          -Fichero: Ruta y nombre del fichero de valores separados por        #
#                     tabulador en el que se guardará el listado. Ideal para   #
#                     ser abierto por Excel                                    #
#                                                                              #
# Ejemplo:                                                                     #
#                                                                              #
# .\listar-conexiones-de-hosts.ps1 -VMM SVMMBacterio Fichero c:\Redes.txt      #
#                                                                              #
# © Fernando Reyes                                                             #
# Octubre de 2009                                                              #
#                                                                              #
################################################################################

#Declaramos los parámetros que recibe el script
param([string] $VMM, [string] $Fichero)

# Comprobamos si están cargados los Cmdlets de Virtual Machine Manager.
# En caso contrario los cargamos.
If(!(Get-PSSnapin | `
     Where-Object {$_.Name -eq "Microsoft.SystemCenter.VirtualMachineManager"`
                    }))
{
    Add-PSSnapin -name Microsoft.SystemCenter.VirtualMachineManager
}

# Conectamos al servidor de SCVMM
$SCVMM = Get-VMMServer $VMM

# Recorremos los hosts
ForEach($HostSrv In (Get-VMHost |Sort-Object -Property HostCluster,Name)) `
{ `
   # Obtenemos las conexiones de red del host
   $Conexiones = Get-VMHostNetworkAdapter -VMHost $HostSrv

   # Recorremos las conexiones
   ForEach($Conexion In $Conexiones) `
   { `

       # Agregamos a la salida los datos
       $Salida = $Salida + `
                 $HostSrv.HostCluster + "`t" + `
                 $HostSrv.Name + "`t" + `
                 $Conexion.ConnectionName + "`t" + `
                 $Conexion.Name + "`t" + `
                 $Conexion.ConnectionState + "`t" + `
                 $Conexion.MacAddress + "`t" + `
                 $Conexion.VLANEnabled + "`t" + `
                 $Conexion.VLANMode + "`r`n"
   } # $Conexion

} # $HostSrv

# Ponemos los encabezados de tabla
$Salida = "Cluster`tNodo`tConexion`tTarjeta`tEstado`tMAC`tVLAN`tModo`r`n" + `
          $Salida

# Volcamos los resultados al fichero de salida
$Salida > $Fichero

2 comentarios to “Script Powershell para listar las conexiones de red de los host de virtualización gestionados por un servidor de System Center Virtual Machine Manager 2008”

  1. fralrob said

    muy buen aprte, pero quisiera pedir una ayuda mas porfavor si pueden ayudarme con un script en powershell para que este se conecte en la red; es decir que pueda acceder a recursos compartidos de la red como tambien copiarlos dichos recursos compartidos.

    De antemano muchas gracias…..

    • urpiano said

      fralrob,

      No acabo de entender qué quieres exáctamente. Si es sencillamente copiar ficheros desde y hacia una carpeta compartida, es tan simpre como usar sus rutas UNC (\\servidor\carpeta). Desde PowerShell lo puedes hacer con los mismos comandos que lo harías con una ventana de comandos.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

 
A %d blogueros les gusta esto: