Configuración de un Clúster con 2008 Core + Configuración de Storage ISCSI Dell Md3000i Parte 1/?

 

Hola a todos, este es el primer post de una amplia serie dedicada a configurar un Failover clúster con Windows server 2008 Core

Partamos por lo que tenemos como Fierro
3 dell R710 con 6 tarjetas de red GB
1 Storage Dell md3000i Iscsi
15 Discos duros SAS de 600GB 
2 Switch GB

Arquitectura de lo que queremos obtener

image

Por supuesto que queremos sacar todas las ventajas de esto MPIO CSV etc … asi que tengan un poco de paciencia que veremos todos esos temas

Lo primero que debemos hacer es instalar un Windows Server 2008 R2 Enterprise o Datacenter edition

Con el comando hostname veremos el nombre actual del equipo y lo renombraremos al que estimemos conveniente

C:>hostname
EQUIPOTEST
C:>netdom renamecomputer EQUIPOTEST /NewName:HVH1

Una vez dentro del sistema instale los siguientes roles
“respetando mayúsculas y minusculas”

Start /w ocsetup NetFx2-ServerCore

Start /w ocsetup MicrosoftWindowsPowerShell

Start /w ocsetup WindowsServerBackup

Start /w ocsetup WindowsServerBackupCommandlet

Start /w ocsetup Microsoft-Hyper-V -> elija si al reiniciar

Start /w ocsetup FailoverCluster-Core

Start /w ocsetup MultipathIo

Descargue la herramienta grafica de configuración de Windows Server Core R2

http://coreconfig.codeplex.com/releases/view/36678#DownloadId=95240

Grabe el Iso en un cd y después insértelo en cada uno de los nodos

Cree la carpeta coreconfig dentro de C:UsersAdministrador
cd C:UsersAdministrador
mkdir coreconfig
cd coreconfig

Copie todo el contenido del CD “E:” a C:UsersAdministradorcoreconfig

Copy E:*.* .

Una vez dentro de la carpeta ejecute el archivo Start_Coreconfig.wsf

image

En el próximo post configuraremos la red para los servicios  y para el Storage ISCSI

Nos vemos

Tremendo anuncio de MSFT sobre Virtualización

Simplemente les comentare las grandes áreas

  • Hyper-v Dynamic Memory se agregara en WS2008 R2 Sp1  AL FIN
  • XP mode no necesitara virtualizacion asistida por HW intel VT o amd-v –> Genial para las empresas que no tienen $$$$ para CPUs con estas tecnologias
  • Una mejor experiencia de usuario en VDI WS2008 R2 Sp1 RemoteFX

Noticia Original
http://www.microsoft.com/Presspass/press/2010/mar10/03-18DesktopVirtPR.mspx

La maquina virtual no se puede iniciar porque el Hypervisor no esta en Ejecución

Hola a todos. Después de estar jugando un poco con mi Windows Server 2008 con Hyper-v para hacerlo bootear desde un VHD me ocurrió el siguiente error al tratar de iniciar una máquina

La maquina virtual no se puede iniciar porque el Hypervisor no esta en Ejecución

image

Tenemos 3 opciones

1.- El hardware no es el adecuado.
R.- 100% Seguro que es el adecuado, ya que lo tenía funcionando hace menos de 1 hora

2.-Habilitación de Intel-vt y DEP faltantes en la BIOS o HARD reset
R.- 100% Seguro que es el adecuado, ya que lo tenía funcionando hace menos de 1 hora

3.-Modificación del almacén de datos de arranque
R.- ESTO SI QUE LO MODIFIQUE 

Ojo que la herramienta de Startup Rapair igualmente modifica el almacén de datos de arranque

image

Entonces miremos que es lo que tenemos en el cargador de arranque de Windows

C:>bcdedit /v

Cargador de arranque de Windows
—————————–
Identificador           {ffe86a89-97eb-11de-88e4-8d9d20f53a42}
device                    vhd=[D:]2008x64BaseR2.vhd,locate=custom:12000002
path                       Windowssystem32winload.exe
description              VHD hyper-v Server
locale                     es-ES
inherit                    {6efb52bf-1766-41db-a6b3-0ee5eff72bd7}
recoverysequence   {ffe86a82-97eb-11de-88e4-8d9d20f53a42}
recoveryenabled      Yes
osdevice                 vhd=[D:]2008x64BaseR2.vhd,locate=custom:22000002
systemroot              Windows
resumeobject          {ffe86a80-97eb-11de-88e4-8d9d20f53a42}
nx                           OptIn
hypervisorlaunchtype    Off
detecthal               Yes

 

Esta clarisimo cual es el error, el valor del campos hypervisorlaunchtype    esta en Off, el cual debe ser cambiado a Auto

Ejecutamos el comando ….. y listo

C:>bcdedit /set {ffe86a89-97eb-11de-88e4-8d9d20f53a42} hypervisorlaunchtype  Auto
La operación se completó correctamente.

Reiniciamos y todo OK.

Salu2

Delegación de Permisos AZMAN en Hyper-v cuando los host están manejados por System Center Virtual Machine Manager

Hola a todos

Después de postear la Parte 1, 2 y 3 sobre la correcta delegación de permisos, ahora nos enfrentamos al desafío de hacer exactamente lo mismo, el problema es que ahora nuestros host son manejados por System Center Virtual Machine Manager  y el sistema de delegación  de permisos ya no lo maneja el Hyper-v con el archivo InitialStore.XML, sino que ahora los maneja el archivo HyperVAuthSore.XML.

El problema es que el SCVMM reescribe los Alcances de las maquinas virtuales por defecto cada “15” minutos aproximadamente, con lo cual nuestras maquinas virtuales que les creamos Scopes personalizados con el script SetScope.vbs ya no nos sirven para nada.

Recreemos la problemática

Tengo un dominio llamado PRUEBA el cual tiene un usuario común y corriente llamada PRUEBApcamposs , al cual le quiero delegar el control solo de la maquina W7 y no de todo el listado de las maquinas virtuales que les muestro a continuación

image

Entonces abro el azman.msc y cargo el archivo XML llamado  C:ProgramDataMicrosoftVirtual machine ManagerHyperVAuthSore.XML

Y me creo un Scope llamado Test al cual dejo como administrador a PRUEBApcamposs

image

Ahora trato de conectarme desde mi maquina remota que tiene Windows 7 con RSAT como el usuario PRUEBApcamposs

image

Pero me dice que no se encontraron maquinas virtuales, eso sucede porque no tengo asociadas maquinas virtuales al Scope Test

Ahora uso el Script SetScope.vbs para asociar una maquina virtual llamada W7 al Scope Test

SetScope.vbs W7 Test

Ahora Quiero ver que Scope tiene con el Script GetScope.vbs

GetScope.vbs W7

image

Perfecto ahora mi maquina W7 pertenece al Scope de Seguridad Test

Ahora Actualizo mi maquina cliente con Windows 7 como el usuario PRUEBApcamposs y PEFECTO !!!!!! solo veo la maquina W7

image

Entonces al Parecer todo esta bien…. pero después de un rato….
”No se encontraron maquinas Virtuales en este Servidor”…. Entonces que paso ….

image

Uso nuevamente el comando GetScope.vbs y SORPRESA

GetScope.vbs W7

image

Ahora la maquina Virtual W7 pertenece a su Scope por defecto, el cual no tiene ningún tipo de delegación de permisos.

¿ Cual es la solución ?

Microsoft para este problema no tiene una solución documentada, la solución que presento a continuación no es oficial, pero la he probado y funciona de maravillas.

Manos a la obra

Lo primero que tenemos que hacer es examinar el registro HKLMSoftwareMicrosoftWindows NTCurrentVersionVirtualization

Y cambiar los valores que modifico el SCVMM por los anteriores, con esto el sistema de delegación de permisos lo manejara nuevamente el Hyper-v con el archivo InitialStore.XML

image

Entonces cambiamos primero el valor

StoreLocation y le asignamos el valor que esta en VmmPreviousStoreLocation
msxml://C:ProgramDataMicrosoftWindowsHyper-VInitialStore.xml

ServiceApplication y le asignamos el valor que esta en VmmPreviousApplication
Hyper-V services

Reiniciamos y listo 🙂

Saludos a todos

Apagar Maquinas Virtuales para Compactar sus VHDs

Hola a todos

Una de las cosas entretenidas de la Virtualizacion es el manejo de los espacios disponibles, en este aspecto están los discos duros de expansión dinámica… “OJO ESTO NO ESTA RECOMENDADO EN PRODUCCION” … Estos discos tienen la capacidad de crecer dinámicamente, pero no de decrecer.

Ej: Si usted tiene un Disco Dinámico de 128 GB y realmente tiene usado de ese disco 10GB .. en el disco del Host Hyper-v Solo ocupa 10GB.

El problema principal radica cuando borramos 4GB de nuestro duro dinámico. La maquina virtual creara que tiene ahora ocupado solo 6GB (10GB-4GB) pero en el host de Hyper-v el disco sigue ocupando 10GB….

Para solucionar este problema se pueden compactar los discos con las herramientas de Hyper-v, pero hay que obviamente  apagar la maquina virtual.

Para automatizar este proceso podemos hacer un lindo script con powershell, el cual :

1)Apagara la VMs “debe tener los ICs instalados”
2)después compactara el disco
3)Después prendera la maquina

Le debemos decir la el nombre de la Vm y la ruta del VHD

$MasterVM="2003AS"
$VHDName = "D:dataServer2008discos2003AD-Difl.vhd"

———————————————————————————————————-

$MasterVM="2003AS"
$Vm = Get-WmiObject -Namespace rootvirtualization  -Query "Select * From Msvm_ComputerSystem Where ElementName=’$MasterVM’"
$ShutdownIC = Get-WmiObject -Namespace rootvirtualization  -Query "Associators of {$Vm} Where AssocClass=Msvm_SystemDevice ResultClass=Msvm_ShutdownComponent"
$ShutdownIC.InitiateShutdown("TRUE", "Need to shutdown")

while ($job.JobState -eq 3 -or $job.JobState -eq 4) 
{
    write-host "Apagando. "$job.PercentComplete "% complete" 
    start-sleep 1 
    $job=[WMI]$Result.job
}

$VHDName = "D:dataServer2008discos2003AD-Difl.vhd"

$ImageManagementService = gwmi Msvm_ImageManagementService -namespace "rootvirtualization"
$result = $ImageManagementService.CompactVirtualHardDisk($VHDName)
$job=[WMI]$Result.job
while ($job.JobState -eq 3 -or $job.JobState -eq 4) 
{
    write-host "Compacting. "$job.PercentComplete "% complete" 
    start-sleep 1 
    $job=[WMI]$Result.job
}
$SourceVm.RequestStateChange(2)

———————————————————————————————————-

Si alguien lo quiere mejorar, sacando un listado de todas las Vms X Host y la ruta de sus discos ….. Bienvenida sea … cuando llegue de mis vacaciones lo mejorare

 

salu2

Seguridad en Hyper-V : Administrador de autorización para su correcta delegación “Parte 3” Y FINAL !!!!!!!!

Hola a todos

En esta parte 3 y final veremos como delegar el control granular de ciertas maquinas a nuestro usuario tipo “CAPACITApablocampos” 

1.. LA PROBLEMATICA

El problema es que si le delegamos el control a “CAPACITApablocampos” de nuestro host de Hyper-v, el podrá ver todas las VMS de ese host, cosa que yo como admin no quiero, entonces que podemos hacer.

Para delegar el control de forma mas granular crearemos un nuevo ámbito llamado “Ambito de Prueba” en el cual asignaremos a “CAPACITApablocampos” como administrador en este ámbito

 Captura5

Después de esto debemos asignar las maquinas virtuales a este ámbito, para esto usaremos unos scripts que están disponibles en este sitio al final abajo BackupVMsAndScopeScripts.zip 

En una consola con permisos de administrador ejecutamos el script SetScope.vbs, en el cual como primer parámetro debemos pasar el nombre de la maquina virtual y como segundo parámetro debemos pasar el nombre del ámbito

cscript SetScope.vbs “Core” “Ambito de Prueba”
cscript SetScope.vbs “2008 AD” “Ambito de Prueba”

Captura6

El resultado de este comando debería ser un XML donde al final abajo debería salir un “cero” 0 , el cual indica que el proceso fue exitoso

De igual manera pueden utilizar el Script GetScope.vbs para ver a que ambito pertenece cada maquina

Captura9

En mi caso asigne al “Ambito de Prueba” mis maquinas llamadas “Core” y “2008 AD”

Tratamos de conectarnos al servicio de hyper-v yyyyyy no vemos nada 🙁

Captura2

El problema es que el usuario debe tener los permisos de lectura del Servicio de Hyper-v a nivel de Raíz, para lo cual crearemos en la raíz una nueva definición de rol llamada “Servicios” a la cual le asignaremos las siguientes operaciones

100 – Read Service Configuration
105 – Reconfigure Service

Captura3

Y asignaremos a nuestro usuario “CAPACITApablocampos” a este rol

Captura4

OJO RECUEREN QUE ESTO LO DEBEN HACER FUERA DEL AMBITO EN LA RAIZ

Despues de eso asignamos como administrador del ambito “Ambito de Prueba” al usuario “CAPACITApablocampos” y tratamos nuevamente de conectarnos a la consola del hyper-v yyyyy????

Captura7

Ahora “CAPACITApablocampos” solo puede ver las maquinas “Core” y “2008 AD”

Nos conectamos como administradores y vemos la consola FULL

Captura1

Les dejo un pantallazo de la consola del administrador y la de  “CAPACITApablocampos” juntas

Captura8 

Saludos

Seguridad en Hyper-V : Administrador de autorización para su correcta delegación “Parte 2”

Después de al anterior post ahora nos queda solamente probar si todo anda bien.

Desde un Cliente con Windows 7 Unido a un dominio, Instalamos las Herramientas de Administración Remota de Servidores RSAT para Windows 7.

Después simplemente abrimos el “Administrador de Hyper-v” con la cuenta de usuario que le delegamos el control el el post anterior ej : CAPACITApablocampos

Usaremos la opción de ejecutar como otro usuario…. ojo que si no ves ese menú, mantén presionado la tecla SHIFT y le das con el botón derecho del mouse al “Administrador de Hyper-v” y aparecerá

image image

Ahora en el administrador del hyper-v, en el menú derecho seleccionamos “Conectar al Servidor” y escribimos el nombre de nuestro Servidor…”Servidor1” y presionamos aceptar

image

Pero lamentablemente al conectarnos nos envía un muy feo error

“No dispone de los permisos necesarios para completar esta Tarea. Póngase en contacto con el administrador de la directiva de autorización del equipo”

image

Pero si el la parte 1 de este post me enseñaron a configurar bien la delegación con azman?????

El problema es que los usuarios “comunes y corrientes” para administrar remotamente un host de hyper-v, debes tener algunos privilegios y pertenecer a un grupo especifico

Primero agregamos a nuestro usuario CAPACITApablocampos al grupo local  de
“Usuarios COM Distribuidos”

image

Ahora debemos concederle permisos especiales de conexión dentro del Control WMI. Le damos clic derecho con el mouse en “Control WMI” y seleccionamos Propiedades

image

Una vez dentro del Control WMI seleccionamos la pestaña “seguridad”, Expandimos Root y seleccionamos CIMV2 y presionamos el botón Seguridad

image

Después Pinchamos “Opciones avanzadas” y veremos la siguiente pantalla sonde presionaremos el botón Agregar y buscaremos al usuario CAPACITApablocampos.

image

Una vez seleccionado el usuario procederemos a seleccionar la opción aplicar a “Este espacio de nombre y espacio de subnombre”, además debemos dejar seleccionadas las opciones
Habilita Cuenta y Llamada remota habilitada
No olvidar habilitar la casilla “Aplicar estos permisos solo ………”

 image

Después aplicar aceptar aceptar aceptar 🙂

Después debemos realizar los mismos pasos anteriores solo que ahora en el Contenedor de “Virtualization”

 image

Ahora Probamos si nos podemos conectar con la MMC de hyper-v …..

image

 

Conectado satisfactoriamente….

Ahora si trato de cambiar el estado de una amquina virtual … por ejemplo Guardar Estadio “Save State”

image

Con lo cual queda demostrado la correcta delegación de permisos

Saludos

Seguridad en Hyper-V : Administrador de autorización para su correcta delegación “Parte 1”

Hola a todos, después de montar exitosamente varios server con Hyper-v, ahora toca la no menor tarea de la administración y delegación del control del host de Maquinas Virtuales, tarea la que no es sencilla de hacer  y requiere de conocer bien ciertos términos.

AzMan es una función de control de acceso basado en roles (RBAC) la cual proporciona una herramienta administrativa para gestionar la política de autorización que permite a las aplicaciones realizar comprobaciones de acceso en contra de esa misma política.

La herramienta de administración AzMan (azman.msc) se suministra como una Microsoft Management Console (MMC), la cual carga un archivo XML que contiene la configuración de delegación de  control de nuestro hyper-v.

El archivo XML tiene como nombre InitialStore.XML la ubicación en un host con hyper-v es

C:ProgramDataMicrosoftWindowsHyper-VInitialStore.XML

Recuerde que si usted tiene instalado System Center Virtual Machine Manager la ubicación por defecto cambia

C:ProgramDataMicrosoftVirtual machine ManagerHyperVAuthSore.XML

Si quiere estar seguro donde esta el archivo XML siga esta ruta del registro

HKLMSoftwareMicrosoftWindows NTCurrentVersionVirtualization

image

Ahora vemos el valor de StoreLocation

image

 

 

Después de encontrar nuestro XML de configuración procedemos a abrir la aplicación azman.msc y cargar nuestro archivo XML  InitialStore o HyperVAuthSore

image image

Como podemos ver en la siguiente imagen Existe contenedores de Definiciones de rol, definiciones de Tareas y Asignación de Roles.
Mas abajo se ven contenedores con IDs que realmente se llaman Ámbitos, los cuales los explicaremos mas adelante

image

Basado en Roles, la directiva de autorización de acceso se especifica basándose en los roles de usuario, los cuales reflejan los requisitos de autorización de una aplicación especifica.
Los usuarios se asocian a los roles basados en sus funciones de trabajo y a estos roles se les otorgan los permisos necesarios para realizar tareas relacionadas.
Los administradores usan el complemento AzMan para administrar las funciones que deben tener acceso a las tareas.
A medida que el negocio evoluciona, las funciones deben ser modificadas, el administrador realiza cambios en la política de autorización, la aplicación empresarial subyacente no necesita ser cambiado.

Comencemos explicando de lo mas general a lo mas especifico

Alcance “Scope”: Un alcance le permite definir que objetos son propiedades de que rol. Si tienes un sistema donde quieres conceder derechos administrativos a solo un par de maquinas virtuales de un host hyper-v a un usuario especifico, debería crear un alcance para esas maquinas virtuales y aplicar los cambios de configuración  solo a ese ámbito

Roles : Un rol define un trabajo o responsabilidad que se lleva a cabo por un usuario. Por ejemplo, “Administrador_de_Redes”. Este rol debería tener todas las operaciones relacionadas con la administración de redes virtuales. Entonces este rol se le asignará a ciertos usuarios según corresponda.

Tareas: Las tareas un un conjunto de operaciones

Operaciones: Esta es la parte mas básica de la administración de autorización, y representa alguna acción que puede ser realizada por un usuario. Ejemplo:
“Start Virtual Machine”

Comenzaremos viendo las Tareas

En el menú izquierdo del azman veremos varios contenedores, entre los cuales de encuentra definiciones, tanto de rol como de Tarea.

Daremos click derecho con el mouse sobre definición de tarea y seleccionaremos “Definición de Nueva Tarea”

image
Ahora creamos una nueva tarea llamada “Tarea de solo Conexión”, le ponemos una descripción y presionamos el botón agregar

image

En esta pantalla seleccionamos la pestaña operaciones donde saldrá el listado completo de operaciones delegables sobre el Hyper-v. Nosotros elegiremos sólo las operaciones necesarias para poderse conectar y ver las maquinas virtuales

Allow Input to Virtual Machine
Allow Output from Virtual Machine
Read Service Configuration

Ahora simplemente aceptar

image image

Les dejo el listado con sus respectivos ids de todas las operaciones 🙂

100 – Read Service Configuration
105 – Reconfigure Service
200 – Create Virtual Switch
205 – Delete Virtual Switch
210 – Create Virtual Switch Port
215 – Delete Virtual Switch Port
220 – Connect Virtual Switch Port
225 – Disconnect Virtual Switch Port
230 – Create Internal Ethernet Port
235 – Delete Internal Ethernet Port
240 – Bind External Ethernet Port
245 – Unbind External Ethernet Port
250 – Change VLAN Configuration on Port
255 – Modify Switch Settings
260 – Modify Switch Port Settings
265 – View Switches
270 – View Switch Ports
275 – View External Ethernet Ports
280 – View Internal Ethernet Ports
285 – View VLAN Settings
290 – View LAN Endpoints
295 – View Virtual Switch Management Service
300 – Create Virtual Machine
305 – Delete Virtual Machine
310 – Change Virtual Machine Authorization Scope
315 – Start Virtual Machine
320 – Stop Virtual Machine
325 – Pause and Restart Virtual Machine
330 – Reconfigure Virtual Machine
335 – View Virtual Machine Configuration
340 – Allow Input to Virtual Machine
345 – Allow Output from Virtual Machine
350 – Modify Internal Ethernet Port
355 – Allow Virtual Machine Snapshot

Ahora veremos los Roles

Daremos clic derecho con el mouse sobre definición de rol y seleccionaremos “Nueva definición de rol”

image
Crearemos una definición de rol llamada  “Solo Conectar”, la cual habilitara a los usuarios para conectarse a la consola MMC del hyper-v y ver todas las VMS y poder entrar en ellas, OJO que estos usuarios no pueden cambiar la configuración de esas maquinas ni las pueden apagar, iniciar,guardar ,exportar etc

image

Presionamos Agregar y podemos seleccionar otro rol, tareas u operaciones

En nuestro caso le agregaremos la tarea anteriormente creada “Tarea de solo Conexión”

image

Asignando usuarios a nuestro Rol

Ahora ya tenemos listo nuestra definición de Rol y nuestra definición de tareas, lo único que nos falta es la asignación de Roles, para esto seleccionaremos con el botón derecho del mouse sobre “Asignación de roles” y seleccionaremos “Nueva Asignación de roles”

image

En esta sección obviamente seleccionaremos nuestro Rol Creado con anterioridad
“Solo Conectar”

image image

Ahora solo nos queda seleccionar nuestros usuarios y asignarlos al Rol “Solo Conectar”

Damos clic derecho del mouse sobre el rol “solo conectar” y seleccionamos “Asignar usuarios y grupos”  -> “de Windows y Active Directory” y seleccionamos al usuario indicado para realizar esta delegación

image

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

Los espero en la Parte 2 donde solucionaremos posibles problemas de conexión mediante la MMC de hyper-v

La parte 3 se tratara específicamente de como delegar el control de solo un subconjunto de maquinas virtuales

Y la parte 4 y final veremos que pasa si se nos corrompe o borra nuestro archivo XML  InitialStore.XML

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

PowerShell Remoting básico

Hola a todos después de la charla de PowerShell en Microsoft me comprometí con subir los ejemplos de powershell remoting. asiq comencemos

Primero que todo deben habilitar la función de remoting con el comando

Enable-PSRemoting

image

Después de esto ya estamos listos para comenzar a invocar comandos de manera remota.

Recuerden que si están en un entorno con dominio de Active Directory y su cuenta tiene derechos sobre el computador de destino, todo funcionara OK, de lo contrario nos enviara un mensaje de acceso denegado, para solucionar ese problema usaremos el cmdlet
get-credential y lo pasaremos como parámetro.
Imaginemos que mi dominio se llama capacita.local

$credencial=Get-Credential CAPACITAAdministrador

image

Ahora si queremos invocar un cmdlet remoto solo debemos ejecutar el comando

Invoke-Command -ComputerName SERVIDOR01 -Credential $credencial
-ScriptBlock {Get-Process}

El cmdlet Invoke-Command abre una sesión el el servidor01 con las credenciales almacenadas en la variable $credencial , luego ejecuta todo lo que este dentro de las llaves del parámetro –ScriptBlock, que en este caso es el cmdlet Get-Process y lo muestra por pantalla.

El problema es que con el cmdlet Invoke-Command se abre y cierra una sesión, esta no es persistente y no guarda el estado de posibles variable, para esto debemos crear una nueva sesión y usarla como parámetro

$sesion1=New-PSSession -ComputerName SERVIDOR01 -Credential $credencial

Ahora tenemos en la variable $sesion1 una sesión abierta hacia el computador SERVIDOR1

Invoke-Command -Session $sesion1 -ScriptBlock {Get-EventLog -logname system -Newest 5}

Lo anterior trae los 5 últimos logs de sistema del SERVIDOR1

La mejor manera de comprobar que realmente esta sesión es persistente es hacer una variable local y incrementarla en cierto valor ejecutándola remotamente

EJ:

Variable local: $paso

$paso= {$total += 5;$total}

Invoke-Command -Session $sesion1 -ScriptBlock $paso

El primer valor seria 5, después 10, después 15 y así sucesivamente , con esto podemos probar que el estado de las variables se conserva 🙂

Imaginemos que nuestro servidor remoto esta corriendo un proceso llamado notepad 🙂 y nosotros de nuestra estación de trabajo lo queremos detener

Invoke-Command -Session $sesion1 -ScriptBlock {Stop-Process -name  notepad}

Ahora si queremos trabajar directamente en el servidor remota en una consola de PS, solo debemos entrar a esta con el comando

Enter-PSSession -ComputerName SERVIDOR01 -Credential $credencial

Con esto entramos a una sesión interactiva remota de powershell

Saludos