Compartir vía


Instalación y configuración automatizadas (Almacenamiento en caché de AppFabric 1.1)

Esta sección explica los pasos de la instalación y configuración automatizada de las características de Microsoft AppFabric 1.1 para el almacenamiento en caché de Windows Server. En una instalación desatendida, el usuario no ve ninguna interfaz de usuario, pues todas las opciones se especifican desde la línea de comandos. Hay una secuencia de comandos específica que es necesaria para agregar un host de caché a un clúster de caché o bien para quitar un host de caché de un clúster de caché. En esta sección se describen los comandos para ambos escenarios. Tenga en cuenta que también se puede usar el asistente para configuración de AppFabric con el fin de configurar las características de almacenamiento en caché con una interfaz de usuario. Para obtener más información acerca del Asistente para configuración de AppFabric, consulte Configuración de Windows Server AppFabric.

En esta sección se dividen los pasos de la instalación automatizada en cinco tareas:

  • Instalar las características de almacenamiento en caché de Windows Server AppFabric

  • Crear un nuevo clúster de caché

  • Agregar un host de caché

  • Quitar un host de caché

  • Quitar un clúster de caché

Para scripts de PowerShell que automatizan estos pasos, vea estos ejemplos:

TipSugerencia
Para conocer los aspectos básicos sobre el inicio y la ejecución de los comandos de Windows PowerShell, vea Uso de Windows PowerShell para administrar características de almacenamiento en caché de Windows Server AppFabric. Tenga en cuenta que antes de ejecutar estos comandos, puede ser necesario usar Import-Module para importar los módulos de Windows PowerShell modules para la administración (DistributedCacheAdministration) o configuración (DistributedCacheConfiguration).

TipSugerencia
Aunque algunos de los siguientes comandos deben ejecutarse localmente en el host de caché de destino, Windows PowerShell admite la ejecución de comandos en los equipos remotos. Para obtener más información, vea Ejecutar comandos remotos

Instalar características de Microsoft AppFabric 1.1 para el almacenamiento en caché de Windows Server

Antes de crear un clúster de caché nuevo o antes de configurar Almacenamiento en caché de AppFabric en un host de caché, es necesario instalar las características de Microsoft AppFabric 1.1 para el almacenamiento en caché de Windows Server. Para obtener instrucciones acerca de cómo realizar una instalación silenciosa de AppFabric, consulte Instalación automatizada. Entre las características de almacenamiento en caché se cuentan:

  • CachingService

  • CacheClient

  • CacheAdmin

Por ejemplo, imagine un escenario en el que el binario de instalación se denomina Setup.exe. Tenga en cuenta que el nombre de binario actual variará en función de la plataforma que elija. En el siguiente ejemplo se muestra el modo de realizar una instalación silenciosa de las características de Almacenamiento en caché de AppFabric en un servidor:

Setup.exe /install /i cachingservice,cacheclient,cacheadmin /l:c:\temp\setup.log

Tenga en cuenta que, en este ejemplo, también vamos a dirigir al archivo de registro a c:\temp\setup.log. Puede examinar este archivo de registro para investigar los resultados de la instalación. Microsoft AppFabric 1.1 para Windows Server también incorpora una nueva opción de p para especificar la ruta de acceso de instalación de AppFabric.

Una vez que las características de Almacenamiento en caché de AppFabric están instaladas en un equipo, deberá configurarlas. En las siguientes secciones se describen los pasos necesarios para automatizar este proceso.

Crear un nuevo clúster de caché

Si está creando un nuevo clúster de caché, primero debe llamar al comando New-CacheCluster de Windows PowerShell. Cuando cree un nuevo clúster de caché, debe decidir dónde va a almacenar su configuración. Puede usar el proveedor de System.Data.SqlClient, el proveedor de XML o un proveedor personalizado. Para obtener más información, vea Modelo de configuración.

En el siguiente ejemplo se crea un clúster de caché pequeño que almacena la configuración en un equipo SQL Server denominado SQLServer1 con una base de datos existente denominada CacheClusterConfigurationDB.

New-CacheCluster -Provider System.Data.SqlClient -ConnectionString  "Data Source=SQLServer1;Initial Catalog=CacheClusterConfigurationDB;Integrated Security=True" -Size Small

Nota

Tenga en cuenta que, si usa la creación de reflejo de base de datos para aumentar la disponibilidad del clúster de caché, debe especificar el socio de conmutación por error en la cadena de conexión. Para obtener más información, vea Configuración de clúster basada en SQL Server.

En el siguiente ejemplo se crea un clúster de caché grande que almacena la configuración en un archivo XML en un recurso compartido de red denominado \\Server1\CacheConfigShare.

New-CacheCluster -Provider XML -ConnectionString  "\\Server1\CacheConfigShare" -Size Large

En ambos ejemplos, el equipo que realiza la llamada debe tener permisos adecuados en la ubicación del almacén de configuración. Para System.Data.SqlClient, el equipo que realiza la llamada debe ser un db_owner en la base de datos de destino o un miembro del rol sysadmin en la instancia de SQL Server. Para XML, el equipo que realiza la llamada debe tener permisos de propietario en la carpeta compartida.

Agregar un host de caché

Para agregar un host de caché a un clúster de caché existente, debe realizar los siguientes pasos por orden:

Comando/Paso Descripción

Register-CacheHost

Registra el host de caché con el clúster de caché.

Add-CacheHost

Configura el host de caché para que forme parte del clúster de caché.

Add-CacheAdmin

Configura opcionalmente la administración de caché en el host de caché actual.

Configurar el Firewall

Permite el servicio AppFabricCachingService a través del firewall. También permite la Administración remota de servicios.

Start-CacheHost

Inicia el nuevo host de caché.

Register-CacheHost

Puede usar el comando Register-CacheHost para registrar un host de caché con un clúster de caché existente. Esto incluye especificar números de puerto y la cuenta de Windows para el servicio de almacenamiento en caché. Los parámetros Provider y ConnectionString especifican el clúster de caché de destino para el nuevo host de caché.

En el siguiente ejemplo se agrega el equipo host de caché, CacheServer1, a un clúster de caché cuyo almacén de configuración se encuentra ubicado en un archivo XML en el recurso compartido de archivo \\Server1\CacheConfigShare. La cuenta NT Authority\Network Service integrada se especifica para la identidad del servicio de almacenamiento en caché.

Register-CacheHost -Provider XML -ConnectionString "\\Server1\CacheConfigShare"  -Account "NT Authority\Network Service" -CachePort 22233 -ClusterPort 22234  -ArbitrationPort 22235 -ReplicationPort 22236 -HostName  CacheServer1

Tenga en cuenta que, para el proveedor de XML, el equipo que realiza la llamada debe tener total control sobre el recurso compartido de red de destino. Para el proveedor de System.Data.SqlClient, el equipo que realiza la llamada debe tener permiso para leer, escribir, crear inicios de sesión SQL y agregar permisos a la base de datos de destino.

A diferencia de muchos otros comandos de configuración, el comando Register-CacheHost acepta un parámetro HostName, por lo que puede ejecutarse remotamente.

Add-CacheHost

El comando Add-CacheHost configura el host de caché para formar parte del clúster de caché existente. Los parámetros Provider y ConnectionString especifican el clúster de caché de destino para el nuevo host de caché.

En el siguiente ejemplo se demuestra cómo llamar a Add-CacheHost.

Add-CacheHost -Provider XML -ConnectionString "\\Server1\CacheConfigShare" -Account "NT Authority\Network Service"

Tenga en cuenta que este comando debe ejecutarse localmente en el host de caché que se está configurando. También debe ejecutar este comando desde una sesión de Windows PowerShell elevada, con privilegios de administrador.

WarningAdvertencia
Debe proporcionar un valor para el parámetro Account para el comando Add-CacheHost. Si no especifica una cuenta, los permisos no se configurarán debidamente para el servicio de almacenamiento en caché. Tenga en cuenta que, en un entorno de dominio con la seguridad habilitada, debe usarse la cuenta NT Autority\Network Service.

Add-CacheAdmin

Opcionalmente, puede usar el comando Add-CacheAdmin para configurar la característica Administración de caché en un host de caché. Esto le permite administrar el clúster de caché desde este equipo mediante los comandos de Windows PowerShell. La característica Administración de caché debe estar instalada en el equipo.

En el siguiente ejemplo se demuestra cómo llamar a Add-CacheAdmin.

Add-CacheAdmin -Provider XML -ConnectionString  "\\Server1\CacheConfigShare"

Tenga en cuenta que este comando debe ejecutarse localmente en el host de caché que se está configurando. También debe ejecutar este comando desde una sesión de Windows PowerShell elevada, con privilegios de administrador.

Configurar el Firewall

Para poder usar correctamente las características de Almacenamiento en caché de AppFabric, debe configurar el servicio DistributedCacheService.exe. De manera predeterminada, este servicio se instala en el directorio "C:\Program Files\Windows Server AppFabric".

Si usa el firewall de Windows, puede habilitar un grupo de directivas de firewall que se instale automáticamente con AppFabric. Los siguientes comandos de Windows PowerShell habilitan el grupo de directivas de firewall denominado "Microsoft AppFabric 1.1 para Windows Server: Servicio de Almacenamiento en caché de AppFabric". También debe habilitar las reglas de firewall de "Administración remota de servicios" para habilitar el servicio de Almacenamiento en caché de AppFabric para su control remoto.

netsh advfirewall firewall set rule group="Windows Server AppFabric: AppFabric Caching Service" new enable=Yes
netsh advfirewall firewall set rule name="Remote Service Management (RPC)" profile=domain new enable=Yes
netsh advfirewall firewall set rule name="Remote Service Management (RPC-EPMAP)" profile=domain new enable=Yes
netsh advfirewall firewall set rule name="Remote Service Management (NP-In)" profile=domain new enable=Yes

Start-CacheHost

Si desea habilitar el nuevo host de caché para participar en el clúster de caché, deberá iniciar el host de caché. Si el clúster de caché está inactivo, deberá iniciar todo el clúster de caché. El clúster de caché está inactivo si todos los hosts lo están. Esto se puede evaluar llamando a Get-CacheHost sin parámetros.

Get-CacheHost

Si todos los hosts muestran el estado de servicio DOWN, inicie el clúster de caché con el comando Start-CacheCluster.

Start-CacheCluster

No obstante, si al menos un host tiene el estado de servicio UP, el clúster de caché está en ejecución. En este caso, use el comando Start-CacheHost.

Start-CacheHost -Hostname CacheServer2 -CachePort 22233

Tenga en cuenta que, una vez que se reinicia un equipo de host de caché, el servicio de almacenamiento en caché no se iniciará automáticamente; deberá usar Start-CacheHost o Start-CacheCluster en función del estado del clúster de caché.

También debe ejecutar este comando desde una sesión de Windows PowerShell elevada, con privilegios de administrador.

WarningAdvertencia
Use siempre comandos de Windows PowerShell para iniciar y detener el servicio de almacenamiento en caché. Nunca inicie o detenga el servicio AppFabricCachingService directamente desde el programa Servicios en Herramientas administrativas.

Quitar un host de caché

Para quitar un host de caché de un clúster de caché, debe realizar los siguientes pasos por orden.

Comando/Paso Descripción

Stop-CacheHost

Detiene el host de caché si está en ejecución.

Unregister-CacheHost

Anula el registro del host de caché con el clúster de caché.

Remove-CacheHost

Quita del equipo la configuración del host de caché.

Remove-CacheAdmin

Quita opcionalmente la configuración de la característica Administración de caché.

Configurar el Firewall

Quita las excepciones del firewall del servicio de almacenamiento en caché.

Stop-CacheHost

Si desea quitar un host de caché de un clúster existente, deberá detener primero el host de caché. Puede determinar si el host de caché está en ejecución llamando al comando Get-CacheHost. En el ejemplo siguiente se demuestra cómo ver la información del host de caché para un host de caché local.

Get-CacheHost -HostName localhost -CachePort 22233

Aunque el comando anterior proporciona información acerca de un host de caché específico, siempre debe considerar el estado de todo el clúster de caché antes de detener cualquier host de caché. Esto se puede hacer llamando a Get-CacheHost sin parámetros.

Get-CacheHost

A continuación se muestra una salida de ejemplo de este comando para un clúster de caché de dos servidores.

HostName : CachePort      Service Name            Service Status Version Info
--------------------      ------------            -------------- ------------
CacheServer1:22233        AppFabricCachingService UP             1 [1,1][1,1]
CacheServer2:22233        AppFabricCachingService UP             1 [1,1][1,1]

En este ejemplo están en ejecución tanto CacheServer1 como CacheServer2. Puede tratar de detener uno de estos hosts de caché y dejar el clúster de caché operativo a través del otro host de caché. En el siguiente ejemplo se muestra cómo detener CacheServer2 con el comando Stop-CacheHost.

Stop-CacheHost -HostName CacheServer2 -CachePort 22233 -Graceful

Tenga en cuenta el uso del conmutador Graceful. Este conmutador fue agregado en la versión v1.1 para mover los datos fuera del servidor de caché a otros host de caché antes de apagarlo. Sin el conmutador Graceful, se perderán los datos almacenados en el host de caché detenido. Además, tratar de detener el host de caché fallará si ello provocara la pérdida de quórum para hosts principales o secundarios. Para obtener más información sobre los hosts principales, vea Administración de clústeres y hosts principales. Para obtener más información acerca de los secundarios, vea Alta disponibilidad. En estos casos, debe detener todo el clúster con el comando Stop-CacheCluster.

Si al detener el host de caché también se detuviera el clúster de caché, use en su lugar el comando Stop-CacheCluster. Por ejemplo, considere la siguiente salida de ejemplo del comando Get-CacheHost.

HostName : CachePort      Service Name            Service Status Version Info
--------------------      ------------            -------------- ------------
CacheServer1:22233        AppFabricCachingService DOWN           1 [1,1][1,1]
CacheServer2:22233        AppFabricCachingService UP             1 [1,1][1,1]

En este ejemplo, CacheServer1 está detenido y CacheServer2 está en ejecución. Detener CacheServer2 inactivaría el clúster. En lugar de usar el comando Stop-CacheHost para detener CacheServer2, use el comando Stop-CacheCluster.

Stop-CacheCluster

Debe ejecutar este comando desde una sesión de Windows PowerShell elevada con privilegios de administrador.

Unregister-CacheHost

El comando Unregister-CacheHost quita el host de caché del clúster de caché.

WarningAdvertencia
Para detener un host de caché antes de anular sus registro, es necesario llamar a Stop-CacheHost. Si no se hace esto, se puede producir un bloqueo del servicio.

Si este comando se ejecuta antes de Remove-CacheHost, no es necesario que especifique valores para los parámetros Provider o ConnectionString. Si el comando se ejecuta localmente, tampoco es necesario que especifique un valor para el parámetro HostName.

Unregister-CacheHost -RemoveServicePermissions

En el siguiente ejemplo se anula del registro un host de caché especificando el proveedor, la cadena de conexión y el nombre de host. Se quita un host de caché denominado CacheServer2 de un clúster de caché. Este clúster de caché usa el proveedor de System.Data.SqlClient, de modo que la cadena de conexión sea una cadena de conexión de SQL Server a un servidor de base de datos denominado SQLServer1 y una base de datos de configuración denominada CacheClusterConfigurationDB.

Unregister-CacheHost -Provider System.Data.SqlClient -ConnectionString "Data Source=SQLServer1;Initial Catalog=CacheClusterConfigurationDB;Integrated Security=True"  + -HostName CacheServer2 -RemoveServicePermissions

Tenga en cuenta que, para el proveedor de XML, el equipo que realiza la llamada debe tener total control sobre el recurso compartido de red de destino. Para el proveedor de System.Data.SqlClient, el equipo que realiza la llamada debe tener permiso para leer, escribir, quitar inicios de sesión SQL y quitar permisos en la base de datos de destino.

A diferencia de muchos otros comandos de configuración, el comando Unregister-CacheHost acepta un parámetro HostName, por lo que puede ejecutarse remotamente.

Remove-CacheHost

El comando Remove-CacheHost quita la configuración del host de caché del servidor.

Remove-CacheHost

Tenga en cuenta que este comando debe ejecutarse localmente en el host de caché que se está configurando. También debe ejecutar este comando desde una sesión de Windows PowerShell elevada, con credenciales administrativas.

Remove-CacheAdmin

Si la característica Administración de caché está configurada en el host de caché, puede quitarla con el comando Remove-CacheAdmin.

Remove-CacheAdmin

Tenga en cuenta que este comando debe ejecutarse localmente en el host de caché que se está configurando. También debe ejecutar este comando desde una sesión de Windows PowerShell elevada, con credenciales administrativas.

Configurar el Firewall

Debe quitar o deshabilitar excepciones en el firewall para el servicio de almacenamiento en caché, DistributedCacheService.exe. Si usa el firewall de Windows, debe haber habilitado previamente el grupo de firewall instalado "Microsoft AppFabric 1.1 para Windows Server: Servicio de Almacenamiento en caché de AppFabric". En tal caso, puede deshabilitar este grupo de directivas mediante los siguientes comandos de PowerShell. Si también ha habilitado las reglas de "Administración remota de servicios", también podrá deshabilitar dichas reglas. No obstante, es posible que otros servicios o aplicaciones hayan habilitado las reglas de "Administración remota de servicios". En este supuesto, no debería deshabilitar las reglas de "Administración remota de servicios".

netsh advfirewall firewall set rule group="Windows Server AppFabric: AppFabric Caching Service" new enable=No
netsh advfirewall firewall set rule name="Remote Service Management (RPC)" profile=domain new enable=No
netsh advfirewall firewall set rule name="Remote Service Management (RPC-EPMAP)" profile=domain new enable=No
netsh advfirewall firewall set rule name="Remote Service Management (NP-In)" profile=domain new enable=No

Quitar un clúster de caché

Si ha quitado el host de caché final del clúster, también puede quitar el almacén de configuración del clúster de caché. Para ello, use el comando Remove-CacheCluster. Si el clúster de caché usa el proveedor de XML, este comando elimina el archivo XML que contiene los valores de configuración. Si el clúster de caché usa el proveedor de System.Data.SqlClient, este comando elimina las tablas de la base de datos especificada. Tenga en cuenta que no se quitarán el recurso compartido de archivo ni la base de datos.

Remove_CacheCluster -Provider System.Data.SqlClient -ConnectionString  "Data Source=SQLServer1;Initial Catalog=CacheClusterConfigurationDB;Integrated Security=True"

Vea también

Conceptos

Implementación y configuración de las características de almacenamiento en caché de AppFabric (Almacenamiento en caché de AppFabric 1.1)

  2012-03-05