https://web.microsoftstream.com/video/ccd1f0c5-acc8-4f82-841e-3c4eaa37ec5a

Bienvenidos al tutorial práctico para la implementación de un Storage Pool utilizando PowerShell, les invito a profundizar en el uso de esta interfaz de consola mejorada basada en el framework .NET, permite la administración de toda la infraestructura en Microsoft. Está disponible para Windows y Linux y se ha integrado en los sistemas operativos de Microsoft desde Windows Server 2003 R2

PowerShell es un shell de línea de comandos, un lenguaje de scripting y un entorno para la automatización de tareas creado por Microsoft.

Esta interfaz de consola está diseñada para su uso por parte de Administradores de Sistemas, permitiendo automatizar procesos por lotes, tareas del sistema o realizarlas de forma más controlada. Cuenta con un conjunto de comandos (cmdlets) que el usuario puede ejecutar. Resulta muy útil para consultar y ejecutar comandos de una sola vez en todo un centro de datos de servidores

Antes de comenzar, recomendamos usar la última versión de PowerShell (5.0 o superior). Con cada nueva versión, Microsoft añade nuevas características y cmdlets. PowerShell es un lenguaje de scripting en constante evolución con nuevas funciones que se van añadiendo para permitir una mejor integración.

Windows PowerShell incluye las aplicaciones Core Shell y PowerShell ISE (Entorno de scripting integrado). Se pueden encontrar en el menú de Inicio simplemente escribiendo PowerShell. Recomendamos ejecutar siempre PowerShell como administrador.

1

Puedes comprobar la versión abriendo el Shell y escribiendo $PSversiontable (busca la propiedad PowerShell Version)

2

Fundamentos de PowerShell y Get-Help

Uno de los primeros conceptos que hay que aprender sobre PowerShell es el sistema de ayuda. PowerShell está diseñado para ser fácil de usar, y cada cmdlet incluye la documentación de ayuda sobre cómo utilizarlo.

El archivo de ayuda contiene la descripción del comando, la sintaxis a utilizar, y también ejemplos de uso.

  • En primer lugar, hay que actualizar el archivo de ayuda de Microsoft escribiendo update-help (este comando indica a PowerShell que descargue de Internet toda la ayuda actualizada). Debe hacerse siempre que se añadan nuevos roles y características al sistema operativo Windows Server, manteniendo actualizada la ayuda
3
  • Ahora escribe Get-Command y aparecerá una lista de todos los comandos disponibles. (Consejo sobre PowerShell, la gramática de los comandos es siempre singular: Log no Logs; Service no Services)
4
  • Casi todos los archivos de ayuda incluyen ejemplos que se pueden consultar con el comando get-help get-service -examples. Esta es la mejor forma de aprender a usar los primeros cmdlets.
5

Storage Spaces Direct

(Espacios de almacenamiento directo) usa servidores estándar del sector con unidades conectadas localmente para crear almacenamiento definido por software de alta disponibilidad y escalabilidad por un porcentaje mínimo del costo de las matrices SAN o NAS tradicionales. Su arquitectura simplifica el aprovisionamiento y la implementación de almacenamiento

Está incluido en Windows Server 2019 Datacenter, Windows Server 2016 Datacenter y Windows Server Insider Preview

En Storage Spaces creamos pilas de almacenamiento (Storage Pools) a las que añadimos discos físicos sin formato (No pueden contener volúmenes).

Los discos duros que cumplan con los requisitos para formar parte de una Storage Pool se encuentran en una Storage Pool llamada «Primordial».

En las pilas de almacenamiento podemos añadir discos físicos en cualquier momento y Storage Spaces se encargará de crear automáticamente los volúmenes virtuales con la topología (layout) que le pidamos: Simple, Mirror o Parity

Espacios de almacenamiento (Storage Space) tiene que ver con proporcionar a los datos tolerancia a errores, lo que a menudo se denomina «resistencia». Su implementación es similar a RAID, excepto que se distribuye entre varios servidores y se implementa en el software.

Mirror proporcionan tolerancia a errores mediante el mantenimiento de varias copias de todos los datos. Esto se parece mucho a RAID-1. Cada copia se escribe en hardware físico distinto (distintas unidades en distintos servidores), que se supone que no sufrirán errores a la vez.

En Windows Server 2016, Espacios de almacenamiento ofrece dos tipos de Mirror: » Two-way mirror » y » Three-way mirror «.

Two-Way Mirror escriben dos copias de todo. Su eficiencia en el almacenamiento es del 50%: para escribir 1 TB de datos, se necesitan al menos 2 TB de capacidad de almacenamiento físico.

Cmdlets para implementar un Storage Pool

PS C:\> Get-PhysicalDisk   # Obtiene una lista de todos los discos duros visibles en cualquier proveedor de Storage Management disponible

PS C:\> Get-PhysicalDisk -CanPool $True   #Lista solo los discos por la propiedad CanPool, esta propiedad con el valor $True identifica los discos que pueden ser utilizados en la Storage Pool

PS C:\> $Discos = Get-PhysicalDisk -CanPool $True   #Asignamos ese conjunto de discos a una variable que utilizaremos en la creación de la Storage Pool (Pila de Almacenamiento)

PS C:\> New-StoragePool -StorageSubSystemFriendlyName «Windows Storage*» -FriendlyName VolumenTwoWay -PhysicalDisks $discos

# New-StoragePool  Cmdlet permite crear un nuevo Storage Pool

# -StorageSubSystemFriendlyName «Windows Storage*»  Es un servicio de almacenamiento local de Windows, esta propiedad permite especificar el nombre descriptivo del subsistema de almacenamiento en el que deseo crear el Storage Pool.

# -FriendlyName «VolumenTwoWay» Propiedad asigna un nombre a la Storage Pool

# -PhysicalDisks $discos  Esta propiedad asigna el conjunto de discos físicos guardados en la variable $discos a la Storage Pool

PS C:\> Get-StoragePool -FriendlyName VolumenTwoWay | Format-List *

# Podemos consultar todas las características de la pila de almacenamiento creada utilizando estos dos cmdlets mediante una canalización en PowerShell, se conectan cmdlets con el operador de canalización pipeline «|».

PS C:\> New-VirtualDisk -StoragePoolFriendlyName VolumenTwoWay -FriendlyName Mirror -Size 100GB -ResiliencySettingName Mirror -NumberOfDataCopies 2 -ProvisioningType Thin

#Creamos un nuevo disco virtual indicando mediante las propiedades: La Storage Pool a utilizar -StoragePoolFriendlyName , nombre del disco virtual -FriendlyName , el tamaño del disco -Size , formato de almacenamiento -ResiliencySettingName , número de copias de los datos -NumberOfDataCopies y el tipo de aprovicionamiento Thin -ProvisioningType para no ocupar toda la capacidad del disco que aumentara su capacidad en relación a los datos almacenados

PS C:\> Get-VirtualDisk -FriendlyName Mirror | Initialize-Disk

#Inicializamos el disco creado utilizando el operador de canalización pipeline «|».

PS C:\> Get-Disk #Listamos los discos duros disponibles

PS C:\> New-Partition -DiskNumber 3 -UseMaximumSize -AssignDriveLetter

#Creamos una nueva partición seleccionando el numero de disco creado e inicializado previamente, con la propiedad -UseMaximumSize indicamos que se utilice el tamaño máximo del disco y utilizando la propiedad AssignDriveLetter para que asigne una letra de manera automática a la partición creada

PS C:\> Format-Volume -DriveLetter E -FileSystem NTFS -NewFileSystemLabel DatosEmpresa

#Damos formato a la partición creada indicando la letra asignada -DriveLetter en el paso anterior, el formato de la partición -FileSystem y una etiqueta/nombre para identificar el nuevo disco de almacenamiento NewFileSystemLabel

Autor: Leonardo Jiménez Coronel 

Curso: Microsoft MCSA Windows Server 2016 + Azure + AWS 

Centro: Tajamar 

Año académico: 2019-2020 

https://www.linkedin.com/in/leonardo-jim-coronel/

Leave a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.