Configurare un CAS Array su Exchange 2010

Exchange 2010 presenta un cambiamento architetturale che prevede l’accesso dei client outlook sui server CAS e non più sui server Mailbox.

Questo comporta molti vantaggi tra cui un bilanciamento del carico di lavoro più uniforme su tutte le tipologie di server dell’organizzazione e la possibilità di mantenere il client outlook sempre connesso anche in situazioni particolari (pensa ad un failover del database sul mailbox server o allo spostamento della casella da un database ad un altro).

In questa nuova situazione è indispensabile però implementare l’alta disponibilità a livello di server CAS tramite la configurazione di almeno un CAS array per ogni Site di Active Directory.

Un CAS array è un gruppo di server CAS verso i quali si connettono i client outlook di un Active Directory Site. Per configurarlo è necessario definire un cluster NLB di cui faranno parte due o più server CAS, oltre ad eseguire alcune operazioni a livello di DNS ed organizzazione Exchange.

Iniziamo adesso a vedere una possibile configurazione di un CAS array a partire dalle impostazioni delle schede di rete e dalla creazione del cluster NLB.

Supponiamo di avere a disposizione due server CAS forniti di due schede di rete una delle quali dedicata unicamente al bilanciamento NLB.

image

Nella figura seguente è riportata la configurazione lato TCP/IP di tale scheda sul primo server CAS; è importante non inserire su tale configurazione nessun default gateway ne alcun indirizzo relativo a server DNS.

image

E’ importante definire l’ordine di binding come nella figura seguente; la prima scheda (quella preferenziale per l’accesso dei servizi) deve essere quella Pubblica.

image

Possiamo adesso procedere con l’installazione dell’NLB da Server Manager (da Windows Server 2008 NLB è una feature del sistema opertivo) e con la seguente configurazione:

Selezioniamo sul primo CAS l’opzione per creare un nuovo cluster

image

Scegliamo la scheda di rete corretta (quella dedicata al cluster NLB)

image

Inseriamo i parametri necessari per il cluster, ovvero:

  • L’indirizzo IP con relativa subnet mask
  • Il full internet name

Generalmente, in una configurazione con una scheda dedicata per l’NLB, è possibile selezionare l’Unicast come operation mode per il cluster (se utilizziamo server in ambiente virtuale o per particolari apparati di rete potrebbe essere necessario selezionare una modalità differente).

Configurare le seguenti port rules per far funzionare correttamente il CAS array; le porte 135 ed il range dalla 1024 alla 65535 servono per l’accesso di outlook tramite protocollo RPC, la 443 serve per l’accesso tramite Outlook Anywhere.

image

A questo punto è possibile aggiungere altri nodi (fino ad otto) facendo sempre attenzione a selezionare la corretta scheda di rete

image

image

Verificare a questo punto che lo stato di entrambi i nodi sia su Converged

image

Successivamente dovrà essere definito un HOST sul DNS con un nome significativo per il CAS Array che punta all’indirizzo utilizzato per il cluster NLB.

Dalla console selezionare New Host

image

Definire il nuovo HOST con il nome e l’indirizzo impostati per il cluster NLB

image

E’ adesso necessario definire il CAS Array tramite l’exchange management shell eseguendo il seguente comando

New-ClientAccessArray –Fqdn outlook.e14.local –Site “Default-First-Site-Name” –Name outlook.e14.local –Confirm:$false

image

A questo punto, è necessario effettuare delle modifiche ad un parametro di ogni database che ospita caselle di posta; eseguendo il comando get-MailboxDatabase su uno qualunque dei db otteniamo il seguente output

image

L’attributo RpcClientAccessServer rappresenta il CAS verso cui si collegherà il client Outlook per tutte le caselle di posta ospitate sul db.

Possiamo verificare questo da un qualunque client Outlook premendo contemporaneamente il tasto Ctrl e quello destro del mouse sull’icona in basso a destra, e selezionando l’opzione Connection Status ...

image

Il client è collegato al server CAS riportato nell’attributo RpcClientAccessServer; nel caso di failure su tale server il client non è più in grado di accedere ai dati di posta ...

image

Adesso è necessario sostituire nell’attributo RpcClientAccessServer il nome del CAS Array precedentemente configurato eseguendo il comando seguente

image

E’ ovviamente possibile verificare l’esito dell’operazione eseguendo nuovamente il comando get-MailboxDatabase

image

Il client Outlook si connetterà al CAS Array e nel caso di failure di un server l’NLB permetterà ad Outlook di rimanere connesso tramite i rimanenti server CAS facenti parte dell’array

image