Nuevo Blog – New Blog

Wiki Cloud

Hola amig@s,

Quiero darles la bienvenidos a mi nuevo blog sobre tecnologías cloud y datos!

Si eres un apasionado de la tecnología, la informática, la computación en la nube y la gestión de datos, este es el lugar perfecto para ti. En este nuevo blog, podrás encontrar contenido actualizado, informativo y de calidad sobre las últimas tendencias en tecnología cloud y datos, así como consejos y trucos para sacar el máximo partido a estas herramientas en tu negocio o proyecto personal.

El objetivo es convertir este blog en una fuente de referencia para todos aquellos interesados en conocer más sobre el mundo de la tecnología cloud y los datos. Si quieres mantenerte al día con las últimas novedades y tendencias, descubrir nuevas herramientas y técnicas, y compartir tus conocimientos con otros profesionales del sector, te invito a unirte a nuestra comunidad y ser parte de esta emocionante aventura tecnológica.

¡Te espero en mi nuevo nuevo blog!

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

Hi Folks,

I want to welcome you to my new blog about cloud technologies and data!

If you are passionate about technology, computing, cloud computing and data management, this is the place for you. In this new blog, you will be able to find updated, informative and quality content on the latest trends in cloud technology and data, as well as tips and tricks to get the most out of these tools in your business or personal project.

The objective is to turn this blog into a reference source for all those interested in learning more about the world of cloud technology and data. If you want to keep up with the latest news and trends, discover new tools and techniques, and share your knowledge with other professionals in the sector, I invite you to join our community and be part of this exciting technological adventure.

I wait for you in my new new blog!

Stellar Phoenix SQL Database Repair – Recuperación de archivos MDF & NDF corruptos

SQL Server es un potente motor de base de datos que aumenta y expande muchas características dándonos fiabilidad, calidad y facilidad de uso. SQL Server constituye un componente clave de una organización que la implementa, donde el servidor contiene datos muy importantes del día a día de la organización. Es por esto que la integridad de los archivos MDF y NDF que hacen parte de nuestra base de datos sea una las principales preocupaciones en la mente de los DBA’s y administración de TI.

Es por esto que en esta oportunidad hablaremos de un excelente producto llamado Stellar Phoenix SQL Database Repair desarrollado por Stellar Information Technology Pvt. Ltd. Este producto nos ayuda a recuperar bases de datos de SQL Server que se encuentren corruptas y restaura todos los objetos inaccesibles o dañados a una nueva base de datos. Ver Figura 1.

Figura 1. – Stellar Phoenix SQL Database Repair en acción.

Características claves de Stellar Phoenix SQL Database Repair

  • Repara los ficheros MDF y NDF de la base de datos de SQL Server cuando la corrupción se debe a un problema en el nivel de subsistema del disco o a una actualización a una versión superior de MS SQL Server.
  • Restaura rápidamente todos los objetos inaccesibles de tu base de datos SQL corrupta, como por ejemplo tablas, vistas, índices, procedimientos almacenados, datos XML y datos de secuencias de archivos (para SQL Server 2008).
  • Permite la recuperación de una base de datos completa o de cualquier objeto seleccionado.
  • En caso de que el software no pueda recuperar algún objeto de la base de datos, ofrecerá la opción de guardar las consultas a esos objetos en un archivo de texto. Con la ayuda de estas consultas, se podrá recrear de nuevo los objetos corruptos con facilidad y usarlos como antes.
  •  Ofrece vista previa de los objetos de la base de datos que se pueden recuperar. Esta función ayuda a comprobar la eficacia de la aplicación al permitir una verificación sencilla de los resultados del análisis antes de finalizar el proceso de recuperación.
  • Ofrece la recuperación de registros borrados de bases de datos corruptas mientras ejecuta la función de reparación, donde a través de una vista preliminar muestra estos registros borrados para que pueda se verificar la precisión de los resultados antes de guardar.
  • Ofrece múltiples opciones de guardado en los siguientes formatos: MSSQL, CSV, HTML y XLS.
  • Ofrece recuperación de datos comprimidos PAGE como los datos comprimidos ROW de la base de datos SQL. Esta aplicación también es compatible con el Esquema de Compresión Estándar para Unicode (Standard Compression Scheme for Unicode/SCSU) en SQL Server 2008 R2.
  • La aplicación es capaz de reparar y restaurar las nuevas secuencias de esquemas definidas por el usuario en SQL Server 2016 y las ediciones anteriores 2014, 2012, 2008 R2, 2008, 2005, 2000 y 7.0.

Instalación

Una vez descargado el trial o comprado el producto, procedemos a instalar el producto. Ejecutamos el archivo instalador StellarPhoenixSQLDatabaseRepair, donde nos muestra la pantalla de bienvenida y damos click en siguiente. Ver Figura 2.

Figura 2. – Pantalla de bienvenida instalador de Stellar Phoenix SQL Database Repair.

A continuación leemos el acuerdo de licenciamiento, aceptamos el acuerdo y damos click en siguiente. Ver Figura 3.

Figura 3. – Acuerdo de licenciamiento de Stellar Phoenix SQL Database Repair.

Posteriormente seleccionamos la ubicación donde queremos instalar el software, en este caso seleccionamos la ubicación por defecto y damos click en siguiente. En esta pantalla en la parte de abajo nos hace una advertencia de que se necesitan al menos 15 MB de espacio en el disco duro para poder instalar el software. Ver Figura 4.

Figura 4. – Acuerdo de licenciamiento de Stellar Phoenix SQL Database Repair.

Posteriormente nos pide que configuremos la carpeta del menú inicio donde pondrá los accesos directos de la aplicación, en este caso dejamos por defecto la que nos muestra el instalador y damos click en siguiente. Ver Figura 5.

Figura 5. – Acuerdo de licenciamiento de Stellar Phoenix SQL Database Repair.

Ahora nos pide que seleccionemos que tareas adicionales que deseemos para la configuración del proceso de instalación, que son la de crear un icono en el escritorio o un icono de lanzamiento rápido y damos click en siguiente. Ver Figura 6.

Figura 6. – Tareas adicionales en la instalación de Stellar Phoenix SQL Database Repair.

Por último nos muestra el resumen de la configuración de la instalación, damos click en Instalar. Ver Figura 7.

Figura 7. – Resumen configuración de la instalación de Stellar Phoenix SQL Database Repair.

Ahora inicia la instalación del software. Ver Figura 8.

Figura 8. – Instalación de Stellar Phoenix SQL Database Repair.

Con esto finaliza el proceso de instalación del software de recuperación de Stellar Phoenix SQL Database Repair.

Corrupción de la base de datos

Una vez instalado el software procedemos a ejecutarlo. Ahora quiero mostrarles cómo funciona este software y cómo podemos recuperar una base de datos SQL Server cuando el (los) archivo(s) MDF y/o NDF se encuentra(n) corrupto(s). En este momento no cuento con una base de datos corrupta, y es cuando nos preguntamos cómo podemos corromper una base de datos dañando intencionalmente el archivo MDF ó NDF para poder probar el software y ver que realmente funciona.

Existen algunos métodos para corromper el archivo MDF o NDF, uno de ellos es utilizar un software de edición hexadecimal como HxD ó XVI32 (Ver Figura 9 y 10), donde realizamos las siguientes instrucciones:

  • Desajuntamos la base de datos del motor de SQL Server
  • Abrimos el editor hexadecimal de nuestra preferencia y cargamos el archivo MDF de la base de datos que queremos corromper.
  • En el editor hexadecimal modificamos el archivo cambiando valores y guardando estos cambios para que se convierta en corrupta.
  • Adjuntamos la base de datos nuevamente en el motor de SQL Server.
  • Ejecutamos el comando DDBC CHECKDB para corroborar si la base de datos esta corrupta.

Otra opción es usar el comando DBCC WRITEPAGE que permite cambiar cualquier byte en la página de datos y de esta manera corrompe el archivo MDF. Este comando se encuentra disponible desde la versión 2000 de SQL Server. Como bien sabemos la página es la unidad fundamental del almacenamiento de datos en SQL Server y su tamaño es de 8 KB.

Debemos aclarar que el comando DBCC WRITEPAGE es considerado por muchos expertos como el comando más peligroso de SQL Server, como será que si buscan información de este comando en MSDN o TechNet, Microsoft no lo tiene documentado por lo peligroso que puede ser, inclusive Paul Randal considera que es uno de los principales secretos existentes en SQL Server. Los únicos que utilizan este comando son expertos de Microsoft con nivel de Dios de SQL Server, de lo contrario nadie por ningún motivo debe usar este comando y menos en ambientes de producción. Este comando lo utilizare únicamente en modo ejemplo para poder comprobar que el software Stellar Phoenix SQL Database Repair nos ayuda a recuperar nuestras bases de datos cuando estas se encuentran corruptas.

Iniciaremos creando una base de datos muy sencilla con dos tablas relacionadas:

Figura 11. – Tablas de la base de datos a crear.

Ejecutamos el siguiente script en SQL Server:

USE master
GO

-- Si existe la base de datos se elimina
IF EXISTS(select * from sys.databases where name='Geography')
DROP DATABASE GeographyDB
GO

-- Se crea la Base de datos
CREATE DATABASE GeographyDB
GO

--Usamos la base de datos Geography
USE GeographyDB
GO

 -- Se crea la tabla Country
CREATE TABLE [dbo].[Country](
    [IdCountry] [int] NOT NULL,
    [CountryName] [nvarchar](100) NULL,
    [CountryCode] [char](2) NULL,
 CONSTRAINT [PK_Country] PRIMARY KEY CLUSTERED 
    (
        [IdCountry] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

-- Se crea la tabla City
CREATE TABLE [dbo].[City](
    [IdCity] [int] NOT NULL,
    [IdCountry] [int] NULL,
    [CityName] [nvarchar](100) NULL,
    [FoundationYear] [int] NULL,
    [Population] [int] NULL,
    [Area] [decimal](18, 2) NULL,
    [Elevation] [int] NULL,
 CONSTRAINT [PK_City] PRIMARY KEY CLUSTERED 
(
    [IdCity] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

-- Se adiciona la llave foránea entre las tablas Country y City
ALTER TABLE [dbo].[City]  WITH CHECK ADD  CONSTRAINT [FK_City_Country] FOREIGN KEY([IdCountry])
REFERENCES [dbo].[Country] ([IdCountry])
GO

ALTER TABLE [dbo].[City] CHECK CONSTRAINT [FK_City_Country]
GO

-- Insertamos información en la tabla Country
INSERT INTO [dbo].[Country] VALUES (1,'United States', 'US');
INSERT INTO [dbo].[Country] VALUES (2,'Colombia', 'CO');
INSERT INTO [dbo].[Country] VALUES (3,'Argentina', 'AR');
INSERT INTO [dbo].[Country] VALUES (4,'Brasil', 'BR');
INSERT INTO [dbo].[Country] VALUES (5,'Peru', 'PE');

-- Verificamos los registros de la tabla Country
SELECT * FROM [GeographyDB].[dbo].[Country];

Figura 12. – Registros en la tabla Country

-- Insertamos información en la tabla City
INSERT INTO [dbo].[City] VALUES (1,1,'Chicago',1837,2722389,606.10,182);
INSERT INTO [dbo].[City] VALUES (2,1,'New York',1624,8550406,1214.00,10);
INSERT INTO [dbo].[City] VALUES (3,1,'Miami',1825,417650,145.21,2);
INSERT INTO [dbo].[City] VALUES (4,2,'Bogota',1538,8080734,1775.00,2600);
INSERT INTO [dbo].[City] VALUES (5,2,'Medellin',1616,2508452,382.00,1495);
INSERT INTO [dbo].[City] VALUES (6,2,'Cali',1536,2450013,619.00,1018);
INSERT INTO [dbo].[City] VALUES (7,3,'Buenos Aires',1536,2890151,230.00,25);
INSERT INTO [dbo].[City] VALUES (8,4,'Rio de Janeiro',1565,6476631,1182.00,11);
INSERT INTO [dbo].[City] VALUES (9,4,'Sao Paulo',1554,11967825,1522986.00,760);
INSERT INTO [dbo].[City] VALUES (10,5,'Lima',1535,10852210,2672.00,154)

-- Verificamos los registros de la tabla Country
SELECT * FROM [GeographyDB].[dbo].[City];

Figura 13. – Registros en la tabla City

Para identificar una página especifica que podamos corromper, podemos utilizar el comando DBCC IND que también se encuentra indocumentado. El comando DBCC IND funciona con los siguientes parámetros DBCC IND ( {dbname}, {table_name},{index_id} ).

En este caso, en el parámetro index_id tomamos el 1 que indica un índice clustered y que existe en nuestro modelo.

Al ejecutar este comando se generará una descripción de las páginas que componen nuestro índice agrupado de nuestra tabla City.

Ejecutamos el siguiente script:

-- Muestra un resumen de páginas para el índice clustered en la tabla City (índice id = 1)
DBCC IND (GeographyDB, 'City', 1)
GO

En este caso buscamos la primera página donde el PageType es 1 (página de datos), por lo que nos da un PageId con valor de 336. Ver Figura 14.

Figura 14. – Registros en la tabla Country

Ahora ejecutamos el comando peligro de DBCC WRITEPAGE que contiene la siguiente estructura:

DBCC WRITEPAGE ({dbname | dbid}, fileid, pageid, offset, longitud, data [, directORbufferpool])

En el parámetro directOrBufferpool si pasamos un 0 quiere decir que los datos se guardarán en el grupo de búfer antes de ser guardados en el disco, pero si pasamos un 1 el valor de los datos se escribirá directamente en el disco sin ninguna oportunidad de crear una suma de comprobación válida para la página. Este enfoque es mucho más similar a tener un editor hexadecimal y hacer una edición directa en el archivo de datos.

-- Corrompemos la página de datos
ALTER DATABASE GeographyDB SET SINGLE_USER WITH ROLLBACK IMMEDIATE
DBCC WRITEPAGE('GeographyDB', 1, 336, 60, 1, 0x00, 1)

Debido a que en nuestro ejemplo hemos proporcionado 1 como nuestro valor de directOrBufferpool, nuestro cambio se realizó directamente en el archivo en disco, lo que significa que la suma de comprobación ó checksum en la página es casi seguramente errónea. Podemos comprobar esto haciendo un select directa de la tabla. Esto hará que la página de datos se vuelva a leer en la memoria, lo que a su vez hará que se compruebe la suma de comprobación o checksum.

-- Verificamos los registros de la tabla Country
SELECT * FROM [GeographyDB].[dbo].[City];

Nos muestra como resultado:

Msg 824, Level 24, State 2, Line 85
SQL Server detected a logical consistency-based I/O error: incorrect checksum (expected: 0x670d0a00; actual: 0x670d0ab0). It occurred during a read of page (1:336) in database ID 10 at offset 0x000000002a0000 in file ‘C:Program FilesMicrosoft SQL ServerMSSQL13.SQL2K16MSSQLDATAGeographyDB.mdf’. Additional messages in the SQL Server error log or system event log may provide more detail. This is a severe error condition that threatens database integrity and must be corrected immediately. Complete a full database consistency check (DBCC CHECKDB). This error can be caused by many factors; for more information, see SQL Server Books Online.

Ahora ejecutamos el comando DBCC CHECKDB para comprobar la integridad lógica y física de todos los objetos de la base de datos.

-- Verificamos la integridad de la base de datos
DBCC CHECKDB (GeographyDB)
GO

En el resultado de este comando en una parte del mensaje nos muestra el siguiente error:

Msg 8939, Level 16, State 98, Line 89
Table error: Object ID 597577167, index ID 1, partition ID 72057594041335808, alloc unit ID 72057594046971904 (type In-row data), page (1:336). Test (IS_OFF (BUF_IOERR, pBUF->bstat)) failed. Values are 133129 and -4.
Msg 8928, Level 16, State 1, Line 89
Object ID 597577167, index ID 1, partition ID 72057594041335808, alloc unit ID 72057594046971904 (type In-row data): Page (1:336) could not be processed. See other errors for details.
Msg 8980, Level 16, State 1, Line 89
Table error: Object ID 597577167, index ID 1, partition ID 72057594041335808, alloc unit ID 72057594046971904 (type In-row data). Index node page (0:0), slot 0 refers to child page (1:336) and previous child (0:0), but they were not encountered.

Este resultado nos confirma que la Base de Datos esta corrupta, en este caso hace referencia al PartitionID 72057594041335808 que podemos verificar en la Figura 12 que corresponde a la página de datos que corrompimos.

Recuperación de la base datos SQL Server

Ya tenemos el escenario perfecto para probar el software Stellar Phoenix SQL Database Repair con una base de datos corrupta. Ahora ejecutamos el software.

Lo primero que muestra el software cuando lo ejecutamos es un mensaje informativo diciendo que detengamos el servicio de SQL Server, saquemos una copia del archivo de base de datos y la pongamos en una ubicación diferente a la original, iniciemos el servicio de SQL Server y reparemos la copia. Damos click en el botón OK. Ver Figura 15.

Figura 15. – Mensaje Informativo.

En este caso seguimos estos pasos, donde creamos una carpeta llamada BDCorruptas (“C:BDCorruptas”) y acá pegamos la copia de la base de datos corrupta. Ver imagen 16.

Figura 16. – Copia de la base corrupta en una ubicación diferente.

La pantalla de inicio del software nos muestra un mensaje bastante claro con los pasos a seguir para restaurar una base de datos corrupta. Ver Figura 17.

Figura 17. – Mensaje pantalla de inicio.

Seleccionamos el archivo MDF que se encuentra corrupto y queremos reparar. Si conocemos la ruta simplemente seleccionamos la base de datos desde su ubicación, pero en caso que no recordemos el nombre del archivo podemos hacer una búsqueda de los archivos MDF en una ubicación específica y damos click en el botón Reparar. Ver Figura 18.

Figura 18. – Selección de la base de datos a reparar.

Nos pregunta el software en cual versión de SQL Server se encuentra el archivo de base de datos que vamos reparar. En nuestro caso se encuentra en SQL Server 2016 donde seleccionamos la opción de “MS SQL Server 2012 or Server 2014 or Server 2016”. Damos click en OK. Ver Figura 19.

Figura 19. – Selección de la versión de la base de datos a reparar.

El software empieza a realizar el respectivo análisis y reparación de la base datos. Finalmente nos muestra un mensaje donde la base de datos fue repara exitosamente. Ver Figura 20.

Figura 20. – Mensaje reparación exitosa.

Una vez reparada la base de datos podemos ver en la parte de abajo del software un log paso a paso de la ejecución del proceso de reparación. Ver Figura 21.

Ver Figura 21. – Log de ejecución proceso de reparación.

En la parte de arriba del software nos muestra un explorador de objetos que contiene el archivo MDF, donde podemos ver tablas, vistas, índices, procedimientos almacenado, funciones. En este caso vamos a dar click en la tabla City y podremos observar que el software nos recuperó la información de esta tabla, después de que dañamos la página de datos correspondiente a esta tabla. Ver Figura 22.

Ver Figura 22 – Registro recuperados de la tabla City.

Continuamos con el siguiente paso que se encuentra descrito en la Figura 15, guardar la reparación de la base datos. Para eso damos click en el menú archivo opción Guardar. Al dar click en guardar estaremos garantizando el éxito del proceso de reparación de la base de datos y nos muestra una ventana preguntándonos que como queremos salvar esta recuperación si como una base de datos MSSQL, un archivo CSV, un archivo HTML o un archivo XLS. Para nuestro ejemplo seleccionaremos MSSQL. Ver Figura 23.

Ver Figura 23 – Formatos de archivos para guardar la recuperación.

Como seleccionamos que guardara como una base de datos MSSQL el software nos presenta dos formas:

Nueva base de datos: En esta opción el software nos crea una base de datos nueva totalmente recuperada.

Para esto nos pide que selecciones la instancia del servidor de SQL Server donde queremos que nos cree la nueva base de datos y la ubicación donde almacenaremos el nuevo archivo MDF. En este caso seleccionaremos la ubicación por defecto. Damos click en Conectar. Ver Figura 24.

Ver Figura 24 – Opción de guardar, creando una nueva Base de Datos.

El software empieza a establecer la conexión y ejecutar los respectivos scripts con todos los objetos de la base de datos incluyendo los que estaban corruptos. Para verificar entramos a Management Studio, nos conectamos a nuestra instancia donde tenemos la base de datos original llamada GeographyDB que fue la que creamos a través de los scripts y posteriormente corrompimos y la nueva base de datos llamada Recovered_GeogaraphyDB que creo el software cuando guardamos la reparación.

Ver Figura 25 – Base de datos original corrupta y base de datos nueva reparada.

Ahora verificamos que este la información de la tabla City en la nueva base de datos. Ver Figura 26.

-- Verificamos los registros de la tabla Country en la nueva BD
SELECT *   FROM [Recovered_GeographyDB].[dbo].[City];

Figura 26. – Registros en la tabla City de la nueva base de datos.

Live database: En esta opción lo que hace el software es que crea nuevos objetos totalmente recuperados. En nuestro ejemplo nos creara una nueva tabla para City y para Country, con la información recuperada. Damos click en conectar. Ver Figura 27.

Ver Figura 27. – Opción de guardar, creando los objetos en una Base de Datos existente.

El software empieza a establecer la conexión y ejecutar los respectivos scripts con todos los objetos de la base de datos incluyendo los que estaban corruptos. Para verificar entramos a Management Studio, nos conectamos a nuestra instancia donde tenemos la base de datos original llamada GeographyDB que fue la que creamos a través de los scripts y posteriormente corrompimos con nuevas tablas para City y Country. Ver Figura 28.

Ver Figura 28 – Base de datos original corrupta con nuevas tablas para City y Country.

Ahora verificamos que este la información que teníamos en la tabla City en la nueva tabla City_$$dup1 en la base de datos original GeographyDB. Ver Figura 29

-- Verificamos los registros de la tabla City_$$dup1 en la BD original
SELECT * FROM [GeographyDB].[dbo].[City_$$dup1]

Figura 29. – Registros en la tabla City_$$dup1 de la nueva base de datos.

Con esto compramos que el software Stellar Phoenix SQL Database Repair funciona correctamente y nos recupera las bases de datos corruptas.

Versión gratuita de evaluación

Los invito a que descargue la versión gratuita de evaluación de Stellar Phoenix SQL Database Repair. Con la descarga Gratuita podrá comprobar la vista previa de los objetos recuperables de tu base de datos. Para guardar la base de datos recuperada en tu ordenador tendrás que comprar el programa.

Quiero agradecer a Priyanka Chouhan de Stellar Information Technology Pvt. Ltd por la invitación para hacer esta revisión del producto Stellar Phoenix SQL Database Repair.

Espero este artículo sea de utilidad.

Saludos,

Microsoft Azure – Balanceo de cargas entre servidores Windows

 

El balanceador de carga de Azure proporciona una alta disponibilidad y un elevado rendimiento de red para sus aplicaciones. Se trata de un balanceador de carga de nivel 4 (TCP y UDP) que distribuye el tráfico entrante entre las instancias de servicio. En este artículo se describirá cómo balancear la carga entre servidores Windows Server 2016 en Microsoft Azure.

A continuación se detalla la arquitectura de este ejercicio y los diferentes recursos de Azure utilizados.

A continuación se describe el paso a paso de cómo se configura el balanceador de carga entre servidores Windows Server 2016.

Nos logueamos en el portal de Azure y seleccionamos la suscripción con la que queremos trabajar.

Para configurar el balanceo de cargas en Microsoft Azure, necesitamos de los siguientes recursos:

  • Resource Group o Grupo de Recursos.
  • Storage Account o Cuenta de Almacenamiento.
  • Virtual Network o Red Virtual
  • Network Security Group o Grupo de Seguridad de Red (Opcional)
  • Virtual Machine o Máquina Virtual (Mínimo 2, en este caso con SO Windows Server 2016)
  • External Load Balance o Balanceador de Carga Externo.

RESOURCE GROUP

1.   Lo primero que hacemos es crear el Grupo de Recursos para agrupar los recursos anteriormente mencionados que se crearan para la solución.

2.   A continuación se adicionan los siguientes valores a los parámetros:

         *  Resource group name: solution-rg
         *  Subscription: Seleccionar una suscripción activa (debe ser la misma para todos los recursos que se vaya a crear para esta solución)
         *  Resource group location: South Central US

STORAGE ACCOUNT

1.   Creamos una cuenta de almacenamiento, donde se almacenarán los discos de las máquinas virtual que se crearán posteriormente.

 

2.   A continuación se adicionan los siguientes valores a los parámetros:

         *  Name: solutionstg
         *  Deployment Model: Resource manager
         *  Account Kind: General purpose
         *  Performance: Standard
         *  Replication: Locally-redundant storage (LRS)
         *  Storage service encryption: Disabled
         *  Subscription: Seleccionar una suscripción activa (debe ser la misma para todos los recursos que se vaya a crear para esta solución)
         *  Resource group: solution-rg
         *  Location: South Central US

VIRTUAL NETWORK

1. Creamos una red virtual para poder conectar las máquinas posteriormente.

2. A continuación se adicionan los siguientes valores a los parámetros:

         *  Name: solution-vn
         *  Address space: 10.2.0.0/27 (Se puede cambiar)
         *  Subnet name: solution-vn-front
         *  Subnet address range: 10.2.0.0/28 (Se puede cambiar)
         *  Subscription: Seleccionar una suscripción activa (debe ser la misma para todos los recursos que se vaya a crear para esta solución)
         *  Resource group: solution-rg
         *  Location: South Central US

NETWORK SECURITY GROUP (OPCIONAL)

1. Creamos un grupo de seguridad de red que va a contener la lista de reglas de control de acceso que permiten o deniegan el tráfico de red a sus instancias de máquina virtual en una red virtual.

2. A continuación se adicionan los siguientes valores a los parámetros:

         *  Name: solution-ngs-front
         *  Subscription: Seleccionar una suscripción activa (debe ser la misma para todos los recursos que se vaya a crear para esta solución)
         *  Resource group: solution-rg
         *  Location: South Central US

3. Abrimos el Grupo de seguridad de red creado en al anterior paso.

4. Damos click en la opción de Inbound Security Rules para adicionar las reglas de entrada.

5. Damos click en Add (Regla RDP)

         *  Name: RDP
         *  Priority: 1000
         *  Source: Any
         *  Service: RDP
         *  Action: Allow

6. Damos click en Add (Regla HTTP)

         *  Name: HTTP
         *  Priority: 1010
         *  Source: Any
         *  Service: HTTP
         *  Action: Allow

7. Damos click en Add (Regla HTTPS)

         *  Name: HTTPS
         *  Priority: 1020
         *  Source: Any
         *  Service: HTTPS
         *  Action: Allow

 

VIRTUAL MACHINE 1

1. Creamos la primera Máquina Virtual con Windows Server 2016 Datacenter.

2. A continuación se adicionan los siguientes valores a los parámetros:

    Paso 1 – Configuración básica

         *  Name: solution-vm1
         *  VM disk type: HDD
         *  User name: johnbulla
         *  Password: Escribir una contraseña
         *  Confirm password: Escribir nuevamente la contraseña
         *  Subscription: Seleccionar una suscripción activa (debe ser la misma para todos los recursos que se vaya a crear para esta solución)
         *  Resource group: solution-rg
         *  Location: South Central US

    Paso 2 – Seleccionar el tamaño de la máquina virtual

         *  Size: DS1_V2 Standard

 

    Paso 3 – Configuración opcional de características

        *  Storage: solutionstg
         *  Network: solution-vn
         *  Subnet: solution-vn-front
         *  Public IP: Crear una nueva
                  *  Name: solution-vm1-ip
                  *  Assignment: Static
        *  Network Security Group: solution-ngs-front
        *  Extensions: No extensions
         *  Availability Set: Crear uno nuevo
                  *  Name: solution-vm-av
         *  Boot Diagnostics: Enabled
         *  Guest OS Diagnostics: Enabled
         *  Diagnostics Storage: solutionstg

    Paso 4 – Resumen

VIRTUAL MACHINE 2

1. Creamos la segunda Máquina Virtual con Windows Server 2016 Datacenter.

2. A continuación se adicionan los siguientes valores a los parámetros:

    Paso 1 – Configuración básica

         *  Name: solution-vm2
         *  VM disk type: HDD
         *  User name: johnbulla
         *  Password: Escribir una contraseña
         *  Confirm password: Escribir nuevamente la contraseña
         *  Subscription: Seleccionar una suscripción activa (debe ser la misma para todos los recursos que se vaya a crear para esta solución)
         *  Resource group: solution-rg
         *  Location: South Central US

    Paso 2 – Seleccionar el tamaño de la máquina virtual

         *  Size: DS1_V2 Standard

      Paso 3 – Configuración opcional de características

        *  Storage: solutionstg
         *  Network: solution-vn
         *  Subnet: solution-vn-front
         *  Public IP: Crear una nueva
                  *  Name: solution-vm2-ip
                  *  Assignment: Static
        *  Network Security Group: solution-ngs-front
        *  Extensions: No extensions
         *  Availability Set: solution-vm-av
         *  Boot Diagnostics: Enabled
         *  Guest OS Diagnostics: Enabled
         *  Diagnostics Storage: solutionstg

    Paso 4 – Resumen

LOAD BALANCE – EXTERNAL

1. Creamos el balanceador de cargas externo.

2.   A continuación se adicionan los siguientes valores a los parámetros:

         *  Name: solution-elb
         *  Type: Public
         *  Public IP: Crear una nueva
                         *  Name: solution-elb-ip
                         *  Assignment: Static
         *  Subscrption: Seleccionar una suscripción activa (debe ser la misma para todos los recursos que se vaya a crear para esta   solución)
        *  Resource group: solution-rg
        *  Location: South Central US

 

SETUP A BACKEND POOL

El backend pool es la opción del balanceador de cargas donde configuramos que máquinas virtuales deseamos balancear.

1. Abrimos el balanceador de carga externo (solution-elb) creado en el paso anterior.

2. Damos click en la opción de Backend pools del blade Settings

3. Damos click en Add

        *  Name: solution-elb-bp
         *  + Add a virtual machine
                    *  Availability Set: solution_vm_av
                    *  Virtual Machine: solution_vm1 y solution_vm2

4. Cerrar el blade de Backend pools

SETUP A HEALTH CHECK PROBE

Ahora puede crear una sonda para verificar el estado de salud de su aplicación. En el ejemplo siguiente, crea una sonda para un servicio web que escucha en HTTP / 80.

1. Abrimos el balanceador de carga externo (solution-elb).

2. Damos click en la opción de Probes del blade Settings

3. Damos click en Add

 

         *  Name: solution-elb-pr
         *  Protocol: HTTP
         *  Port: 80
         *  Path: /
         *  Interval: 5
         *  Unhealthy threshold: 2

 

5. Cerrar el blade de Probes

SETUP LOAD BALANCING RULES

Una vez creada la sonda, podemos crear una regla de equilibrio de carga relacionada con la salud de la sonda, es decir si un servidor no es saludable, el equilibrador de carga no enviará tráfico a este servidor.

1. Abrimos el balanceador de carga externo (solution-elb).

2. Damos click en la opción de Loas Balancing rules del blade Settings

3. Damos click en Add

         *  Name: HTTP
         *  Frontend IP address:  IP Address Load Balancer
         *  Protocol: TCP
         *  Port: 80
         *  Backend port: 80
         *  Backend pool: solution-elb-bp (2 virtual machines)
         *  Health probe: solution-elb-pr (HTTP:80)
         *  Session persistence: None
         *  Idle timeout (minutes): 4
         *  Floating IP (direct server return): Disabled

5. Cerrar el blade de Probes

INTALACIÓN Y CONFIGURACIÓN DE IIS – solution-vm1 y solution-vm2

Una vez creada la regla de balanceo procedemos a entrar a cada una de las máquinas virtuales creadas e instalar y configurar Internet Information Services (IIS). 

1. Nos conectamos a la máquina virtual loadbalance-vm1

2. Abrimos el Server Manager

3. Click en la opción de Add roles and features para iniciar el wizard.

4. En la página Before You Begin –> Damos click en el botón Next

5. En la página Select installation type –> Seleccionamos la opción Role-based or feature-based installation -> Damos click en el botón Next

6. En la página Select destination Server -> Seleccionamos la opción Select a server from the server pool –> seleccionamos la máquina virtual solution-vm1 -> Damos click en el botón Next

7. En la página Select server roles –> Seleccionamos el Role Web Server IIS ->Damos click en el botón Next

8. En la página features -> Damos click en el botón Next

9. En la página Web Server Role (IIS) -> Damos click en el botón Next

10. En la página Select role services -> Damos click en el botón Next

11. En la página Confirmation –> chequeamos la opción Restart the destination server automatically if required -> Damos click en el botón Install

12. Cuando la instalación es exitosa damos click en el botón Close

13. Abrimos el explorador de Windows en la ruta C:inetpubwwwroot

14. Damos click derecho en el archivo iisstart.html –> Damos click en la opción Abrir con y seleccionamos Notepad

15. Adicionamos la siguiente línea después de la etiqueta Body

<h1>Virtual Machine 1</h1>

16. Guardamos el archivo.

Nota: Repetir este proceso en la máquina virtual loadbalance-vm2

PRUEBA DEL BALANCEADOR DE CARGA

1. Abrimos un Browser

2. En el campo de la URL digitamos la dirección IP pública de la máquina virtual – solution-vm1

3. En el campo de la URL digitamos la dirección IP pública de la máquina virtual – solution-vm2

4. En el campo de la URL digitamos la dirección IP pública del balanceador de carga – solution-elb

5. Ahora en el Browser damos click en la tecla F5, donde notaremos como se balancea la carga entre los servidores.

 

Espero este artículo sea de utilidad.

Saludos

Hablemos de Tecnología – «Seguridad: Clave de la transformación digital»

Hablemos de Tecnología

Hablemos de Tecnología

«Seguridad: Clave de la transformación digital».
Cada sesión estará a cargo de un experto en productos y soluciones de Microsoft.

28 de Septiembre de 2016 – 11:00 am (EST)

Seleccione las sesiones disponibles y regístrese en el evento:

Titulo: Vaya un paso adelante de los hackers con Advanced Threat Analytics.
Descripción: Muévase de forma segura a la nube con Azure Security Center y logre que su organización sea más ágil, reduciendo costos.
Speaker: Eduardo Nuñez
Hora: 11:00 AM US-EST

Título: Seguridad empresarial con Windows 10.
Descripción: La seguridad es un tema relevante para discutir con clientes. Conozca los componentes pre-ataque y post-ataque de Windows 10.
Speaker: Jerry Carlson
Hora:  11:30 AM US-EST

Título: Minimice los riesgos de seguridad en la nube.
Descripción: Al vivir conectados, el riesgo de un ataque aumenta. Por ello, un análisis de comportamiento puede minimizar las amenazas.
Speaker: Eduardo Nuñez
Hora: 12:00 PM US-EST

Título: Mantenga segura su organización en ambientes híbridos.
Descripción: Las compañías se hallan en ambientes cada vez más complejos. Logre un mejor entendimiento de su seguridad.
Speaker: Braulio Chavez Salazar
Hora: 12:30 PM US-EST

Titulo: Seguridad en Office 365.
Descripción: 160 millones de registros son golpeados por problemas de inseguridad. Descubra cómo mantener a su organización segura.
Speaker: John pérez
Hora: 1:00 PM US-EST

Titulo: Seguridad para el nuevo mundo de datos con SQL Server 2016 y Azure IoT Suite.
Descripción: El mantener seguros sus datos nunca había sido tan crucial. Descubra cómo garantizar la seguridad adecuada para este activo crítico.
Speaker: Mario Ochoa
Hora: 1:30 PM US-EST

En este evento estaremos junto a nuestros amigos y colegas de PASS ayudándoles a responder sus inquietudes:

Unase a la conversación y gane excelentes premios:

2016-09-28_9-28-50

Saludos,

Bookmark and Share

Unlock Data Insight – ¿Conoce el poder de sus datos?

La Información es Poder.

Con los datos de su empresa y mercado usted tiene toda la información y poder para transformar sus productos, servicios y procesos para tener mejores ventajas competitivas y ganarle a la competencia.

Conozca lo que los expertos tienen que contar:

«Transformando las organizaciones y sociedades en la era digital.» «El Poder de los Datos Inteligentes»

Alistair Croll
Escritor del libro “Lean Analytics: using data to build a better business faster”

Marc Reguera
Principal Program Manager at Microsoft

31 DE AGOSTO 11:00 hs ET.
Revise horario local.

En este evento estaremos junto a nuestros amigos y colegas de PASS ayudándoles a responder sus inquietudes:

Unase a la conversación y gane excelentes premios:

Saludos,

Bookmark and Share

Global Azure Bootcamp 2016, Bogotá – Colombia

Evento a realizarse a nivel mundial en más de 144 ciudades del mundo al mismo tiempo en el cual se mostraran las características y las bondades de desarrollar, desplegar aplicaciones en la nube de Microsoft Azure y utilizar las aplicaciones y servicios que nos ofrece la plataforma.

Tendremos 28 charlas divididas en 4 tracks, dictadas por expertos en cada uno de los temas.

En la ciudad de Bogotá la comunidad BDotNet es la responsable de la organización y logística de la misma.

Fecha: Sábado 16 de Abril de 2016
Lugar: Universidad Piloto de Colombia KR 9 No. 45A-44, Edificio APR, Bogotá – Colombia
Registro y Sitio Web: http://bdotnetevent.azurewebsites.net/
Mas info en: http://www.meetup.com/es-ES/BDotNet/events/229009556/

Para más información los invitamos a que se registren en el sitio web de la comunidad: http://meetup.com/bdotnet

Patrocinadores Platinium

         

Patrocinadores Gold

        

Patrocinadores Globales

                  

image       jetbrains-logo-new_0              

SQLSentry_logo

Los esperamos !!!!

Saludos,

Bookmark and Share

Datazen – Características generales

Datazen está diseñado para permitir el rápido desarrollo y publicación de contenido de inteligencia de negocios de una manera que proporciona una experiencia de usuario de alta calidad en cualquier dispositivo.

A continuación, se detallan las principales características del producto.

Desarrollo Rápido

  • Utiliza la infraestructura existente: Datazen no impone cambios en la infraestructura existente. El producto se integra con las bases de datos existentes, almacenes de datos y la infraestructura de seguridad. Está diseñado para ser un efectivo análisis de datos y la capa de presentación de BI trabaja con los productos que ya utiliza en la actualidad.
  • Construir y publicar rápidamente: El proceso de creación de contenido de Datazen como los KPI’s, dashboards, scorecards e informes, se crean en minutos. Soluciones completas basadas Datazen se pueden implementar en cuestión de días en lugar de meses.
  • Crear una vez y consumir en cualquier lugar: La aplicación de edición de Datazen es el único punto de creación y publicación de dashboards. Una vez que las conexiones de datos se configuran y los diseños de los dashboards son creados, la publicación de un dashboard significa disponibilidad inmediata en todas las plataformas móviles y dispositivos.

Experiencia de Calidad en Cualquier Dispositivo

  • Mantenerlo simple: Consumir contenido de BI es fácil e intuitivo. Los usuarios finales no requieren ningún entrenamiento para comenzar a usar Datazen.
  • Priorizar el móvil: Datazen fue diseñado para escenarios móviles en primer lugar, luego transferirse a factores de forma tradicionales. Como tal, el producto ofrece aplicaciones nativas para todas las plataformas móviles, es compatible con el uso sin conexión para escenarios desconectados, optimiza la totalidad de la interfaz de usuario para la entrada táctil y pantalla móvil y asegura que los datos están protegidos en todos los escenarios móviles.
  • Hacerlo hermoso: Los análisis de datos efectivos pueden potenciar nuestros informes, pero también el hecho de que se vean bonitos agradaran a los usuarios finales. El modelo de diseño de dashboards de Datazen hace que sea imposible crear dashboards poco atractivos. La Integración de la marca corporativa va un paso más allá y asegura una experiencia integrada.

En resumen, Datazen fue creado para hacer frente a dos importantes puntos en nuestra industria: la velocidad de despliegue y la calidad de la experiencia del usuario, especialmente en dispositivos móviles. El producto permite ciclos de publicación rápidos y ofrece ideas oportunas para grandes audiencias en cualquier momento y en cualquier lugar.

Saludos,

Bookmark and Share

Datazen – Introducción

http://www.facebook.com/plugins/like.php?href=http://geeks.ms/blogs/johnbulla/archive/2015/11/15/datazen.aspx&layout=button_count&show_faces=true&width=450&action=like&font=trebuchet+ms&colorscheme=light&height=65https://platform.twitter.com/widgets/tweet_button.html?text=Introducción%20a%20Datazen%20&url=http://geeks.ms/blogs/johnbulla/archive/2015/11/15/datazen.aspx&via=johnbulla&count=horizontal&hashtags=Datazen,sqlserver,sqlpass,MobileBI&height=65https://plusone.google.com/_/+1/fastbutton?bsv&size=medium&hl=en-US&url=http://geeks.ms/blogs/johnbulla/archive/2015/11/15/datazen.aspx&parent=http://test.com/

Datazen es una solución de BI que permite una interactiva visualización de datos y KPIs que pueden ser consumidos desde las principales plataformas móviles como Windows, iOS y Android y que está totalmente optimizada para trabajar con SQL Server, SQL Server Analysis Services y en general sobre la plataforma de Microsoft.

Datazen Software Inc. basada en Toronto – Canadá, es una empresa líder en la industria en inteligencia de negocios móvil y en análisis de datos. Datazen Software nace en el año 2002 como ComponentArt Inc. e inicia como un proveedor de herramientas de desarrollo y componentes de interfaz de usuario y visualización de datos.

 
   

Después de una década de arduo trabajo y experiencia en la construcción de tecnologías básicas, culminaron en un esfuerzo para crear un producto de BI móvil de próxima generación llamado Datazen. El 29 de Abril de 2014 ComponentArt Inc. hace un anuncio oficial donde decide cambiar el nombre de la compañía a Datazen Software Inc. debido al crecimiento explosivo y alto reconocimiento del producto de Datazen lanzado en febrero de 2013. Datazen Software Inc. continuara apoyando a las herramientas de desarrollo y el sitio web de ComponentArt.

Hoy en día más de 10.000 organizaciones en todo el mundo cuentan con licencias de sus productos para agregar análisis de datos avanzados a las aplicaciones. Datazen fue lanzado en febrero de 2013, ganando rápido reconocimiento entre los clientes, socios y analistas de la industria, donde en los primeros 12 meses Datazen llegó a más de 40.000 usuarios. Empresas de tecnología se asociaron con Datazen para proporcionar capacidades avanzadas para sus clientes, donde más tarde Datazen aparecería en los informes de Gartner, Forrester y TEC

El pasado 14 de Abril de 2015, Microsoft adquiere la compañía Datazen Software Inc. Esta adquisición acelera la estrategia de Power BI para ayudar a las organizaciones a crear una cultura de datos con herramientas accesibles y fáciles de usar para extraer el máximo valor de los datos desde cualquier lugar y en cualquier dispositivo.

Con este anuncio los clientes que tengan SQL Server Enterprise Edition desde la versión 2008 o posterior y/o Software Assurance tienen derecho a descargar el software Datazen Server sin costo adicional. Esto significa que millones de personas de todo el mundo podrán ahora visualizar e interactuar con los datos en sus dispositivos móviles, el uso de las aplicaciones móviles nativas están disponibles sin costo alguno en las respectivas tiendas de aplicaciones.

Las tecnologías y soluciones de Datazen complementarán a Power BI que es servicio de análisis de negocio basado en la nube, y de esta manera se completaran las capacidades móviles para clientes que necesitan una solución de BI móvil implementado a nivel On-premise y optimizado para SQL Server. Con el tiempo Microsoft tiene la intención de integrar la tecnología de Datazen con Power BI para brindar a los clientes soluciones híbridas.

Con esto quiero dar inicio a una serie de artículos sobre Datazen.

Espero sean de utilidad.

Los dejo con este video para que se den una idea de este gran producto que adquirio Microsoft.

Saludos,

Bookmark and Share

24 Horas PASS en ESPAÑOL – 2015

24 Horas de entrenamiento Gratuito de SQL Server

El próximo 1 y 2 de Diciembre de 2015, no te pierdas el evento en línea de las 24 Horas de PASS en Español, un gran evento de entrenamiento Gratuito sobre SQL Server y que contara con una selección estelar de expertos reconocidos de la comunidad en la Plataforma de Datos de Microsoft como MVPs y líderes de comunidades, entregando las mejores prácticas para sacar el máximo provecho de sus datos.

Este año contaremos con la presencia de oradores de: Argentina, Canada, Colombia, Costa Rica, El Salvador, España, Estados Unidos, Guatemala, México, Perú, Puerto Rico y Venezuela.

Los temas estarán divididos en las siguientes categorías:

Las 24 Horas de PASS en Español tendrá una duración de 2 días consecutivos (1 y 2 de Diciembre) con 24 charlas en total. El evento comienza a las 08:00 (UTC/GMT -05:00) horario de la zona de Bogota,Lima, Quito.

Patrocinado por:

          

Organizado por:

Los Esperamos…!!!!!

Saludos,

Bookmark and Share

SQL Saturday #457 – México, DF 2015

#sqlsatMexCity

Hola amig@s:

Si están en México, quiero invitarlos para que participen en el SQL Saturday #457 de la Ciudad de México, en la que podrán conocer algunas de las funcionalidades de la nueva versión de SQL Server. En esta reunión se contará con el apoyo de la comunidad de MVP’s de SQL Server y especialistas reconocidos en SQL Server quienes compartirán tips y buenas prácticas en el trascurso del evento.

SQL Saturday es un evento de entrenamiento para profesionales en SQL Server y también para aquellos que quieren aprender sobre SQL Server. SQL Saturday #457 – México, DF 2015 nace como iniciativa de algunos entusiastas de SQL Server donde podrán tener la oportunidad de conocer todo lo nuevo de SQL Server.

La admisión al evento es totalmente gratuita. Pueden invitar a sus amigos y/o colegas.

  • Fecha: 28 de Noviembre de 2015
  • Lugar: Tecnológico de Monterrey Campus Santa Fe, Av. Carlos Lazo #100, Alvaro Obregon, DF, 01389, México
  • Horario: 08:00 – 18:00

Regístrate en https://www.sqlsaturday.com/457/RegisterNow.aspx

Si deseas patrocinar este evento, conoce el plan de sponsors.

Si tienes alguna duda o comentario sobre el evento puedes escribir un email a sqlsaturday457@sqlsaturday.com ó seguir en Twitter con el hastag #SQLSatMexCity

Los esperamos !!!!

Sponsors:

                                  

Los Esperamos !!!!

Saludos,

Bookmark and Share