Aggiornamento Citrix ADC in HA
Citrix ADC meglio conosciuto come Citrix Netscaler, oggi è sicuramente uno dei bilanciatori di carico più conosciuti sul mercato, oltre al bilanciamento di carico offre moltissime altre funzionalità vi rimando al link ufficiale per una visione completa.
In questa guida andiamo ad analizzare la procedura di aggiornamento per una installazione di due nodi in modalità attivo/passivo, da Citrix meglio conosciuta come nodo primario (attivo) e secondario (passivo).
Un consiglio importante è di aggiornare senza saltare una build intera, se ad esempio abbiamo la 12.0 non aggiorniamo direttamente alla 13.0 ma passiamo attraverso la 12.1.
Primo punto andiamo sul sito ufficiale di Citrix e scarichiamo la build che useremo per l’aggiornamento, il file avrà una nomenclatura simile a “build-13.0-76.29_nc_64.tgz”, chiaramente per procedere al download sarà necessario avere un contratto di manutenzione attivo.
Avendo una installazione con due nodi dovremo seguire con disattivare i servizi di HA sul nodo primario e secondario e posizionare i nodo principale in modalità “stayprimary” e il nodo secondario in modalità “staysecondary”, con i seguenti comandi sul nodo primario
set ha node -hastatus Stayprimary
set ha node -haprop disabled
set ha node -hasync disabled
con i seguenti comandi sul nodo secondario
set ha node -hastatus Staysecondary
set ha node -haprop disabled
set ha node -hasync disabled
sempre sul nodo secondario attiviamo la modalità “shell” usando il comando
shell
andiamo a creare una nuova cartella nel percorso /var/nsinstall aggiungendo la nostra directory
mkdir /var/nsinstall/13.0-76.29_ncinstall
utilizzando un software come WinSCP in modalità SFTP andiamo a caricare nella directory appena creata il file TAR che abbiamo scarica dal sito Citrix e successivamente procediamo alla decompressione, una volta terminata procediamo all’aggiornamento del nodo
cd /var/nsinstall/13.0-76.29_ncinstall
tar -xzvf build-13.0-76.29_nc_64.tgz <-- decompressione
./installns <-- comando per lanciare aggiornamento
quanto terminata la procedura di aggiornamento procediamo con il riavvio del nodo confermando con “Y” alla domanda.
Proviamo che il tutto sia avvenuto correttamente accedendo alla GUI e controllando che l’aggiornamento abbia avuto successo. A seguito del controllo precedente spostiamo i servizi sul nodo secondario (nodo appena aggiornato) che diventerà così il nodo primario con i seguenti comandi sul primario (nodo non ancora aggiornato)
set ha node -hastatus enabled
e sul secondario (nodo appena aggiornato), procedendo anche con lo spostamento dei servizi e quindi eleggendolo a nodo primario
set ha node -hastatus enabled
force failover
a questo punto collegandoci di nuovo alla GUI del nuovo nodo primario (nodo aggiornato) controlliamo che anche tutti i servizi attivi funziono a dovere, una volta sicuri possiamo procedere con l’aggiornamento dell’attuale nodo secondario (nodo non aggiornato).
Procediamo con il disabilitare nuovamente “hastatus” sul nodo primario (nodo aggiornato)
set ha node -hastatus Stayprimary
e sul nodo secondario (nodo non ancora aggiornato)
set ha node -hastatus Staysecondary
sul nodo secondario (nodo non ancora aggiornato), andiamo in modalità “shell”, procediamo con la creazione della cartella in /var/nsinstall e la successiva copia usando WinSCP del file TAR di aggiornamento, a seguire lo decomprimiamo e aggiorniamo
mkdir /var/nsinstall/13.0-76.29_ncinstall <-- creazione cartella
cd /var/nsinstall/13.0-76.29_ncinstall
tar -xzvf build-13.0-76.29_nc_64.tgz <-- decompressione
./installns <-- comando per lanciare aggiornamento
terminato l’aggiornamento procediamo con il riavvio del nodo confermato con “Y” alla domanda.
Una volta riavviato il nodo accediamo alla GUI controllando come in precedenza che l’aggiornamento abbia avuto successo e che tutto funzioni correttamente, una volta sicuri procediamo con la riabilitazione dei servizi HA e con il force failover per far tornare principale il nodo corretto.
Sul nodo principale (nodo aggiornato per primo) procediamo con i seguenti comandi
set ha node -hastatus enabled
set ha node -haprop enabled
set ha node -hasync enabled
lo stesso anche sul nodo appena aggiornato con i seguenti comandi
set ha node -hastatus enabled
set ha node -haprop enabled
set ha node -hasync enabled
solitamente il nodo primario iniziale torna primario in automatico, se questo non dovesse avvenire possiamo forzare l’operazione con il solito comando “force failover”.
Possiamo controllare lo stato dei nostri nodi con il seguente comando
> show ha node <-- Comanda da usare per visualizzare lo stato dei nodi
1) Node ID: 0
IP: IP ADDRESS NODO (DNS NODO)
Node State: UP
Master State: Primary <-- Definisce che questo è il nodo primario
Fail-Safe Mode: ON
INC State: DISABLED
Sync State: ENABLED <-- Importante che sia in Enabled
Propagation: ENABLED <-- Importante che sia in Enabled
Enabled Interfaces : 0/1 1/1
Disabled Interfaces : None
HA MON ON Interfaces : None
HA HEARTBEAT OFF Interfaces : None
Interfaces on which heartbeats are not seen : 1/1
Interfaces causing Partial Failure: None
SSL Card Status: NOT PRESENT
Hello Interval: 200 msecs
Dead Interval: 3 secs
Node in this Master State for: 0:19:34:54 (days:hrs:min:sec)
2) Node ID: 1
IP: P ADDRESS NODO (DNS NODO)
Node State: UP
Master State: Secondary <-- Definisce che questo è il nodo secondario
Fail-Safe Mode: OFF
INC State: DISABLED
Sync State: SUCCESS <-- Importante che sia in Success (essendo il nodo secondario)
Propagation: ENABLED <-- Importante che sia in Enabled
Enabled Interfaces : 0/1 1/1
Disabled Interfaces : None
HA MON ON Interfaces : None
HA HEARTBEAT OFF Interfaces : None
Interfaces on which heartbeats are not seen : 1/1
Interfaces causing Partial Failure: None
SSL Card Status: NOT PRESENT
Se potete vedere un risultato simile a quello sopra avete terminato correttamente la procedura di aggiornamento di Citrix ADC in modalità HA.
NB: Prima di procedere a un aggiornamento di Citrix ADC fate i backup dei nodi in modo da poter procedere a un fallback in caso di problemi.