close

- Danovich.com.au -

Hace exactamente un año publiqué un blog sobre la configuración de alta disponibilidad para. Han pasado muchas cosas desde entonces. Windows Azure Pack fue liberado poco después de eso y nos hizo numerosas implementaciones de Azure Pack de Windows para proveedores de servicios y organizaciones empresariales. Y el muchacho, qué aprendimos ... Prometí entonces que si se requiere ningún cambio en el procedimiento que había que actualizar el blog. Decidí crear un blog nuevo por completo, ya que hay mucho que discutir.

Windows Azure Pack es una aplicación que consiste en una capa web y un nivel de base de datos. La capa web puede ser instalado en una configuración distribuida y permite una alta disponibilidad mediante el uso de equilibrio de carga. El nivel de base de datos de la agrupación aprovecha para alta disponibilidad (con SQL o SQL AlwaysOn CFM). Esto no ha cambiado en comparación con los servicios de Windows Azure para Windows Server.

Autenticación en Azure Pack de Windows fue objeto de algunos cambios graves. Mucho se ha blogueado en la actualización de las direcciones URL de cuatro componentes de Windows Azure Paquete:

  • sitio inquilino
  • Arrendatario del sitio de autenticación
  • administrador del sitio
  • Sitio de autenticación del administrador

Además de los cambios en la configuración de IIS para estos sitios, también tienen referencias en la base de datos que necesitan ser actualizados. Nos encontramos con que hay más componentes Azure Pack de Windows que necesitan ser actualizados para alta disponibilidad. Si sólo actualizar estos cuatro componentes y se apagó el primer servidor de administración configurado en el entorno de sus servicios aún no están disponibles, a pesar del balanceo de carga de estos cuatro componentes.

Este blog es una guía para la configuración de equilibrio de carga y alta disponibilidad para Pack de Windows Azure. En él se describirán los pasos para configurar Azure Pack de Windows después de una instalación por defecto. También se describe el paso a tomar en el nivel de datos configurado con AlwaysOn SQL después de una instalación por defecto. Si necesita orientación para configurar un clúster de SQL AlwaysOn puede utilizar.

1. Diseño

En un escenario que he descrito configuración distribuida por Azure Pack de Windows. En este diseño se dividieron los roles inquilino y las Funciones de administrador.

Los siguientes componentes instalados en donde los roles.

Los Roles de inquilinos

  • sitio inquilino
  • Arrendatario del sitio de autenticación
  • API pública inquilino

El rol de administración

  • administrador del sitio
  • Sitio de autenticación del administrador
  • API de administración
  • API inquilino
  • PowerShell API
  • Analizador de procedimientos recomendados

A pesar de que se describe los pasos para configurar el sitio de autenticación de empresa y el sitio de administración de autenticación, por que no dejar caer los dos sitios de autenticación para entornos de producción y el uso de AD FS en su lugar. Los pasos de configuración de AD FS para son similares, por lo que puede utilizar las secuencias de comandos desde este blog para ambos escenarios.

2. Alta Disponibilidad

Pack de Windows Azure almacena su información en bases de datos SQL, que se puede hacer alta disponible con la agrupación. equilibradores de carga se pueden utilizar para habilitar el equilibrio de carga y alta disponibilidad para el nivel de servidor web.

Después de la configuración inicial de los siguientes pasos se deben realizar para preparar Pack de Windows Azure para equilibrar la carga.

    Crear registros DNS de importación certificado de confianza de los servidores Web cambiar los enlaces de directorio virtual para definir las variables de scripts de PowerShell Actualización de la base de datos con los nuevos criterios de valoración Actualización de los criterios de valoración de la federación de los sitios de autenticación Actualización de los criterios de valoración de proveedores de recursos Opcional: Configurar una página web para el proceso de validación equilibrador de carga

2.1 Crear registros DNS

Para la mayoría de los seres humanos (no, no se frikis) es más fácil recordar un simple nombre de una dirección IP. DNS es un sistema de nomenclatura que traduce los nombres en direcciones IP y viceversa. Además, permite una sencilla convención de nomenclatura para Ventana Azul Paquete que los inquilinos y los administradores pueden recordar fácilmente. Los siguientes registros deben crearse en una zona DNS, que formará FQDN y luego se puede utilizar en la configuración de Azure Pack de Windows.

Nombre Tipo de registro Valor propietario de A Dirección IP del equilibrador de carga Tenant Papel de inicio de sesión una dirección IP del equilibrador de carga Tenant Papel API Una dirección IP del equilibrador de carga Papel Tenant admin Una dirección IP del equilibrador de carga de papel de administrador adminlogon una dirección IP del equilibrador de carga de papel de administrador

2.2 Importar certificado de servidor Web de confianza

Después de una instalación predeterminada de Windows Azure paquete, los sitios web están configurados con certificados firmados. Para evitar que los usuarios se les solicite con advertencias de certificado que necesitamos para crear e importar un certificado de servidor Web. Para evitar que los usuarios se les solicite con una advertencia de seguridad del certificado que se utiliza debe cumplir con las siguientes normas.

  • El certificado no debe haber caducado
  • El emisor del certificado debe ser de confianza por parte del cliente
  • El nombre de dominio completo de la solicitud del usuario debe coincidir con el nombre común en el certificado

Dado que varios sitios se están ejecutando en el mismo servidor, podemos cumplir con estas normas, solicitando

  • un certificado de servidor web con nombres de sujeto alternativo, que contiene los nombres de dominio completos de todas las URL que le gustaría proporcionar este certificado (puede contener múltiples dominios)
  • un certificado de servidor web con un comodín, que coincida con el dominio de los FQDN de todas las URL que le gustaría proporcionar este certificado (sólo puede contener un dominio)

El certificado se puede solicitar

  • una autoridad certificadora interna, si los clientes están utilizando máquinas que son miembros de la misma infraestructura de dominio en la CA interna
  • una entidad de certificación pública, para todos los demás escenarios

El certificado, que contiene la clave privada (.pfx), se importa con la clave privada en la máquina de almacén de certificados personales del equipo local en todos los servidores de Windows Azure Paquete.

2.3 cambiar los enlaces de directorio virtual

Después de una instalación predeterminada de Windows Azure Pack de los sitios web están configurados para utilizar los puertos personalizados. Para permitir a los usuarios abrir el administrador del sitio y el inquilino del sitio con mayor facilidad, se recomienda cambiar los puertos predeterminados de los siguientes componentes

  • administrador del sitio
  • Sitio de autenticación del administrador
  • sitio inquilino
  • Arrendatario del sitio de autenticación
  • API pública inquilino

Un único servidor será el anfitrión de varios directorios virtuales en el mismo puerto SSL (443). Anteriormente esto no era posible fuera de la caja, debido a la incapacidad para trabajar con encabezados de host. Internet Information Server 8.5 proporciona una indicación Nombre del servidor (SNI) que permite a múltiples directorios virtuales que se ejecutan en el mismo puerto SSL (443), a través de la diferenciación de los encabezados de host.

administrador del sitio

IIS abierto sobre la función de servidor de Windows Azure Admin Pack. Haga clic derecho en el directorio virtual Mgmtvc-AdminSite y seleccione Modificar enlaces. Seleccione los enlaces existentes y haga clic en Editar. Cambiar el puerto a 443. Especificar el FQDN (véase la tabla en la sección 2.1) para el administrador del sitio. Activar la marca de verificación Requerir de servidor de nombres de indicación y seleccionar el certificado de servidor Web (que fue importado como se describe en la sección 2.2).

Presentar los cambios

Sitio de autenticación del administrador

Haga clic derecho en el directorio virtual Mgmtvc-WindowsAuthSite y seleccione Modificar enlaces. Seleccione los enlaces existentes y haga clic en Editar. Cambiar el puerto a 443. Especificar el FQDN (véase la tabla en la sección 2.1) para la autenticación del sitio de administración. Activar la marca de verificación Requerir de servidor de nombres de indicación y seleccionar el certificado de servidor Web (que fue importado como se describe en la sección 2.2).

Presentar los cambios.

sitio inquilino

Abra IIS en los servidores de Windows Azure Paquete que tener el carácter de arrendatario. Haga clic derecho en el directorio virtual Mgmtvc-TenantSite y seleccione Modificar enlaces. Seleccione los enlaces existentes y haga clic en Editar. Cambiar el puerto a 443. Especificar el FQDN para el Sitio del arrendatario. Activar la marca de verificación Requerir de servidor de nombres de indicación y seleccionar el certificado de servidor Web (que fue importado como se describe en la sección 2.2).

Presentar los cambios

Arrendatario del sitio de autenticación

Haga clic derecho en el directorio virtual Mgmtvc-AuthSite y seleccione Modificar enlaces. Seleccione los enlaces existentes y haga clic en Editar. Cambiar el puerto a 443. Especificar el FQDN para el sitio de autenticación. Activar la marca de verificación Requerir de servidor de nombres de indicación y seleccionar el certificado de servidor Web (que fue importado como se describe en la sección 2.2).

Presentar los cambios

API pública inquilino

Haga clic derecho en el directorio virtual MgmtSvc-TenantPublicAPI y seleccione Modificar enlaces. Seleccione los enlaces existentes y haga clic en Editar. Cambiar el puerto a 443. Especificar el FQDN de la API pública del arrendatario. No habilite la marca de verificación Requerir de servidor de nombres de indicación y seleccione el certificado de servidor Web (que fue importado como se describe en la sección 2.2).

Presentar los cambios.

referencias FQDN en las bases de datos de Windows Azure Paquete

Windows Azure Pack también almacena las referencias de los sitios web en sus bases de datos. Estos valores necesitan ser actualizados. La mayoría de los blogs de configuración a través de Internet (incluyendo los que hice anteriormente) se actualizarán las siguientes referencias de componentes de Windows Azure Paquete.

  • administrador del sitio
  • Sitio de autenticación del administrador
  • sitio inquilino
  • Arrendatario del sitio de autenticación

Nos encontramos con que la alta disponibilidad de Azul Pack de Windows depende de los componentes adicionales que también necesitan ser actualizados y se añade a los equilibradores de carga.

  • API de administración
  • API inquilino
  • API pública inquilino

Cuando estos componentes no se actualizan y el servidor Azure Pack de Windows primera configurado que tiene las funciones de administrador no está disponible, el inquilino es capaz de iniciar sesión en el sitio de inquilino, pero se presenta con signos de admiración en cada elemento del menú y no es capaz de interactuar o incluso ver a sus servicios.

Esto es causado por las referencias que están codificados duro para el FQDN del servidor de Windows Azure Paquete primera configurado que tiene las funciones de administrador.

proveedores de recursos adicionales también tienen referencias en la base de datos. Estos proveedores de recursos necesitan ser actualizadas así.

  • Market Place
  • Servicio de uso
  • Supervisión

Los pasos siguientes funcionarán como una sola secuencia de comandos, pero hemos dividido en secciones individuales para explicar cada parte del guión. Para ejecutar los cmdlets se requiere el componente API de Windows Azure Paquete PowerShell, que se pueden instalar a través del Instalador de plataforma web. El componente API de Windows Azure Paquete PowerShell debe actualizarse para que al menos el paquete 1.

2.4 Definición de variables de scripts de PowerShell

Abra una consola de PowerShell en un servidor de Windows Azure paquete que contiene los roles de administrador y ejecute los siguientes cmdlets para crear las variables que se utilizan a lo largo de los próximos pasos.

Potencia Shell Import-Module MgmtSvcAdmin ## opciones de Entorno # SQL Server AlwaysOn escucha de DNS que contiene las bases de datos de Windows Azure Paquete $ servidor = "DMZ-MGT-SQL" # Cuenta sa de SQL Server $ Id de usuario = "sa" # Contraseña sa de SQL Server $ Password = "password" $ PortalconnectionString = "Datos de origen = $ servidor; Initial Catalog = Microsoft.MgmtSvc.PortalConfigStore; User Id = $ id de usuario; contraseña = $ password" ## Definir los FQDN y los puertos deseados # Sitio de administración $ AdminSiteLB = "admin.hyper-v.nu" $ AdminSitePort = "443" # Sitio autenticación de administración $ WinAuthSiteLB = "adminlogon.hyper-v.nu" $ WinAuthSitePort = "443" # El inquilino del Sitio $ TenantSiteLB = "manage.hyper-v.nu" $ TenantSitePort = "443" # El inquilino de autenticación del sitio $ TenantAuthSiteLB = "logon.hyper-v.nu" $ TenantAuthSitePort = "443" API de administración # $ AdminApiLB = "admin.hyper-v.nu" $ AdminApiPort = "30004" # Tenant API $ TenantApiLB = "admin.hyper-v.nu" $ TenantApiPort = "30005" # Tenant API pública $ TenantPublicApiLB = "api.hyper-v.nu" $ TenantPublicApiPort ="443" # Definir los criterios de valoración de la federación $ MgmtStoreConnectionString = "Datos de origen = $ servidor; Initial Catalog = Microsoft.MgmtSvc.Store; User Id = sa; contraseña = $ password" $ ConnectionString = "Data Source = $ servidor; User Id = $ id de usuario; contraseña = $ password" $ TenantMetadataEndpoint = " $ AdminMetadataEndpoint = " $ AdminSiteMetadataEndpoint = " $ TenantSiteMetadataEndpoint = " $ AdminApiUri = " $ WindowsAuthSite = " # credenciales para realizar acciones Credencial $ = Get-Credential $ Token = Get-MgmtSvcToken -Tipo de Windows -AuthenticationSite $ windowsAuthSite -ClientRealm "-Manual $ credencial -DisableCertificateValidation 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 Import-Module MgmtSvcAdmin ## Medio Ambiente # settings SQL Server AlwaysOn escucha de DNS que contiene el pack de Windows Azure bases de datos de servidor $ = "DMZ-MGT-SQL" $ # cuenta sa de SQL Server ID de usuario = "sa" servidor contraseña de sa contraseña # $ sql = "contraseña" $ PortalconnectionString= "Data Source = $ servidor; Initial Catalog = Microsoft.MgmtSvc.PortalConfigStore; User Id = $ id de usuario; contraseña = $ password" ## Definir los FQDN y los puertos deseados # sitio de administración $ AdminSiteLB = "admin.hyper-v.nu "AdminSitePort $ =" 443 "# Administrador de autenticación de Site $ WinAuthSiteLB =" adminlogon.hyper-v.nu "WinAuthSitePort $ =" 443 "# $ Tenant sitio TenantSiteLB =" manage.hyper-v.nu "TenantSitePort $ =" 443 " # El inquilino de autenticación del sitio TenantAuthSiteLB $ = "logon.hyper-v.nu" TenantAuthSitePort $ = "443" # $ AdminApiLB administrar el API = "admin.hyper-v.nu" AdminApiPort $ = "30004" API # Tenant $ TenantApiLB = " admin.hyper-v.nu "TenantApiPort $ =" 30005 "# $ inquilino Pública API TenantPublicApiLB =" api.hyper-v.nu "TenantPublicApiPort $ =" 443 "# Definir la federación puntos finales MgmtStoreConnectionString $ =" Fuente = $ servidor de datos ; Initial Catalog = Microsoft.MgmtSvc.Store; User Id = sa; contraseña = $ password "$ ConnectionString =" Data Source = $ servidor; User Id = $ id de usuario; contraseña = $ password "TenantMetadataEndpoint $ =" $ AdminMetadataEndpoint = "$ AdminSiteMetadataEndpoint = "$ TenantSiteMetadataEndpoint =" $ adminApiUri = "$ windowsAuthSite =" # credenciales para realizar acciones de credenciales $ = Get-Credential $ token = Get-MgmtSvcToken -Tipo de Windows -AuthenticationSite $ windowsAuthSite -ClientRealm "-DisableCertificateValidation -El usuario $ credenciales

2.5 Actualización de la base de datos con los nuevos criterios de valoración

Para actualizaciones FQDN en la base de datos, ejecute los siguientes cmdlets en la misma sesión de la consola de PowerShell donde las variables de la sección anterior, donde definidos.

# Azure componentes del paquete de Windows para reconfigurar apuntan a cargar balanceadores Set-MgmtSvcFqdn -nameSpace AdminSite -FQDN $ AdminSiteLB -Server $ servidor -Puerto $ AdminSitePort Set-MgmtSvcFqdn -nameSpace AuthSite -FQDN $ TenantAuthSiteLB -ConnectionString $ PortalconnectionString -Puerto $ TenantAuthSitePort Set-MgmtSvcFqdn -nameSpace AdminAPI -FQDN $ AdminApiLB -ConnectionString $ PortalconnectionString -Puerto $ AdminApiPort Set-MgmtSvcFqdn -nameSpace TenantSite -FQDN $ TenantSiteLB -ConnectionString $ PortalconnectionString -Puerto $ TenantSitePort Set-MgmtSvcFqdn -nameSpace WindowsAuthSite -FQDN $ WinAuthSiteLB -ConnectionString $ PortalconnectionString -Puerto $ WinAuthSitePort Set-MgmtSvcFqdn -nameSpace TenantApi -FQDN $ TenantApiLB -Puerto $ TenantApiPort -Server $ servidor Set-MgmtSvcFqdn -nameSpace TenantPublicApi -FQDN $ TenantPublicApiLB -ConnectionString $ PortalconnectionString -Puerto $ TenantPublicApiPort 1 2 3 4 5 6 7 8 # componentes de Windows Azure Paquete de reconfiguración para que apunte a cargar equilibradores Set - MgmtSvcFqdn- Espacio de nombres AdminSite - FQDN $ AdminSiteLB - Servidor $ servidor - Puerto $ AdminSitePort Set - MgmtSvcFqdn - Espacio de nombres AuthSite - FQDN $ TenantAuthSiteLB - ConnectionString $ PortalconnectionString - Puerto $ TenantAuthSitePort Set - MgmtSvcFqdn - AdminAPI Espacio de nombres - FQDN $ AdminApiLB - ConnectionString $ PortalconnectionString - Puerto $ AdminApiPort Set - MgmtSvcFqdn - Espacio de nombres TenantSite - FQDN $ TenantSiteLB - ConnectionString $ PortalconnectionString - Puerto $ TenantSitePort Set - MgmtSvcFqdn - Espacio de nombres WindowsAuthSite - FQDN $ WinAuthSiteLB - ConnectionString $ PortalconnectionString - Puerto $ WinAuthSitePort Set - MgmtSvcFqdn - Espacio de nombres TenantApi - FQDN $ TenantApiLB - Puerto $ TenantApiPort - Definir servidor de $ servidor - MgmtSvcFqdn - Espacio de nombres TenantPublicApi - FQDN $ TenantPublicApiLB - ConnectionString $ PortalconnectionString - Puerto $ TenantPublicApiPort

2.6 Actualización de los criterios de valoración de la federación de los sitios de autenticación

El administrador del sitio web y el inquilino tienen una referencia a la localización de sus sitios de autenticación correspondientes. Estas referencias deben actualizarse con los nuevos valores. Los sitios de autenticación tienen una referencia al administrador del sitio y el sitio del arrendatario. Para actualizaciones de estos valores se ejecutan los siguientes cmdlets en la misma sesión de la consola de PowerShell donde las variables de la sección 2.4 donde se hayan definido.

# Vuelva a establecer la confianza entre los sitios de autenticación y gestión de los portales Set-MgmtSvcRelyingPartySettings -Target Tenant -MetadataEndpoint $ TenantMetadataEndpoint -DisableCertificateValidation -PortalConnectionString $ PortalconnectionString -ManagementConnectionString $ MgmtStoreConnectionString Set-MgmtSvcRelyingPartySettings -Target administración -MetadataEndpoint $ AdminMetadataEndpoint -DisableCertificateValidation -PortalConnectionString $ PortalconnectionString -ManagementConnectionString $ MgmtStoreConnectionString Set-MgmtSvcIdentityProviderSettings -Target membresía -MetadataEndpoint $ TenantSiteMetadataEndpoint -ConnectionString $ ConnectionString -DisableCertificateValidation Set-MgmtSvcIdentityProviderSettings -Target de Windows -MetadataEndpoint $ AdminSiteMetadataEndpoint -ConnectionString $ ConnectionString -DisableCertificateValidation 1 2 3 4 5 # Re-establecer la confianza entre los sitios de autenticación y gestión de los portales Set - MgmtSvcRelyingPartySettings - inquilino Target -MetadataEndpoint $ TenantMetadataEndpoint - DisableCertificateValidation - PortalConnectionString $ PortalconnectionString - ManagementConnectionString $ MgmtStoreConnectionString Set - MgmtSvcRelyingPartySettings - Objetivo admin - MetadataEndpoint $ AdminMetadataEndpoint - DisableCertificateValidation - PortalConnectionString $ PortalconnectionString - ManagementConnectionString $ MgmtStoreConnectionString Set - MgmtSvcIdentityProviderSettings - Composición Objetivo - MetadataEndpoint $ TenantSiteMetadataEndpoint - ConnectionString $ ConnectionString - DisableCertificateValidation Set - MgmtSvcIdentityProviderSettings - Objetivo de Windows - MetadataEndpoint $ AdminSiteMetadataEndpoint - ConnectionString $ ConnectionString - DisableCertificateValidation

2.7 Actualización de los criterios de valoración de proveedores de recursos

Windows Azure Pack proporciona acceso a los recursos a través de criterios de valoración de proveedores de recursos. Las bases de datos de Windows Azure Paquete contienen referencias a estos criterios de valoración de proveedores de recursos. Estas referencias también deben actualizarse con los nuevos valores. Para obtener una lista de todos los proveedores de recursos, ejecute los siguientes cmdlets en la misma sesión de la consola de PowerShell donde las variables de la sección 2.4 donde se hayan definido.

# Obtener una lista de proveedores de recursos en la implementación Get-MgmtSvcResourceProvider -IncludeSystemResourceProviders -AdminUri $ adminApiUri -Token $ -DisableCertificateValidation contador | Format-List-Propiedades "Nombre" 1 # 2 Obtener una lista de proveedores de recursos de la instalación por conseguir - MgmtSvcResourceProvider - IncludeSystemResourceProviders - AdminUri $ adminApiUri - Token $ contador - DisableCertificateValidation | Formato - Lista - propiedad "Nombre"

Cada proveedor de recursos se configura con un dos puntos finales. Un punto extremo del administrador y un punto final del arrendatario. Para obtener una lista de estos dos valores para todos los proveedores de recursos se ejecutan los siguientes cmdlets en la misma sesión de la consola de PowerShell donde las variables de la sección 2.4 donde se hayan definido. (Gracias a Menno para el formato).

# Obtener una lista de proveedores de recursos con los valores de los límites configurados actuales $ Rp = Get-MgmtSvcResourceProvider -IncludeSystemResourceProviders -AdminUri $ adminApiUri -Token $ -DisableCertificateValidation contador $ Rp | Seleccionar Nombre, @ {e = {$ _. AdminEndPoint.ForwardingAddress}}, {@ e = {$ _. TenantEndpoint.ForwardingAddress}} 1 2 3 # Obtener una lista de proveedores de recursos con los valores de los límites configurados actuales $ rp = Get - MgmtSvcResourceProvider - IncludeSystemResourceProviders - AdminUri $ adminApiUri - $ contador Token - DisableCertificateValidation $ RP | Seleccionar nombre, @ {e = {$ _. AdminEndPoint. ForwardingAddress}}, {@ e = {$ _. TenantEndpoint. Dirección de reenvío } }

Para definir el nuevo valor de punto final para un proveedor de recursos ejecute el siguiente cmdlet en la misma sesión de la consola de PowerShell donde las variables de la sección 2.4, donde definidos.

# fqdn nuevos para el mercado de proveedores de recursos $ ResourceProviderName = "mercado" $ AdminEndpoint = " $ TenantEndpoint = " $ UsageEndpoint = $ null $ HealthCheckEndpoint = $ null $ = $ NotificationEndpoint nulos 1 2 3 4 5 6 7 # fqdn nuevos para el mercado de proveedores de recursos resourceProviderName $ = "mercado" adminEndpoint $ = "$ tenantEndpoint =" $ usageEndpoint = $ null $ healthCheckEndpoint = $ null $ notificationEndpoint = $ null

Para actualiza el valor de punto final para un proveedor de recursos ejecute los siguientes cmdlets en la misma sesión de la consola de PowerShell donde las variables de la sección 2.4 donde se hayan definido.

# Repita el paso siguiente para cada proveedor de recursos, la actualización de los criterios de valoración según el caso # Adquirir el proveedor de recursos que desea modificar $ Rp = Get-MgmtSvcResourceProvider -Nombre $ resourceProviderName -IncludeSystemResourceProviders -AdminUri $ adminApiUri -Token $ -DisableCertificateValidation contador # Actualizar todos los puntos finales utilizando los nuevos fqdn: if ($ rp.AdminEndpoint -y $ adminEndpoint) { # Actualiza el punto final $ Rp.AdminEndpoint.ForwardingAddress = New-Object System.Uri ($ adminEndpoint) } if ($ rp.TenantEndpoint -y $ tenantEndpoint) { # Actualiza el punto final $ Rp.TenantEndpoint.ForwardingAddress = New-Object System.Uri ($ tenantEndpoint) } if ($ rp.UsageEndpoint -y $ usageEndpoint) { # Actualiza el punto final $ Rp.TenantEndpoint.ForwardingAddress = New-Object System.Uri ($ usageEndpoint) } if ($ rp.HealthCheckEndpoint -y $ healthCheckEndpoint) { # Actualiza el punto final $ Rp.TenantEndpoint.ForwardingAddress = New-Object System.Uri ($ healthCheckEndpoint) } if ($ rp.NotificationEndpoint -y$ NotificationEndpoint) { # Actualiza el punto final $ Rp.TenantEndpoint.ForwardingAddress = New-Object System.Uri ($ notificationEndpoint) } Set-MgmtSvcResourceProvider -ResourceProvider $ rp -AdminUri $ adminApiUri -Token $ contador -DisableCertificateValidation -Force 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 # repita el paso por debajo para cada proveedor de recursos, la actualización de los criterios de valoración, según proceda # adquirir el proveedor de recursos que desea modificar $ rp = Get - MgmtSvcResourceProvider - Nombre $ resourceProviderName - IncludeSystemResourceProviders - AdminUri $ adminApiUri - Token $ contador - DisableCertificateValidation # actualiza todos los puntos finales que utilizan el nuevo fqdn (. $ rp adminEndpoint - y $ adminEndpoint): si {# actualiza el punto final $ rp. AdminEndpoint. ForwardingAddress = Nuevo - Sistema de objetos. Uri ($ adminEndpoint)} if ($ rp TenantEndpoint -. Y $ tenantEndpoint) {# actualiza el punto final $ rp. TenantEndpoint. ForwardingAddress = Nuevo - Sistema de objetos. Uri ($tenantEndpoint)} if ($ rp UsageEndpoint -. y $ usageEndpoint) {# actualiza el punto final $ rp. TenantEndpoint. ForwardingAddress = Nuevo - Sistema de objetos. Uri ($ usageEndpoint)} if ($ rp HealthCheckEndpoint -. Y $ healthCheckEndpoint) {# actualiza el punto final $ rp. TenantEndpoint. ForwardingAddress = Nuevo - Sistema de objetos. Uri ($ healthCheckEndpoint)} if ($ rp NotificationEndpoint -. Y $ notificationEndpoint) {# actualiza el punto final $ rp. TenantEndpoint. ForwardingAddress = Nuevo - Sistema de objetos. Uri ($ notificationEndpoint)} Set - MgmtSvcResourceProvider - resourceProvider $ rp - AdminUri $ adminApiUri - Token $ contador - DisableCertificateValidation - Fuerza

Repetir el anterior para el Seguimiento de proveedores de recursos

$ ResourceProviderName = "seguimiento" $ AdminEndpoint = " $ TenantEndpoint = " $ UsageEndpoint = $ null $ HealthCheckEndpoint = $ null $ NotificationEndpoint = $ null 1 2 3 4 5 6 $ resourceProviderName = "seguimiento" adminEndpoint $ = "$ tenantEndpoint =" $ usageEndpoint = $ null $ healthCheckEndpoint = $ null $ notificationEndpoint = $ null

Y el proveedor de recursos UsageService

$ ResourceProviderName = "usageservice" $ AdminEndpoint = " $ TenantEndpoint = " $ UsageEndpoint = $ null $ HealthCheckEndpoint = $ null $ NotificationEndpoint = $ null 1 2 3 4 5 6 $ resourceProviderName = "usageservice" adminEndpoint $ = "$ tenantEndpoint =" $ usageEndpoint = $ null $ healthCheckEndpoint = $ null $ notificationEndpoint = $ null

Para obtener una lista con los valores actualizados se ejecutan los siguientes cmdlets en la misma sesión de la consola de PowerShell donde las variables de la sección 2.4, donde definidos.

# Obtener una lista de proveedores de recursos con los valores de los límites configurados actuales $ Rp = Get-MgmtSvcResourceProvider -IncludeSystemResourceProviders -AdminUri $ adminApiUri -Token $ -DisableCertificateValidation contador $ Rp | Seleccionar Nombre, @ {e = {$ _. AdminEndPoint.ForwardingAddress}}, {@ e = {$ _. TenantEndpoint.ForwardingAddress}} 1 2 3 # Obtener una lista de proveedores de recursos con los valores de los límites configurados actuales $ rp = Get - MgmtSvcResourceProvider - IncludeSystemResourceProviders - AdminUri $ adminApiUri - $ contador Token - DisableCertificateValidation $ RP | Seleccionar nombre, @ {e = {$ _. AdminEndPoint. ForwardingAddress}}, {@ e = {$ _. TenantEndpoint. Dirección de reenvío } }

2.8 equilibrador de carga

Ahora que todos los servicios están configurados con los nuevos valores que necesitamos para definir estos valores en el equilibrador de carga. Podemos dividir estos servicios en dos listas. Una lista de los servicios que se dirige a la capa web que mantienen las funciones de administrador de Windows Azure Paquete.

FQDN del puerto de servicio 443 del sitio de administración 30018 Market Place 30020 30022 Monitoreo de uso del servicio API 30004 30005 administrar el API de administración de Inquilinos 443 Autenticación del sitio

Y una lista de servicios que están dirigidos a la capa web que mantienen los roles de inquilinos Azure Pack de Windows.

FQDN del puerto de servicio 443 443 Sitio Tenant Inquilino autenticación del sitio 443 del arrendatario API pública

proceso de validación equilibrador de carga 2.9

La capa web en Azure Pack de Windows es una aplicación sin estado. Todos los datos de aplicación se almacena en el nivel de base de datos. Un equilibrador de carga se utiliza para equilibrar la carga de la solicitud a la capa web Pack de Windows Azure. Esto puede ser peticiones de los usuarios finales, administradores o incluso pedidos internos del sistema a una API.

El equilibrador de carga de hardware pueden utilizar diferentes métodos para la validación de la disponibilidad de un nodo en una configuración. Un par de ejemplos.

  • Disponibilidad basado en pings a un nodo.
  • Basado en la disponibilidad de solicitar una página Web IIS
  • Disponibilidad basa en la lógica de aplicación integrada en una página web IIS.

Disponibilidad basado en pings a un nodo.

En esta configuración, el equilibrador de carga envía pings a cada nodo en una configuración. El equilibrador de carga marca un nodo activo, siempre y cuando los pings contestan. Las peticiones se envían a ese nodo. Cuando el equilibrador de carga recibe los tiempos de espera del nodo se marca como inactivo y solicitudes ya no se envían a este nodo.

Este método de detección de disponibilidad es fácil de implementar, pero no detecta problemas con la disponibilidad de los servicios que se ejecutan en el sistema operativo.

Basado en la disponibilidad de solicitar una página Web IIS

En esta configuración, el equilibrador de carga solicita una página de IIS. Si la página muestra un cierto valor como "servidor está en funcionamiento" el equilibrador de carga marca un nodo activo. Las peticiones se envían a ese nodo. Cuando el equilibrador de carga recibe una tiempos de espera de la página, el nodo se marca como inactivo y solicitudes ya no se envían a este nodo.

Este método de detección disponibilidad requiere pasos adicionales para configurar, pero no detectar problemas con la disponibilidad de los servicios web que se ejecutan en el sistema operativo. Para configurar esta configuración se crea una página web con contenido similar al

XHTML <P> El servidor está en funcionamiento </ p>  1 2 3 4 5 servidor es en servicio

Crear un archivo llamado Default.aspx y colocarlo en el directorio c: \ inetpub carpeta \ wwwroot \ HealthCheck. Configurar el sitio web predeterminado en IIS con un sitio adicional enlace con el puerto SSL 443, con el mismo certificado SSL utilizado por los otros servicios de este nivel. Configurar el equilibrador de carga con los ajustes correspondientes.

Nombre del servidor de indicación (SNI) no está configurado. La mayoría de los equilibradores de carga no son capaces de utilizar la función de SNI y por lo tanto está investigando a la página web que no está configurado con el SNI. Puede probar la página con la apertura en el servidor de Windows Azure paquete.

Disponibilidad basa en la lógica de aplicación integrada en una página web IIS.

En esta configuración, el equilibrador de carga solicita una página de IIS. lógica de la aplicación adicional está integrado en la página que realiza una consulta a la base de datos SQL que se ejecuta en el nivel de datos. La página sólo mostrará el valor de "servidor está en funcionamiento" si toda la lógica de aplicación es responda correctamente. Si la página muestra el valor "Servidor está en marcha" el equilibrador de carga marca un nodo activo. Las peticiones se envían a ese nodo. Cuando el equilibrador de carga recibe una página o tiempos de espera de la muestra otro valor, el nodo se marca como inactivo y solicitudes ya no se envían a este nodo.

Este método de detección disponibilidad requiere una configuración más compleja con la lógica de la aplicación, pero no detectar problemas con la disponibilidad de los servicios web y dentro de la capa de datos.

3. SQL de alta disponibilidad

Cuando haya configurado Azure Pack de Windows y SQL especificado el AlwaysOn DNS Listener para la entrada de SQL, las bases de datos de Windows Azure Paquete están configurados en el nodo primario del clúster de SQL. Deben añadirse al grupo de disponibilidad.

  • Iniciar sesión en el nodo principal de SQL
  • Windows Azure para Windows Server utiliza cinco bases de datos Microsoft.MgmtSvc.Config Microsoft.MgmtSvc.PortalConfigStore Microsoft.MgmtSvc.Store Microsoft.MgmtSvc.Usage Microsoft.MgmtSvc.WebAppGallery
  • Cambiar el modelo de recuperación de todas las cinco bases de datos a pleno y luego hacer una copia de seguridad de todas las bases de datos de cinco
  • Ejecutar la base de datos Agregar al asistente del grupo de disponibilidad y añadir las cinco bases de datos del grupo de disponibilidad

El grupo de disponibilidad debe contener ahora todas las bases de datos de Windows Azure Paquete.

SQL grupos de disponibilidad de bases de datos, pero no se replica cuentas de usuario. SQL Server proporciona una opción llamada contenía las bases de datos que permitirá a los usuarios contenidos que ser creado contra los consumidores de nivel de instancia. En caso de conmutación por error, todos contenían las bases de datos y contenidos a los usuarios se replican. Pack de Windows Azure hace la función de base de datos independiente, pero sólo para las bases de datos de inquilinos (base de datos como servicio) y no para las bases de datos de configuración de Windows Azure mismo paquete. Así que además de la adición de las bases de datos para el grupo de disponibilidad también tenemos que replicar las cuentas de SQL utilizadas para Azure Pack de Windows al nodo secundario en el grupo de disponibilidad.

La apertura de SQL Server Management Studio para comparar los inicios de sesión en ambos servidores SQL Server mostrará que la configuración de Windows Azure paquete creado un grupo de cuentas de usuario en el nodo primario que no están disponibles en el secundario.

Las cuentas de usuario creadas por Pack de Windows Azure son cuentas de SQL Server y no cuentas de dominio. Incluso si logramos crear exactamente las mismas cuentas no sabríamos cómo coincide con la contraseña que fueron creados por el instalador. Es posible exportar las cuentas de usuario (cuentas de dominio y SQL) a un archivo de texto con la clave hash siguiendo.

Básicamente se crean dos procedimientos almacenados mediante la ejecución del script en el artículo de la base de conocimientos en su base de datos maestra. Ejecutar el script en el nodo principal (que contiene las cuentas de usuario local).

Abrir una nueva consulta y ejecute sp_help_revlogin EXEC

La salida del procedimiento almacenado contiene las cuentas de dominio y SQL.

Comparar la salida a las cuentas de usuario en el nodo SQL secundaria y quitar las líneas que contienen las cuentas de usuario que ya están disponibles en el nodo secundario. Conectar con el SQL Server Management Studio de nodo secundario y abrir una nueva pantalla de consulta. Pega el resultado del procedimiento almacenado que acaba de ajustar y ejecutarlo. Esto creará las cuentas SQL locales requeridas en ese nodo con las contraseñas correctas.

Con este paso Completa Hemos configurado nuestro entorno Azure Pack de Windows para alta disponibilidad.

Más información

Puestos relacionados con: YARPP accionados por AdBistro

Previous Post     Next Post


TAGS


CATEGORIES

.