Blog de Amazon Web Services (AWS)

Implementaciones de alta disponibilidad de SQL Server con Amazon FSx para ONTAP de NetApp

 

Por Andy Ward y Baris Furtinalar
ACTUALIZACIÓN: El 26 de mayo de 2022, AWS Launch Wizard añadió soporte a las implementaciones de SQL Server con Amazon FSx para ONTAP de NetApp. AWS Launch Wizard utiliza un sencillo asistente de consola para simplificar la implementación de instancias de clúster (FCI) de SQL Server con Amazon FSx para ONTAP de NetApp. Para obtener más información sobre el uso de AWS Launch Wizard, consulte la documentación técnica.


Al implementar una carga de trabajo de misión crítica, es de suma importancia garantizar que todos los componentes estén altamente disponibles. Los clientes que elijan usar SQL Server en sus cargas de trabajo críticas pueden lograr una alta disponibilidad mediante la implementación de SQL Server Always On. SQL Server Always On se puede implementar en dos configuraciones principales: instancias de clúster (FCI) Always On y grupos de disponibilidad (AG) Always On.

En este blog, nos centraremos en cómo implementar las instancias de clúster Always On de SQL Server (FCI siempre activas). Hasta ahora, la forma más sencilla y rentable de implementar las FCI de Always On en AWS consistía en utilizar Amazon FSx for Windows File Server para la capa de almacenamiento compartido. Sin embargo, en AWS, siempre estamos buscando más formas de satisfacer las necesidades de nuestros clientes. Con este fin, recientemente lanzamos Amazon FSx para ONTAP de NetApp (FSx para ONTAP) como una solución de almacenamiento de archivos totalmente gestionada, altamente fiable, escalable, de alto rendimiento y rica en funciones, basada en el popular sistema de archivos ONTAP de NetApp. FSx para ONTAP proporciona acceso multiprotocolo a los datos a través de los protocolos NFS, SMB y iSCSI para sistemas Windows y Linux.

Una FCI Always On le permite ejecutar una instancia de SQL Server en varios nodos del clúster de Windows Server (WSFC). La instancia de SQL está activa en un único nodo del clúster y, en caso de que se produzca un error, la propiedad de la instancia de SQL y de todos los recursos asociados se transfiere a otro nodo del cluster. Se requiere un almacenamiento compartido para habilitar esta configuración. Una de las principales ventajas de esta configuración es que elimina la necesidad de actualizar de SQL Standard a SQL Enterprise únicamente para admitir los AGs de Always On. Además, dado que la FCI de SQL Server proporciona protección a nivel de instancia, todos los cambios administrativos (como la creación y administración de los inicios de sesión y los usuarios) y de programación (tareas y programas de los agentes SQL) se propagan automáticamente de las instancias de FCI activas a las pasivas del cluster a través del almacenamiento compartido.

Las FCI Always On de SQL Server admiten el uso de almacenamiento compartido que se presenta tanto a través de SMB como de iSCSI. En el caso de las pequeñas y medianas empresas, los clientes de AWS se han beneficiado desde 2018 del uso de FSx para Windows File Server. Con el lanzamiento de FSx para ONTAP, los clientes también pueden optar por utilizar SMB en FSx para ONTAP o iSCSI en FSx para ONTAP. En esta entrada del blog, explicamos cómo configurar un SQL Server Always On FCI con FSx para ONTAP como almacenamiento iSCSI compartido.

Descripción general de la solución

Los sistemas de archivos FSx para ONTAP ofrecen una alta disponibilidad y durabilidad en todas las zonas de disponibilidad (AZ) de AWS y están diseñados para ofrecer una disponibilidad continua de los datos. Cada sistema de archivos funciona con dos servidores de archivos en zonas de disponibilidad independientes, cada uno con su propio almacenamiento. Amazon FSx replica automáticamente sus datos en las zonas de disponibilidad para protegerlos de posibles fallos en los componentes, supervisa de forma continua los fallos de hardware y reemplaza automáticamente los componentes de la infraestructura en caso de que se produzca un fallo.

Los FSx para los sistemas de archivos ONTAP están configurados como Multi-AZ de forma predeterminada. Cada sistema de archivos tiene una subred preferida (activa) y una subred en espera (pasiva). En nuestro escenario, la AZ-A aloja la subred preferida y la AZ-B aloja la subred en espera. El sistema de archivos FSx para ONTAP proporciona puntos finales específicos de administración y protocolo para cada zona de disponibilidad. Los nodos FCI de SQL Server acceden al sistema de archivos FSx for ONTAP a través de interfaces de red elásticas (ENI). Estas interfaces de red residen en la Amazon VPC que usted asocia a su sistema de archivos. Los clientes acceden al sistema de archivos FSx for ONTAP a través de estas ENI (preferidas y en espera).

Como práctica recomendada, el nodo FCI activo de SQL Server debe estar en la misma subred que la subred preferida del sistema de archivos FSx para ONTAP, a fin de lograr el mejor rendimiento y la latencia más baja y evitar el tráfico de red innecesario entre zonas de disponibilidad.

En el siguiente tutorial, configuramos una FCI de SQL Server de dos nodos con FSx para ONTAP, que proporciona almacenamiento compartido mediante el protocolo iSCSI.

Recomendamos configurar los puntos finales iSCSI preferidos y los de reserva en el lado del cliente (nodos FCI de SQL Server) como destinos iSCSI. Habilitar el controlador MPIO que reconoce varias rutas al almacenamiento. Las operaciones de conmutación por error y conmutación por recuperación se gestionan mediante la política de conmutación por error del MPIO y el ALUA. La política de conmutación por error de MPIO debe configurarse de forma rotativa, de modo que solo se utilicen en un momento dado las rutas activas/optimizadas desde el cliente iSCSI (nodos FCI de SQL Server) hasta el destino iSCSI (FSx para el sistema de archivos ONTAP).

Figure 1 - SQL Server FCI setup with iSCSI shared disks (FSx for ONTAP)Figura 1: Configuración de FCI de SQL Server con discos compartidos iSCSI (FSx para ONTAP)

Consideraciones importantes

Al configurar las cargas de trabajo de SQL, es importante tener en cuenta cómo piensa hacer copias de seguridad de las bases de datos. El servicio FSx for ONTAP proporciona una funcionalidad de copia de seguridad automatizada que incluye copias de seguridad e instantáneas integradas. Para simplificar, en este escenario de ejemplo, desactivamos FSx para las copias de seguridad e instantáneas automatizadas de ONTAP en favor de las herramientas nativas de SQL. Si decide utilizar FSx para la funcionalidad avanzada de protección de datos de ONTAP, debe tener en cuenta los requisitos de almacenamiento adicionales para las instantáneas de respaldo.

El acceso al sistema de archivos FSx for ONTAP se realiza a través de la red, por lo que debe elegir una instancia de Amazon Elastic Compute Cloud (Amazon EC2) con un rendimiento de red suficiente para soportar su carga de trabajo. En este tutorial, utilizaremos instancias r5n.4xlarge como nodos FCI de SQL Server. Esta instancia EC2 proporciona un ancho de banda de red de hasta 25 Gbps. Disponer de un tipo y un tamaño de instancia adecuados para soportar tanto el tráfico de red como el iSCSI es fundamental para lograr un rendimiento óptimo. Como siempre, pruebe sus cargas de trabajo antes de transferirlas a producción. Si tiene requisitos de rendimiento de disco especialmente altos (por ejemplo, más de 1024 MB/s), considere la posibilidad de habilitar tramas gigantes en sus instancias y configurar sesiones iSCSI adicionales para cada destino iSCSI.

Consulte la documentación de NetApp para configurar el almacenamiento en función de sus requisitos de carga de trabajo y rendimiento: Guía de prácticas recomendadas para Microsoft SQL Server con ONTAP. En el paso 7 del tutorial que aparece a continuación, detallamos los ajustes de FSx para ONTAP, junto con los comandos necesarios para configurarlos.

Requisitos previos y configuración básica

Antes de comenzar el tutorial, asegúrese de haber completado o preparado los siguientes pasos/requisitos:

  • Microsoft Active Directory y una cuenta de usuario de AD privilegiada para realizar la configuración de las instancias de Windows. En este tutorial, utilizamos AWS Managed Microsoft AD.
  • Los controladores de dominio de Active Directory (AD) deben tener abiertos todos los puertos necesarios para que los nodos de SQL Server se unan al dominio y se autentiquen en AD.
  • Medio de instalación de Microsoft SQL Server. Para este tutorial, utilizamos la edición para desarrolladores de SQL Server 2019.
  • Lance 2 instancias de Amazon EC2 Windows Server 2019 en 2 subredes privadas distribuidas en dos zonas de disponibilidad dentro de una nube privada virtual (VPC).
  • Puede usar RDP para conectarse desde un servidor Jump/Bastion a las instancias del nodo del clúster o usar AWS Systems Manager Fleet Manager.
  • Configure 2 IP secundarias adicionales en el mismo ENI para cada nodo del clúster (3 IP en total por instancia de EC2).
  • Une los nodos al dominio. Compruebe que ha iniciado sesión con las credenciales de dominio antes de crear y configurar el clúster.
  • Configure las reglas de entrada de los grupos de seguridad y las excepciones del Firewall de Windows para permitir que los nodos se comuniquen en un entorno restrictivo.
  • Determine los requisitos de espacio de almacenamiento (por ejemplo, datos, registros, copias de seguridad y espacio de almacenamiento de instantáneas ONTAP de NetApp).
  • Configure un FSx para el sistema de archivos ONTAP. En este tutorial, configuramos FSx para ONTAP con 2 TB de capacidad de almacenamiento SSD, 512 MB/s de capacidad de rendimiento y 20 000 IOPS aprovisionadas. Consulte la página de rendimiento de Amazon FSx para ONTAP de NetApp.

Para este ejemplo de carga de trabajo, hemos configurado las copias de seguridad utilizando la tecnología de servidor SQL nativa para separar el almacenamiento. Por este motivo, hemos desactivado el FSx para las copias de seguridad automáticas
Table 1 - IP addresses used in this walkthrough

Tabla 1: Direcciones IP utilizadas en este tutorial

Tutorial

Evalúe los comandos de este tutorial en un entorno de prueba antes de intentar utilizarlos en producción.

Configure Amazon FSx para el sistema de archivos ONTAP y configure los ajustes de destino iSCSI

En primer lugar, siga los pasos de la documentación de FSx para ONTAP para crear un sistema de archivos. En este tutorial, utilizamos varios scripts y comandos que se refieren a la máquina virtual de almacenamiento (svm) de FSx para ONTAP como sql-svm01. Si quieres ahorrar tiempo, usa el mismo nombre para tu svm. Al crear el sistema de archivos FSx para ONTAP mediante la opción de creación estándar, puede dejar la creación de volúmenes predeterminada en blanco y no necesitará unir el svm a AD. Crearemos los volúmenes de ONTAP necesarios más adelante en este tutorial. Usamos la VPC predeterminada y la tabla de enrutamiento predeterminada de la VPC.

Luego instalamos y configuramos las funciones de Windows que necesitamos para completar este tutorial.

  1. Conéctese a su instancia EC2 mediante RDP con una cuenta de usuario de AD que tenga permisos de administrador local en ambos nodos.
  2. En cada instancia, instale las funciones necesarias (MultiPath-IO, Failover-Clustering, RSAT-AD-Tools, RSAT-DNS-Server) mediante el administrador del servidor o ejecute el siguiente comando de PowerShell (ejecutar como administrador):
Install-WindowsFeature RSAT-AD-Tools, RSAT-DNS-Server, Multipath-IO, Failover-Clustering -IncludeManagementTools -Restart
PowerShell
  1. En cada instancia, inicie el servicio de iniciador iSCSI de Microsoft y configure el tipo de inicio en «Automático» desde el complemento Servicios, o ejecute el siguiente comando de PowerShell (ejecutar como administrador):
#Start iSCSI initiator
Start-Service MSiSCSI
Set-Service -Name msiscsi -StartupType Automatic
PowerShell
  1. En cada instancia, vaya a las propiedades del iniciador iSCSI, elija la pestaña de configuración y anote el nombre del iniciador, o ejecute el siguiente comando de PowerShell (ejecutar como administrador):
#Get iSCSI initiator name of cluster nodes
(Get-InitiatorPort).NodeAddress
PowerShell
  1. Anote la dirección IP del terminal de administración de la consola FSx para ONTAP.

Figure 2 - FSx for ONTAP Console – File system Endpoint IP addresses

Figura 2: FSx para la consola ONTAP: direcciones IP de punto final del sistema de archivos

  1. Conéctese a su sistema FSx for ONTAP mediante SSH (por ejemplo, ssh fsxadmin@x .x.x.x de PowerShell). Si no puede acceder a su sistema de archivos, siga las instrucciones que se indican aquí.
  2. Desde su sesión ssh de FSx para ONTAP, utilice los siguientes comandos para crear un volumen, un iGroup y 3 LUNs (quórum, datos y registros) y asignarlos al iGroup. Personalice estos comandos en función de sus propios requisitos y convenciones de nomenclatura. Asegúrese de actualizar los nombres de los iniciadores iSCSI que aparecen a continuación con los que registró en el paso 4. El comando se ejecutará correctamente, aunque no actualice los nombres de los iniciadores, pero los nodos FCI de SQL Server no podrán conectarse al destino iSCSI.
volume create -vserver sql-svm01 -volume SQLCluster01 -aggregate aggr1 -size 500G -state online -tiering-policy snapshot-only -percent-snapshot-space 0 -autosize-mode grow -snapshot-policy none
volume modify -vserver sql-svm01 -volume SQLCluster01 -fractional-reserve 0
volume modify -vserver sql-svm01 -volume SQLCluster01 -space-mgmt-try-first snap_delete
volume snapshot autodelete modify -vserver sql-svm01 -volume SQLCluster01 -delete-order oldest_first -enabled true
igroup create -igroup SQLCluster01-IG -ostype windows -protocol iscsi -vserver sql-svm01 -initiator iqn.1991-05.com.microsoft:sqlnode1.corp.aws.example.com,iqn.1991-05.com.microsoft:sqlnode2.corp.aws.example.com
lun create -vserver sql-svm01 -volume SQLCluster01 -lun quorum -size 1G -ostype windows_2008
lun create -vserver sql-svm01 -volume SQLCluster01 -lun sqldata01 -size 200G -ostype windows_2008
lun create -vserver sql-svm01 -volume SQLCluster01 -lun sqllogs01 -size 100G -ostype windows_2008
lun map -vserver sql-svm01 -volume SQLCluster01 -lun quorum -igroup SQLCluster01-IG
lun map -vserver sql-svm01 -volume SQLCluster01 -lun sqldata01 -igroup SQLCluster01-IG
lun map -vserver sql-svm01 -volume SQLCluster01 -lun sqllogs01 -igroup SQLCluster01-IG

Estos comandos configuran los siguientes ajustes:

Table 2 - ONTAP configuration for SQL Server FCI setup in this walkthrough

Tabla 2: Configuración de ONTAP para la configuración de FCI de SQL Server en este tutorial

Configure el almacenamiento iSCSI y WSFC en Amazon EC2 Windows

Ahora iniciaremos y configuraremos las instancias EC2 de Windows con conexiones y discos iSCSI.

  1. En cada instancia EC2, recupere todas las direcciones IP (3 IP por instancia EC2) y anótelas. Estas direcciones IP se utilizan en los pasos siguientes.
  2. Obtenga las direcciones IP de los puntos finales iSCSI (subred preferida y subred en espera) de la consola FSx for ONTAP. Elija su svm (en este tutorial, sql-svm01) en la página Máquinas virtuales de almacenamiento. Estas direcciones IP se utilizan como destinos iSCSI en el siguiente paso.

Figure 3 - FSx for ONTAP Console - ISCSI Endpoint IP addresses

Figura 3: FSx para la consola ONTAP: direcciones IP de punto final ISCSI

  1. En cada instancia, vaya a la configuración del iniciador iSCSI y conéctese a sus destinos iSCSI (FSx para los terminales iSCSI de ONTAP) o ejecute el siguiente script de PowerShell (ejecute como administrador): (sustituya las direcciones IP por las que recuperó en el paso anterior):
#Retrieve iSCSI target endpoint IP Addresses from AWS FSx for ONTAP page.
#IP addresses for Preferred and Standby subnets
$TargetPortalAddresses = @("172.31.10.123","172.31.20.123")
#Primary IP address of EC2 instance recorded in step 1. 
#In our demo this is 172.31.10.100 (SQLnode1) and 172.31.20.100 (SQLnode2). Refer to the diagram above.
$LocaliSCSIAddress = "172.31.10.100"
#Connect to FSx for Netapp ONTAP file system
Foreach ($TargetPortalAddress in $TargetPortalAddresses){
New-IscsiTargetPortal -TargetPortalAddress $TargetPortalAddress -TargetPortalPortNumber 3260 -InitiatorPortalAddress $LocaliSCSIAddress
}
#Add MPIO support for iSCSI
New-MSDSMSupportedHW -VendorId MSFT2005 -ProductId iSCSIBusType_0x9
#Establish iSCSI connection
1..3 | %{Foreach($TargetPortalAddress in $TargetPortalAddresses){Get-IscsiTarget | Connect-IscsiTarget -IsMultipathEnabled $true -TargetPortalAddress $TargetPortalAddress -InitiatorPortalAddress $LocaliSCSIAddress -IsPersistent $true} }
#Set the MPIO Policy to Round Robin
Set-MSDSMGlobalDefaultLoadBalancePolicy -Policy RR
PowerShell

Figure 4 – Disk Device Properties, MPIO tab for LUN connected via iSCSI

Figura 4: Propiedades del dispositivo de disco, pestaña MPIO para el LUN conectado mediante iSCSI

  1. En la instancia EC2 de la AZ-A, vaya a la herramienta de administración de discos de Windows e inicialice y formatee cada disco iSCSI nuevo, o ejecute el siguiente script de PowerShell (ejecútelo como administrador):
#Retrieve a list of FSx for ONTAP disks 
$disklist=Get-Disk | Where-Object{$_.FriendlyName -eq 'NETAPP LUN C-MODE'} | Sort-Object -Property Size 
#Create a list of drive letters
$driveletters=@("Q","L","S")
#Initiate, create and format volumes from the list of available FSx for ONTAP disks

foreach($dk in $disklist)
{   
    if(($dk).IsOffline -eq $True){
       Set-Disk -Number ($dk).Number -IsOffline $False

    }
    if(($dk).PartitionStyle -eq 'RAW'){
        Initialize-Disk -Number ($dk).Number -PartitionStyle GPT -ErrorAction SilentlyContinue
    }
    if($dk.IsReadOnly -eq $True){ 
        Set-Disk -Number ($dk).Number -IsReadOnly $False
    }
} 

New-Partition -DiskNumber ($disklist[0]).Number -UseMaximumSize -DriveLetter $driveletters[0] | Format-Volume -FileSystem NTFS -Force -NewFileSystemLabel Quorum
New-Partition -DiskNumber ($disklist[1]).Number -UseMaximumSize -DriveLetter $driveletters[1] | Format-Volume -FileSystem NTFS -AllocationUnitSize 65536 -Force -NewFileSystemLabel SQL-Log
New-Partition -DiskNumber ($disklist[2]).Number -UseMaximumSize -DriveLetter $driveletters[2] | Format-Volume -FileSystem NTFS -AllocationUnitSize 65536 -Force -NewFileSystemLabel SQL-Data 
PowerShell
  1. En la instancia EC2 de la AZ-A, configure el cluster mediante el administrador de clústers o ejecute el siguiente script de PowerShell (ejecútelo como administrador):

NOTA: Asegúrese de cambiar las variables $WSfcClusterName y $ClusterNodes para que coincidan con su entorno, y modifique la variable $ClusterIps para incluir la primera de las direcciones IP secundarias de cada nodo (registrada en el paso 8). En nuestro tutorial, SQLNode1 tiene una IP principal de 172.31.10.100 y direcciones IP secundarias de 172.31.10.101 y 172.31.10.102, por lo que usaremos 172.31.10.101. Usaremos la tercera dirección IP durante la instalación de la FCI de SQL Server.

# Populate the cluster node names and set the cluster name for the WSFC
$WSFCClusterName = "WSFC1"
$ClusterNodes = ("SQLNode1", "SQLNode2")
$ClusterIPs = ("172.31.10.101", "172.31.20.101")

# Create a Cluster
New-Cluster -Name $WSFCClusterName -Node $ClusterNodes -AdministrativeAccessPoint ActiveDirectoryAndDNS -StaticAddress $ClusterIPs

# Rename Cluster Resources
$ClusterIPResources = Get-ClusterResource | Where-Object {$_.ResourceType -eq "IP Address"} | Select-Object -ExpandProperty Name
$ClusterIPResources.ForEach( { (Get-ClusterResource -Name "$_").Name = Get-ClusterResource -Name "$_" | Get-ClusterParameter -Name Address | Select-Object -ExpandProperty Value } )
(Get-ClusterGroup "Cluster Group").Name = $WSFCClusterName
(Get-ClusterResource | Where-Object {$_.ResourceType -eq "Network Name" -and $_.OwnerGroup -eq $WSFCClusterName}).Name = $WSFCClusterName

# Set possible owners for IP addresses - each node can only own its own IP
for($i = 0; $i -le 1; $i++){ Get-Cluster -Name $WSFCClusterName | Get-ClusterResource -Name $ClusterIPs[$i] | Set-ClusterOwnerNode -Owners $ClusterNodes[$i] }

# Set dependencies for the cluster name object to be either/or for the node IP addresses
Set-ClusterResourceDependency -Resource $WSFCClusterName -Dependency ("[$($ClusterIPs[0])] or [$($ClusterIPs[1])]")

# Test the cluster
Test-Cluster
PowerShell

Figure 5 – Disks shown in Failover Cluster Manager

Figura 5: Los discos se muestran en el Administrador de clústeres de conmutación por error

Instalación del clúster de conmutación por error de SQL Server

  1. Ejecute la configuración de SQL Server desde el medio de instalación y, a continuación, seleccione la instalación y la instalación del nuevo clúster de conmutación por error de SQL Server. Complete el asistente de instalación del clúster con los parámetros de configuración que elija en ambos nodos FCI de SQL Server. A continuación, destacamos algunos pasos importantes del proceso de instalación.
  2. En Configuración de red de clústeres, seleccione la línea de dirección IP que corresponde a la subred del nodo SQL actual, desactive la casilla de verificación DHCP y utilice la tercera dirección IP de los nodos de SQL Server (IP secundaria 2 para cada nodo de la tabla 1). En nuestro tutorial, SQLNode1 está configurado con 172.31.10.102 como tercera dirección IP.

Figure 6 - Cluster Installation Wizard: SQLNode1 Cluster Network Configuration

Figura 6: Asistente de instalación de clústeres: configuración de red de clústeres SQLNode1

  1. Durante la instalación, puede elegir la opción «Permitir realizar una tarea de mantenimiento del volumen» para habilitar la función de inicialización instantánea de archivos para SQL Server.

Figure 7 - Cluster Installation Wizard:  Server Configuration

Figura 7 — Asistente de instalación de clústeres: configuración del servidor

Una vez finalizada la instalación del primer nodo de su clúster FCI de SQL, puede continuar y añadir nodos adicionales a su FCI de SQL Server.

¡Limpie!

Se recomienda eliminar los recursos que ya no utilice para no incurrir en cargos imprevistos. Puedes limpiar los siguientes recursos que creaste para este tutorial:

Conclusión

Los clientes llevan muchos años implementando las instancias de clúster de conmutación por error Always On de Microsoft SQL en el almacenamiento local de NetApp con mucho éxito. Con Amazon FSx para ONTAP de NetApp, los clientes ahora pueden implementar y configurar las FCI de SQL en un almacenamiento totalmente gestionado basado en el sistema de archivos ONTAP de NetApp en la nube de AWS.

En esta entrada de blog, explicamos cómo configurar un FSx para el sistema de archivos ONTAP, aprovisionar y optimizar los volúmenes de ONTAP, configurar las conexiones iSCSI y, por último, implementar un SQL Server Always On FCI con almacenamiento iSCSI compartido.

 

Este artículo se tradujo del Blog de AWS em Inglés.

 


Sobre os autores

Andy Ward es arquitecto de soluciones especializado sénior en AWS y se centra en las cargas de trabajo de Microsoft. Andy lleva más de 20 años trabajando con la tecnología de Microsoft y ayuda a los clientes y socios a ejecutar, transformar y optimizar sus cargas de trabajo de Microsoft en AWS.

 

 

 

 

Baris Furtinalar es arquitecto principal de soluciones y forma parte del equipo de especialistas en arquitecturas de Microsoft de AWS. Le apasiona la computación en la nube y cree que este cambio a la nube ayuda a las empresas a transformar sus negocios, ganar agilidad y mejorar la capacidad de respuesta operativa. Tiene una formación diversa, que incluye la administración de bases de datos SQL, la virtualización y la seguridad de sistemas. Diseñó, implementó y respaldó las implementaciones de servidores Windows/SQL desde el año 2000.

 

 

 

 

Traductor

JuanMa Silva quien es arquitecto de soluciones con especialidad en Microsoft para México y MCO. Cuenta con 15 años de experiencia en la industria de IT, en posiciones de Sysadmin, consultor para ayudar a migrar clientes a la nube y modernización de aplicaciones, soporte aplicaciones de misión crítica basados en tecnología Microsoft.