Crear un archivo de entrada personalizado del servidor perimetral (migración de Office Communications Server 2007)

 

Última modificación del tema: 2011-04-06

En el tema anterior, Definir el archivo de entrada del servidor perimetral (migración de Office Communications Server 2007), se definieron los bloques de creación del archivo de entrada necesario para combinar la topología heredada mediante el Shell de administración de Lync Server. En este tema, se examinan de forma más detallada el diseño y la finalidad del archivo input.xml. Se explican los diferentes parámetros que se deben establecer al crear el archivo input.xml del Servidor perimetral.

El archivo input.xml, que se puede crear con cualquier editor de texto, tendrá el siguiente aspecto:

<?xml version="1.0" encoding="utf-8"?>
<TopologyInput xmlns="urn:schema:Microsoft.Rtc.Management.Deploy.LegacyUserInput.2008"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<EdgeClusters>

    <EdgeCluster AP="true" MR="false" DP="false" Version="OCS2007" FederationEnabled="true">
    <LoadBalancer InternalFqdn="edgeint.fqdn" ExternalDPFqdn="ExternalDP.Fqdn " />  
    <Machines>
      <Machine InternalFqdn = "node1.fqdn"/>
      <Machine InternalFqdn = "anothernode1.fqdn"/>
    </Machines>
    <Ports InternalAPPort="5061" />
    <DirectorOrEdgeNextHop Fqdn="director.fqdn.com " />
    </EdgeCluster>
</EdgeClusters>
    <RegistrarClusterPort EnableAutoDiscoveryOfPorts = "false" Port = "5065" />
</TopologyInput>

Por tanto, ¿qué significa todo esto? Para empezar, es necesario que el archivo XML comience con la siguiente declaración XML: <?xml version="1.0" encoding="utf-8"?>

Nota

Pese a que sea opcional, la declaración XML ayuda a evitar confusiones con respecto a la versión o al tipo de codificación que se usa en el archivo.

Tras la declaración XML, debe insertar el elemento <TopologyInput> de la siguiente forma:

<TopologyInput xmlns="urn:schema:Microsoft.Rtc.Management.Deploy.LegacyUserInput.2008"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

Este elemento es muy importante: si <TopologyInput> no está presente, no se llevará a cabo la validación del esquema. A su vez, Merge-CsLegacyTopology podría intentar combinar un archivo XML incorrecto. Dado que es un archivo XML, es importante que tenga un formato correcto. Por lo tanto, también debe agregar una etiqueta de cierre para el elemento <TopologyInput>: </TopologyInput>

Con lo cual, el archivo XML tendrá el siguiente aspecto:

<?xml version="1.0" encoding="utf-8"?>
<TopologyInput xmlns="urn:schema:Microsoft.Rtc.Management.Deploy.LegacyUserInput.2008"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
</TopologyInput>

Con la implementación de la estructura de archivos básica, ya está listo para identificar los componentes del Servidor perimetral implementados en Office Communications Server. Esta acción se realiza dentro del elemento <EdgeClusters>. Teniendo esto en cuenta, el próximo paso consiste en agregar etiquetas de apertura y de cierre para el elemento <EdgeClusters> en el archivo XML:

<?xml version="1.0" encoding="utf-8"?>
<TopologyInput xmlns="urn:schema:Microsoft.Rtc.Management.Deploy.LegacyUserInput.2008"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<EdgeClusters>

</EdgeClusters>

</TopologyInput>

Posteriormente, en el elemento <EdgeClusters> podrá agregar un máximo de cinco elementos secundarios:

  • <EdgeCluster>. En el elemento <EdgeCluster>, se definen los diferentes roles del Servidor perimetral en la topología existente de Office Communications Server. Existen tres roles a los que debe prestar atención:

    • Servidor perimetral de acceso de Lync. Anteriormente conocido como servidor proxy de acceso, el servidor perimetral de acceso se encarga de controlar todo el tráfico SIP que atraviesa el firewall de la organización. Si la topología incluye un servidor perimetral de acceso, debe agregar este atributo al elemento <EdgeCluster>: AP="true"

    • Servidor perimetral de conferencia web. El servidor perimetral de conferencia web (también conocido como servidor proxy de datos) transmite tráfico entre el servidor de conferencia web y los clientes externos. Para las implementaciones del Servidor perimetral de Office Communications Server 2007, solamente se admite el acceso externo a través del Servidor perimetral heredado. Debe agregar este atributo al elemento <EdgeCluster>: DP="false"

    • Servidor perimetral A/V. El servidor perimetral A/V (también conocido como servidor de transmisión de medios) proporciona un punto de conexión único que permite que el tráfico de medios entrante y saliente pueda atravesar los firewalls y los dispositivos de traducción de direcciones de red (NAT). Para las implementaciones del Servidor perimetral de Office Communications Server 2007, solamente se admite el acceso externo a través del Servidor perimetral heredado. Debe agregar este atributo al elemento <EdgeCluster>: MR="false"

      Luego, especifique la versión de Office Communications Server que se ejecuta en el dominio heredado. Para Office Communications Server 2007, use este atributo y valor de atributo:Version="OCS2007"

      Finalmente, si habilitó la federación en Office Communications Server, debe agregar el atributo FederationEnabled al elemento <EdgeCluster>: FederationEnabled="true"

      Un elemento <EdgeCluster> completo tendrá el siguiente aspecto:

      <EdgeCluster AP="true" MR="false" DP="false" Version="OCS2007" FederationEnabled="true">
      
  • <LoadBalancer>. El elemento <LoadBalancer> contiene el nombre de dominio completo (FQDN) de los equilibradores de carga internos del Servidor perimetral y los equilibradores de carga externos del Servidor perimetral. Tenga en cuenta que para los equilibradores de carga externos, debe especificar todos los equilibradores de carga, incluidos los equilibradores de carga del servidor perimetral de acceso, el servidor de conferencia web y el servidor perimetral A/V. Una etiqueta <LoadBalancer> completa tendrá el siguiente aspecto:

    <LoadBalancer InternalFqdn="edgeint.fqdn " ExternalDPFqdn="ExternalDP.Fqdn" />
    

    Si no utiliza equilibradores de carga del Servidor perimetral, es posible omitir este elemento.

  • <Machine>. El elemento <Machine> contiene el FQDN del Servidor perimetral (tenga en cuenta que este debe ser el nombre interno del servidor). Por ejemplo: <Machine InternalFqdn="node1.fqdn" />

  • <Ports>. Use el elemento <Ports> para indicar los puertos utilizados por los servidores perimetrales. APPort identifica a un servidor perimetral de acceso, DPPort a un servidor perimetral de conferencia web y MRPort a un servidor de transmisión de medios. Para las implementaciones del Servidor perimetral de Office Communications Server 2007, solamente se admite el acceso externo a través del Servidor perimetral heredado. Debe agregar este atributo al elemento <Ports>:

    <Ports InternalAPPort="5061" />
    
  • <DirectorOrEdgeNextHop>. El elemento <DirectorOrEdgeNextHop> contiene el FQDN del servidor del próximo salto del servidor perimetral: <DirectorOrEdgeNextHop Fqdn="director.fqdn.com" /> Si el servidor del próximo salto es un Director, debe agregar el atributo IsDirector="true":

    <DirectorOrEdgeNextHop Fqdn=" director.fqdn.com " IsDirector="true" /> 
    

    Si el atributo IsDirector no se establece en ‘True’, Lync Server 2010 no podrá usar el Director de Office Communications Server 2007 para la federación.

    Una vez que haya finalizado, el elemento tendrá un aspecto similar al siguiente:

    <EdgeClusters>
          <EdgeCluster AP="true" MR="false" DP="false" Version="OCS2007">
            <LoadBalancer InternalFqdn="edgeint.fqdn" ExternalDPFqdn="ExternalDP.Fqdn  />
            <Machines>
             <Machine InternalFqdn = "node1.fqdn"/>
             <Machine InternalFqdn = "anothernode1.fqdn"/>
            </Machines>
            <Ports InternalAPPort="5061" />
            <DirectorOrEdgeNextHop Fqdn="director.fqdn.com " />    
          </EdgeCluster>
    </EdgeClusters> 
    

Lo que resta ahora es agregar el elemento <RegistrarClusterPort>. Esta es la sección del archivo XML en donde se define el puerto y el tipo de transporte para el clúster del registrador. Un elemento <RegistrarClusterPort> completo, el cual define el puerto 5065 y el tipo de transporte Mutual TLS (MTLS), tendrá el siguiente aspecto:

<RegistrarClusterPort EnableAutoDiscoveryOfPorts = "false" Port = "5065" /> 

Las condiciones siguientes se aplican al parámetro EnableAutoDiscoveryOfPorts:

  • EnableAutoDiscoveryOfPorts es un parámetro obligatorio, pero Port es un parámetro opcional.

  • Si se ha establecido EnableAutoDiscoveryOfPorts en True y se facilita Port, el valor de Port se omitirá.

  • Si se ha establecido EnableAutoDiscoveryOfPorts en False y se facilita Port, se usará el valor de Port.

  • Si se ha establecido EnableAutoDiscoveryOfPorts en False y no se facilita Port, se registrará un error ya que esta es una configuración que no se admite.

Por último, esto genera un archivo XML que se puede utilizar con el cmdlet Merge-CsLegacyTopology:

<?xml version="1.0" encoding="utf-8"?>
<TopologyInput xmlns="urn:schema:Microsoft.Rtc.Management.Deploy.LegacyUserInput.2008"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<EdgeClusters>
   <EdgeCluster AP="true" MR="false" DP="false" Version="OCS2007" FederationEnabled="true">
     <LoadBalancer InternalFqdn="edgeint.fqdn" ExternalDPFqdn="ExternalDP.Fqdn " />
     <Machines>
        <Machine InternalFqdn = "node1.fqdn"/>
        <Machine InternalFqdn = "anothernode1.fqdn"/>
     </Machines>
     <Ports InternalAPPort="5061" /> 
     <DirectorOrEdgeNextHop Fqdn="director.fqdn.com " />
   </EdgeCluster>
</EdgeClusters>
     <RegistrarClusterPort EnableAutoDiscoveryOfPorts = "false" Port = "5065" /> 
</TopologyInput>