Creare un file di input personalizzato per il server perimetrale (migrazione Office Communications Server 2007)

 

Ultima modifica dell'argomento: 2011-04-06

Nell'argomento precedente, Definire il file di input del server perimetrale (migrazione Office Communications Server 2007), sono stati definiti i blocchi predefiniti del file di input necessario per unire la topologia legacy mediante Lync Server Management Shell. In questo argomento vengono approfonditi il layout e lo scopo del file input.xml. Vengono infatti illustrati i diversi parametri da impostare quando si crea il file input.xml degli Edge Server.

Il file input.xml, che può essere creato utilizzando qualsiasi editor di testo, dovrebbe essere simile al seguente:

<?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>

Questo significa pertanto che il file XML innanzitutto deve iniziare con la dichiarazione XML seguente: <?xml version="1.0" encoding="utf-8"?>

Nota

Benché sia facoltativa, la dichiarazione XML evita qualsiasi forma di confusione relativamente alla versione o al tipo di codifica utilizzato nel file.

Dopo la dichiarazione XML è necessario inserire l'elemento <TopologyInput>, come mostrato di seguito:

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

Questo elemento è molto importante. Se <TopologyInput> non è presente, non verrà eseguita la convalida dello schema e, di conseguenza, Merge-CsLegacyTopology potrebbe tentare di unire un file XML in un formato errato. È fondamentale che il file XML abbia un formato corretto. Sarà quindi necessario aggiungere anche un tag di chiusura per l'elemento <TopologyInput>: </TopologyInput>

Il file XML ora dovrebbe risultare come segue:

<?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>

Avendo preparato la struttura di base del file, è ora possibile identificare i componenti server perimetrale (Edge Server) distribuiti in Office Communications Server. Questa operazione deve essere eseguita all'interno dell'elemento <EdgeClusters>. Il passaggio successivo consiste pertanto nell'aggiungere tag di apertura e chiusura per l'elemento <EdgeClusters> nel file 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>

All'interno dell'elemento <EdgeClusters> è quindi necessario aggiungere fino a cinque elementi figlio:

  • <EdgeCluster>. Nell'elemento <EdgeCluster> è possibile definire i diversi ruoli server perimetrale (Edge Server) nella topologia di Office Communications Server esistente. È necessario preoccuparsi di tre ruoli:

    • Access Edge Server. Precedentemente noto come server Proxy di accesso, l'Access Edge Server è responsabile della gestione di tutto il traffico SIP che attraversa il firewall dell'organizzazione. Se nella topologia è incluso un Access Edge Server, sarà necessario aggiungere questo attributo all'elemento <EdgeCluster>: AP="true"

    • Web Conferencing Edge Server. Il Web Conferencing Edge Server, noto anche come server Proxy di dati, inoltra il traffico tra il Web Conferencing Server e i client esterni. Per le distribuzioni di server perimetrali (Edge Server) di Office Communications Server 2007, è supportato solo l'accesso esterno (AE) tramite il server perimetrale (Edge Server) legacy. È necessario aggiungere questo attributo all'elemento <EdgeCluster>: DP="false"

    • A/V Edge Server. L'A/V Edge Server, noto anche come server Media Relay, fornisce un singolo punto di connessione che consente il traffico multimediale in ingresso e in uscita per facilitare i firewall e i dispositivi NAT (Network Address Translation). Per le distribuzioni di server perimetrali (Edge Server) di Office Communications Server 2007, è supportato solo l'accesso esterno (AE) tramite il server perimetrale (Edge Server) legacy. È necessario aggiungere questo attributo all'elemento <EdgeCluster>: MR="false"

      Specificare quindi la versione di Office Communications Server in esecuzione nel dominio legacy. Per Office Communications Server 2007, utilizzare questo attributo e questo valore:Version="OCS2007"

      Se infine è stata abilitata la federazione in Office Communications Server, sarà necessario aggiungere l'attributo FederationEnabled all'elemento <EdgeCluster>: FederationEnabled="true"

      Un elemento <EdgeCluster> completato sarà simile al seguente:

      <EdgeCluster AP="true" MR="false" DP="false" Version="OCS2007" FederationEnabled="true">
      
  • <LoadBalancer>. L'elemento <LoadBalancer> contiene i nomi di dominio completi (FQDN) del servizio o dispositivo di bilanciamento del carico del server perimetrale (Edge Server) interno e i servizi o dispositivi di bilanciamento del carico del server perimetrale (Edge Server) esterni. Si noti che, per i servizi o dispositivi di bilanciamento del carico esterni, è necessario specificare tutti questi servizi o dispositivi, inclusi i servizi o dispositivi di bilanciamento del carico Access Edge (AP), Web Conferencing (DP) e A/V Edge (MR). Un tag <LoadBalancer> completo dovrebbe essere simile al seguente:

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

    Se non si utilizzano servizi o dispositivi di bilanciamento del carico del server perimetrale (Edge Server), questo elemento può essere omesso.

  • <Machine>. L'elemento <Machine> contiene l'FQDN del server perimetrale (Edge Server). Si noti che dovrebbe essere il nome interno del server. Ad esempio: <Machine InternalFqdn="node1.fqdn" />

  • <Ports>. Utilizzare l'elemento <Ports> per indicare le porte utilizzate dai server perimetrali. APPort indica un Access Edge Server, DPPort indica un Web Conferencing Edge Server e MRPort indica un server Media Relay. Per le distribuzioni di server perimetrali (Edge Server) di Office Communications Server 2007, è supportato solo l'accesso esterno (AE) tramite il server perimetrale (Edge Server) legacy. È necessario aggiungere questo attributo all'elemento <Ports>:

    <Ports InternalAPPort="5061" />
    
  • <DirectorOrEdgeNextHop>. L'elemento <DirectorOrEdgeNextHop> contiene l'FQDN del server dell'hop successivo del server perimetrale: <DirectorOrEdgeNextHop Fqdn="director.fqdn.com" /> Se il server dell'hop successivo è un Director, sarà necessario aggiungere l'attributo IsDirector="true":

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

    Se l'attributo IsDirector non viene impostato su "True", Lync Server 2010 non sarà in grado di utilizzare il Director di Office Communications Server 2007 per la federazione.

    Dopo essere stato completato, l'elemento dovrebbe essere simile al seguente:

    <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> 
    

A questo punto è solo necessario aggiungere l'elemento <RegistrarClusterPort>, ovvero la sezione del file XML in cui è possibile definire la porta e il tipo di trasporto per il cluster di registrazione. Un elemento <RegistrarClusterPort> completato, in cui vengono definiti la porta 5065 e il tipo di trasporto MTLS (Mutual TLS), sarà simile al seguente:

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

Al parametro EnableAutoDiscoveryOfPorts si applicano le condizioni seguenti:

  • EnableAutoDiscoveryOfPorts è un parametro obbligatorio, mentre Port è un parametro facoltativo.

  • Se il parametro EnableAutoDiscoveryOfPorts è true e viene specificato il parametro Port, il valore di Port verrà ignorato.

  • Se il parametro EnableAutoDiscoveryOfPorts è false e viene specificato il parametro Port, il valore di Port verrà utilizzato.

  • Se il parametro EnableAutoDiscoveryOfPorts è false e non viene specificato il parametro Port, verrà registrato un errore perché questa è una configurazione non supportata.

Alla fine si otterrà un file XML che può essere utilizzato con il 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>