Guía de instalación

Este documento acompaña a los sitios web, las máquinas virtuales, el Portal de administración de servicios y la API de administración de servicios, y proporciona instrucciones de instalación paso a paso para el Portal de administración de servicios y los componentes API y Sitios web.

Topología de entorno

API y sitios del Portal de administración de servicios

La API y el Portal de administración de servicios constan de los siguientes componentes:

  1. Sitio de administradores para la administración de servicios: lugar donde los administradores pueden crear nubes de sitios web y nubes de máquinas virtuales, generar planes y administrar las suscripciones de los usuarios.

  2. Sitio de inquilinos para la administración de servicios: lugar donde los usuarios pueden suscribirse y crear sitios web, máquinas virtuales y bases de datos.

  3. API de administración de servicios: la capa de la API expone la funcionalidad para administrar servicios como sitios web, máquinas virtuales y bases de datos de aplicación en los sitios de administradores y de inquilinos mediante una interfaz unificada. La API de administración de servicios consta de 3 interfaces diferentes:

    • API de administración para la administración de servicios: expone funcionalidad para completar tareas administrativas desde el Sitio de administradores para la administración de servicios o mediante el uso de cmdlets de PowerShell.

      Nota

      Se recomienda instalar la API de administración en uno o en varios equipos situados detrás de un firewall o que sean inaccesibles desde Internet, ya que esta API está pensada para realizar tareas administrativas en toda la infraestructura.

    • API de inquilinos para la administración de servicios: permite a los usuarios finales, o inquilinos, administrar y configurar los servicios en la nube incluidos con el plan o los planes a los que se han suscrito.

      Nota

      Se recomienda instalar la API de inquilinos en uno o en varios equipos situados detrás de un firewall o que sean inaccesibles desde Internet, ya que ofrece la posibilidad de realizar operaciones críticas como crear y eliminar suscripciones, así como la manipulación de recursos entre suscripciones.

    • API pública de inquilinos para la administración de servicios: permite a los usuarios finales administrar y configurar servicios en la nube incluidos con el plan o los planes a los que se han suscrito. La API pública de inquilinos está diseñada para atender todas las necesidades de los usuarios finales que se suscriben a los diversos servicios ofrecidos por un proveedor de servicios de hosting.

      Nota

      Se recomienda instalar la API pública de inquilinos en uno o en varios equipos a los que los usuarios finales puedan obtener acceso a través de Internet.

Nota

Los sitios de administración de servicios y la API se pueden instalar en un solo equipo con la opción Portal de administración de servicios y la API de administración de servicios (instalación rápida) de Instalador de plataforma web. También es posible realizar una instalación distribuida si se instalan los diversos componentes en distintos equipos que puedan ofrecer mayor escala y rendimiento.

Roles de los sitios web

  • Controlador de sitios web: versión mejorada de Web Farm Framework (WFF) que aprovisiona y administra los roles de los sitios web.

  • API de REST de sitios web: API de administración de sitios web que se expone a través de un extremo REST.

  • Trabajos web: versión específica para sitios web del servidor web de IIS que procesa las solicitudes web del cliente. Los trabajadores web pueden “compartirse” o “reservarse”.

  • Front-end: versión específica para sitios web del Enrutamiento de solicitud de aplicaciones (ARR) que acepta solicitudes web de clientes, enruta solicitudes a los trabajos web y devuelve respuestas de los trabajos web a los clientes.

  • Publicador: versión específica para sitios web de WebDeploy y FTP que aporta una publicación transparente de contenidos para los clientes de WebMatrix, Visual Studio y FTP.

  • Servidor de archivos: proporciona servicios de archivos para hospedar contenido del sitio web.

Importante

Antes de agregar un rol de sitios web a un equipo, asegúrese de que la configuración de firewall del equipo permite el acceso de entrada a los servicios siguientes:

  • Instrumental de administración de Windows (WMI-In)

  • Instrumental de administración de Windows (DCOM-In)

  • Compartir archivos e impresoras (SMB-In)

Bases de datos

  • SQL Server: funcionalidad para la creación de bases de datos tanto independiente como para sitios web que necesitan una Base de datos SQL.

  • MySQL Server: funcionalidad para la creación de bases de datos tanto independiente como para sitios web que necesitan una Base de datos MySQL.

Máquinas virtuales

  • Virtual Machine Manager (VMM): proporciona la capacidad de crear máquinas virtuales, redes virtuales, plantillas y discos.

  • Service Provider Foundation (SPF): expone la capacidad de Virtual Machine Manager a través de la API de REST.

Nota

Esta guía de instalación no aborda la implementación de Virtual Machine Manager y SPF. Remítase a las guías de instalación de System Center 2012 SP1 para implementar la capacidad de la máquina virtual.

Arquitectura de la instalación de la Administración de servicios

Máquinas virtuales y requisitos del sistema

El Portal de administración de servicios y los componentes API y Sitios web se han diseñado para su ejecución en un mínimo de 7 equipos (estos equipos pueden ser virtuales). Además de estos equipos, se espera que haya uno o más servidores en el centro de datos que ejecuten SQL Server y MySQL Server de Microsoft.

SQL Server, MySQL Server y el servidor de archivos pueden coexistir entre sí y con el equipo host de Hyper-V, pero no deben instalarse en las mismas máquinas virtuales que otros roles de sitios web. Utilice equipos de SQL Server independientes, o instancias de SQL independientes, en el mismo equipo de SQL Server para aislar las bases de datos de configuración de los sitios web de las bases de datos de usuario y de sitios web.

Convención de nomenclatura

Se recomienda el uso de nombres descriptivos para los equipos en cada máquina, como por ejemplo:

  • SvcMgmtPortal: para la instalación rápida

  • SvcMgmtAdmin, SvcMgmtTenant, SvcMgtAdminAPI, SvcMgtTenantAPI, SvcMgtTenPubAPI: para la instalación distribuida

  • SitesController: controlador de nube de sitios web

  • SitesRESTAPI: capa de la API de REST de nube de sitios web

  • SitesFE: front-end de nube de sitios web

  • SitesPublisher: publicador de nube de sitios web

  • SitesWWS: trabajo web compartido de nube de sitios web

  • SitesWWR: trabajo web reservado de nube de sitios web

  • FileServer: servidor de archivos de nube de sitios web

Memoria

Para la API y Portal de administración de servicios, tenga previsto reservar al menos

  • 8 GB de RAM si los tres componentes se instalan con el programa de instalación rápida en el mismo equipo.

  • 4 GB de RAM para cada uno de los tres equipos si utiliza la instalación distribuida.

Para los equipos de los roles de los sitios web, asigne al menos el 4 GB de RAM a cada rol.

No utilice memoria dinámica.

Espacio en disco

  • Asigne al menos la cantidad mínima de espacio en disco según requiera el sistema operativo Windows Server 2012 para cada equipo.

  • Para el rol del servidor de archivos, asigne espacio en disco suficiente para el contenido generado por el usuario del sitio web.

Requisitos de software

  • Sistema operativo Windows Server 2012

  • Descargue el Instalador de plataforma web (WebPI)

  • Instale los siguientes elementos secuencialmente mediante WebPI:

    • Configuración recomendada de IIS

    • .NET Framework 3.5 SP1

    • .NET Framework 4.5

  • Deshabilite ESC de IE para administradores a través del Administrador de servidores.

  • Todas las actualizaciones disponibles de Windows y .NET Framework.

Importante

Siga este orden de instalación para garantizar el registro adecuado de los ensamblados de .NET Framework.

Entorno de red

Configure la intranet y el acceso a Internet para los equipos que ejecutan roles de los sitios web como se describe a continuación.

  • Acceso de entrada desde Internet: se debe poder obtener acceso a los siguientes roles desde Internet:

    • Front-end: para aceptar las solicitudes de cliente para sitios web.

    • Publicador: para aceptar las solicitudes de herramientas de publicación como clientes de WebMatrix y FTP.

    Otros roles de los sitios web no necesitan acceso de entrada a Internet, ya que no atienden directamente las solicitudes de los usuarios finales.

  • Acceso de salida a Internet: es importante que todas las máquinas virtuales de sitios web, incluidos los trabajos web, tengan acceso de salida web HTTP para descargar dependencias de software cuando se instalan los roles. Los sitios web requieren que los servidores tengan acceso de salida a Internet transparente. Un acceso de proxy web pero no es suficiente.

UAC para sitios web

En cada rol de sitios web, se debe deshabilitar UAC tal como se describe a continuación:

  • En cada equipo, ejecute el siguiente comando desde el símbolo del sistema con privilegios elevados:

    %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f

  • Reinicie el equipo.

    Nota

    Si ha iniciado sesión como usuario con privilegios de administrador en un equipo remoto con rol de nube de sitios web, puede deshabilitar UAC en el equipo remoto si ejecuta el siguiente comando en el símbolo del sistema con privilegios elevados:

    %windir%\System32\cmd.exe /k %windir%\System32\reg.exe ADD \\<machine_name>\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f

    Sustituya el nombre del equipo remoto con el rol de nube de servidor web por <nombre_equipo> para deshabilitar UAC en el equipo remoto.

Requisitos de entorno

Asignaciones públicas de DNS

De forma predeterminada, los sitios web se crean en un dominio predeterminado. Una vez creado un sitio web, los usuarios pueden agregar dominios personalizados a cada sitio web. Aunque los sitios web de inquilino se pueden configurar para admitir dominios personalizados, los sitios web no actualizan registros DNS personalizados.

Para un dominio determinado como MyCloud.com se deberían crear los siguientes registros A de DNS:

Nombre de host

IP para

*

Servidores Front-end

ftp

Servidores de publicación

publish

Servidores de publicación

www

Portal del inquilino de administración de servicios

@ (o vacío)

Portal del inquilino de administración de servicios

Este esquema de asignación permitiría a los usuarios iniciar sesión en http://www.mycloud.com y en http://mycloud.com para administrar sus sitios. Estos dos nombres de host se corresponden con los sitios web del portal que usuarios y administradores utilizan para administrar el software. Los portales se describen más adelante en esta guía.

En esta configuración, los sitios web que generan los usuarios se crean inicialmente con dominios secundarios como site1.mycloud.com, site2.mycloud.com, etc.

La publicación de contenido a través de la implementación web y FTP se sirve de publish.mycloud.com y ftp.mycloud.com respectivamente. La publicación de contenido a través de git utiliza *.scm.mycloud.com.

Nota

No hay ningún requisito relativo a disponer de un dominio especial para esta implementación. Puede utilizar un subdominio como my.yourdomain.com en un dominio existente.

Preparar el uso compartido de archivos (opcional)

Si se utiliza un servidor de archivos de Windows independiente, la preparación del servidor de archivos no es obligatoria y se hace de forma automatizada durante el proceso de instalación.

Sin embargo, si se usa un clúster de servidores de archivos o un dispositivo NAS, es preciso crear los siguientes recursos compartidos:

  • Recurso compartido de contenido: incorpora contenido del sitio web del inquilino.

  • Recurso compartido de certificados: contiene certificados personalizados de inquilino.

Además, deberá crear usuarios con los permisos siguientes:

Usuario

Permisos de recursos compartidos de contenido

Permisos de recursos compartidos de certificados

FileShareOwner

Lectura/escritura

Lectura/escritura

FileShareUser

Lectura/escritura

CertificateShareUser

Lectura/escritura

Nota

Los sitios web emplean una nueva tecnología de seguridad que no depende de los permisos de recursos compartidos de archivos de cada sitio web. De esta forma los sitios web pueden trabajar con implementaciones heterogéneas de almacenamiento de archivos como dispositivos NAS.

En servidores de archivos o clústeres de Windows, instale el rol de servicios de archivo y el servicio de rol del Administrador de recursos del servidor de archivos en el servidor de archivos mediante los comandos siguientes:

  • PowerShell.exe Enable-PSRemoting –Force

  • %windir%\system32\dism.exe /online /enable-feature /featurename:FSRM-Management /featurename:FSRM-Infrastructure

Preparación de la cuenta para roles

Cree las cuentas siguientes en los roles siguientes para permitir la comunicación entre ellos:

Nombre de usuario

Servidor de archivos

Publicador

API REST

Front-end

FileShareUser

X

X

FileShareOwner

X

X

CertificateShareUser

X

X

Nota

Al crear estas cuentas de usuario asegúrese de que se aplican las siguientes opciones:

  • El usuario debe cambiar la contraseña en el siguiente inicio de sesión no está activada.

  • El usuario no puede cambiar contraseña está activada.

  • La contraseña nunca expira está activada.

  • Si se utilizan cuentas locales (que no son de Active Directory), las contraseñas deben coincidir en los diferentes roles.

SQL y MySQL

Si no tiene instancias de SQL Server o MySQL Server, puede instalar SQL Server Express o MySQL 5.1 en uno de los equipos con la API y el Portal de administración de servicios. Para asegurar un rendimiento apropiado, se recomienda instalar SQL Server y MySQL en equipos diferentes.

Instalar SQL Server Express con WebPI

  1. Inicie el Instalador de plataforma web.

  2. Haga clic en Productos y seleccione Base de datos. Haga clic en el botón Agregar junto a SQL Server Express 2008 R2, Objetos de administración de SQL Server 2008 R2 y SQL Server 2008 R2 Management Studio Express con SP1, a continuación, haga clic en Instalar.

    Instalación de SQL Express con WebPI en la Administración de servicios

  3. Escriba una contraseña para la cuenta SA, vuelva a escribir la contraseña y haga clic en Continuar.

    Instalación de SQL Express con WebPI en la Administración de servicios

  4. Acepte los contratos de licencia. El Instalador de plataforma web instalará SQL Server Express.

Instalar MySQL Server

  1. Inicie el Instalador de plataforma web.

  2. Haga clic en Productos, seleccione Base de datos, haga clic en Agregar junto a MySQL Windows 5.1 y haga clic en Instalar.

    Instalación de My SQL Server de la Administración de servicios

  3. Escriba una contraseña para la cuenta raíz y haga clic en Continuar.

    Instalación de My SQL Server en la Administración de servicios

    MySQL para Windows 5.1 completará su instalación.

Preparación para SQL Server y SQL Server Express

Asegúrese de que los servidores de SQL que se utilizarán para almacenar la base de datos de configuración de los sitios web, así como cualquier base de datos por usuario o por sitio web tienen acceso remoto.

  1. Pruebe la conectividad IP y la resolución de nombres en todas las máquinas virtuales.

  2. Asegúrese de que los servidores de SQL tienen acceso remoto habilitado.

  3. Asegúrese de que los servidores de SQL tienen la autenticación de modo mixto habilitada.

  4. Habilite el protocolo TCP en los equipos de SQL Server.

    1. Para SQL Server, siga los pasos descritos en https://technet.microsoft.com/es-es/library/ms191294.aspx.

    2. Para SQL Server Express, utilice el Administrador de configuración de SQL Server para actualizar los puertos TCP. Haga clic en Inicio, Todos los programas, Microsoft SQL Server 2008 R2, Herramientas de configuración, Administrador de configuración de SQL Server para abrir el Administrador de configuración de SQL Server. Después, vaya a Protocolos para MSSQLSERVER y haga clic en el protocolo TCP/IP. Asegúrese de que el protocolo TCP/IP está habilitado.

    3. Vaya a la pestaña Direcciones IP y desplácese hasta IPAll. Actualice el puerto TCP a 1433 y asegúrese de que el puerto dinámico TCP está deshabilitado.

      Preparación de SQL Server para el Administrador de servicios

    4. Reinicie el servicio de SQL Server (SQLEXPRESS).

  5. Configure el Firewall de Windows para el acceso al motor de base de datos:

    1. Agregue el puerto 1433 TCP a las Reglas de entrada como se describe en https://technet.microsoft.com/es-es/library/ms175043.aspx.

    2. Agregue SqlBrowser.exe (c:\Archivos de programa (x86)\Microsoft SQL Server\90\Shared\sqlbrowser.exe) a las Reglas de entrada.

  6. Habilite el servicio SQL Server Browser si no se está ejecutando ninguna de las instancias de SQL Server en una instancia distinta de la instancia de SQL Server “predeterminada”. Si las cadenas de conexión de SQL especifican una instancia de SQL Server además del nombre del equipo (por ejemplo SuEquipoconSqlServer\SqlExpress), el servicio SQL Server Browser debe estar en ejecución.

Preparar MySQL Server

Asegúrese de que se puede tener acceso a los servidores de MySQL.

  1. Pruebe la conectividad IP y la resolución de nombres.

  2. Abra TCP 3306 Entrante en el Firewall de Windows para cada equipo que ejecute MySQL.

  3. Habilitar el acceso remoto para MySQL:

    Nota

    Actualice la contraseña según la contraseña raíz utilizada en el momento de la instalación. Los comandos siguientes suponen que la contraseña raíz es Pass@word1$

    1. Escriba los siguientes comandos en un símbolo del sistema con permisos elevados:

      C:\Program Files\MySQL\MySQL Server 5.1\bin>mysql -u root -p

      Enter password: **********

      GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Pass@word1$' WITH GRANT OPTION; FLUSH PRIVILEGES;

      use mysql;

      update user set grant_priv='Y' where user='root';

    2. Compruebe que el comando update user se ejecutó y después escriba el siguiente comando:

      exit;

    3. Reinicie el servicio de MySQL mediante el Administrador del servidor o escriba lo siguiente en un símbolo del sistema con privilegios elevados:

      net stop mysql

      net start mysql