Sommario

Introduzione

Prerequisiti

Requisiti

Componenti

Installazione

Esempio di rete

1. LVM Create Volume per LVBPRHOME, LVBPRDATA e LVBPRDBLOG su entrambi i server

2. Preparare il server Linux 7.4 per l'installazione di RDU HA su entrambi i server

3. Installare il server RDU in modalità di ridondanza geografica

4. Prerequisiti di routing di layer 3 per la distribuzione della ridondanza geografica

RDU Geo-Redundancy

Requisiti di ridondanza geografica PCP

Verifica successiva HA

Introduzione

In questo documento viene descritta l'installazione di Prime Cable Provisioning 6.1.5 in modalità di ridondanza geografica e ad alta disponibilità (HA, High Availability).

Prerequisiti

Requisiti

Cisco raccomanda la conoscenza dei seguenti argomenti:

- Redhat Linux conoscenza e comprensione del file system e del partizionamento.

- Installare 6.1.5 RHEL 7.4/Kernel 3.10.0-693.11.6.x86_64 sulla nuova macchina virtuale/fisica primaria e secondaria. RDU HA con modalità geografica è compatibile solo con questo sistema operativo RHEL e con questa versione del kernel e i relativi pacchetti rpm.

- Conoscenza del metodo di replica dello storage di file DRBD Linux e del concetto di cluster Corosync-pacemaker.

- Il file di configurazione di rete deve contenere solo il nome host del sistema e non il nome di dominio completo (FQDN).

Componenti

Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:

- Piattaforma: Red Hat Linux 7.4

- Software: Immagine di Prime Cable Provisioning 6.1.5.

Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.

Installazione

Esempio di rete

1.  LVM crea il volume per LVBPRHOME, LVBPRDATA e LVBPRDBLOG su entrambi i server.

2. Preparazione del server Linux 7.4 per l'installazione di RDU HA su entrambi i server.

3. Installazione del server RDU in modalità di ridondanza geografica

- Installazione del server RDU in modalità di ridondanza geografica.

- Precontrollare HA.  -RDU HA Setup in modalità primaria - secondaria.

- Install HA. - Installa l'istanza PCP 6.1.5.

- Post check HA.

4. Prerequisito del routing di livello 3 per l'installazione della ridondanza geografica.

1. LVM Create Volume per LVBPRHOME, LVBPRDATA e LVBPRDBLOG su entrambi i server

Questa illustrazione è relativa al server secondario. La stessa procedura deve essere eseguita anche sul server principale.

- Aggiungere una nuova partizione come sda3 e allocare il disco utilizzando il comando fdisk.

[root@pcprdusecondary ~]# fdisk -l

Disk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk label type: dos

Disk identifier: 0x00025a26

Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *        2048     2099199     1048576   83  Linux

/dev/sda2         2099200    31211519    14556160   8e  Linux LVM

Disk /dev/mapper/rhel-root: 4294 MB, 4294967296 bytes, 8388608 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/mapper/rhel-swap: 8455 MB, 8455716864 bytes, 16515072 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/mapper/rhel-home: 2147 MB, 2147483648 bytes, 4194304 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

[root@pcprdusecondary ~]# fdisk /dev/sda

Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.

Be careful before using the write command.

Command (m for help): m

Command action

a   toggle a bootable flag

b   edit bsd disklabel

c   toggle the dos compatibility flag

d   delete a partition

g   create a new empty GPT partition table

G   create an IRIX (SGI) partition table

l   list known partition types

m   print this menu

n   add a new partition

o   create a new empty DOS partition table

p   print the partition table

q   quit without saving changes

s   create a new empty Sun disklabel

t   change a partition's system id

u   change display/entry units

v   verify the partition table

w   write table to disk and exit

x   extra functionality (experts only)

Command (m for help): p

Disk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk label type: dos

Disk identifier: 0x00025a26

Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *        2048     2099199     1048576   83  Linux

/dev/sda2         2099200    31211519    14556160   8e  Linux LVM

Command (m for help): n

Partition type:

p   primary (2 primary, 0 extended, 2 free)

e   extended

Select (default p): p

Partition number (3,4, default 3): 3

First sector (31211520-209715199, default 31211520):

Using default value 31211520

Last sector, +sectors or +size{K,M,G} (31211520-209715199, default 209715199):

Using default value 209715199

Partition 3 of type Linux and of size 85.1 GiB is set

Command (m for help): p

Disk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk label type: dos

Disk identifier: 0x00025a26

Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *        2048     2099199     1048576   83  Linux

/dev/sda2         2099200    31211519    14556160   8e  Linux LVM

/dev/sda3        31211520   209715199    89251840   83  Linux

Command (m for help): t

Partition number (1-3, default 3): 3

Hex code (type L to list all codes): L

0  Empty           24  NEC DOS         81  Minix / old Lin bf  Solaris

1  FAT12           27  Hidden NTFS Win 82  Linux swap / So c1  DRDOS/sec (FAT-

2  XENIX root      39  Plan 9          83  Linux           c4  DRDOS/sec (FAT-

3  XENIX usr       3c  PartitionMagic  84  OS/2 hidden C:  c6  DRDOS/sec (FAT-

4  FAT16 <32M      40  Venix 80286     85  Linux extended  c7  Syrinx

5  Extended        41  PPC PReP Boot   86  NTFS volume set da  Non-FS data

6  FAT16           42  SFS             87  NTFS volume set db  CP/M / CTOS / .

7  HPFS/NTFS/exFAT 4d  QNX4.x          88  Linux plaintext de  Dell Utility

8  AIX             4e  QNX4.x 2nd part 8e  Linux LVM       df  BootIt

9  AIX bootable    4f  QNX4.x 3rd part 93  Amoeba          e1  DOS access

a  OS/2 Boot Manag 50  OnTrack DM      94  Amoeba BBT      e3  DOS R/O

b  W95 FAT32       51  OnTrack DM6 Aux 9f  BSD/OS          e4  SpeedStor

c  W95 FAT32 (LBA) 52  CP/M            a0  IBM Thinkpad hi eb  BeOS fs

e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a5  FreeBSD         ee  GPT

f  W95 Ext'd (LBA) 54  OnTrackDM6      a6  OpenBSD         ef  EFI (FAT-12/16/

10  OPUS            55  EZ-Drive        a7  NeXTSTEP        f0  Linux/PA-RISC b

11  Hidden FAT12    56  Golden Bow      a8  Darwin UFS      f1  SpeedStor

12  Compaq diagnost 5c  Priam Edisk     a9  NetBSD          f4  SpeedStor

14  Hidden FAT16  61  SpeedStor       ab  Darwin boot     f2  DOS secondary

16  Hidden FAT16    63  GNU HURD or Sys af  HFS / HFS+      fb  VMware VMFS

17  Hidden HPFS/NTF 64  Novell Netware  b7  BSDI fs         fc  VMware VMKCORE

18  AST SmartSleep  65  Novell Netware  b8  BSDI swap       fd  Linux raid auto

1b  Hidden W95 FAT3 70  DiskSecure Mult bb  Boot Wizard hid fe  LANstep

1c  Hidden W95 FAT3 75  PC/IX           be  Solaris boot    ff  BBT

1e  Hidden W95 FAT1 80  Old Minix

Hex code (type L to list all codes): 8e

Changed type of partition 'Linux' to 'Linux LVM'

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.

The kernel still uses the old table. The new table will be used at

the next reboot or after you run partprobe(8) or kpartx(8)

Syncing disks.

Messaggio di errore previsto. Per rendere effettive le nuove modifiche, è necessario ricaricare il computer Linux.

[root@pcprdusecondary ~]# df -h

Filesystem             Size  Used Avail Use% Mounted on

/dev/mapper/rhel-root  4.0G  946M  3.1G  24% /

devtmpfs               3.9G     0  3.9G   0% /dev

tmpfs                  3.9G     0  3.9G   0% /dev/shm

tmpfs                  3.9G  8.6M  3.9G   1% /run

tmpfs                  3.9G     0  3.9G   0% /sys/fs/cgroup

/dev/sda1             1014M  143M  872M  15% /boot

/dev/mapper/rhel-home  2.0G   33M  2.0G   2% /home

tmpfs                  781M     0  781M   0% /run/user/0

[root@pcprdusecondary ~]# fdisk -l

Disk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk label type: dos

Disk identifier: 0x00025a26

Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *        2048     2099199     1048576   83  Linux

/dev/sda2         2099200    31211519    14556160   8e  Linux LVM

/dev/sda3        31211520   209715199    89251840   8e  Linux LVM

Disk /dev/mapper/rhel-root: 4294 MB, 4294967296 bytes, 8388608 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/mapper/rhel-swap: 8455 MB, 8455716864 bytes, 16515072 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/mapper/rhel-home: 2147 MB, 2147483648 bytes, 4194304 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

- Creare il volume fisico per sda3.

[root@pcprdusecondary ~]# pvcreate /dev/sda3

- pvscan - analizza ed elenca il gruppo di volumi fisici.

- vgscan - analizza ed elenca il gruppo di volumi logici.

- lvscan - ricerca ed elenca i volumi logici creati nel gruppo di volumi

La creazione di una LVM Linux è il prerequisito per l'installazione del server RDU.

- Nei nodi RDU primario e secondario è necessario creare un gruppo di volumi logici contenente tre volumi logici. I volumi logici vengono creati in base alle specifiche seguenti:

1. <volume logico per la directory di installazione di Prime Cable Provisioning> - Montato nella directory /bprHome. Ad esempio, LVBPRHOME.

2. <volume logico per la directory dati di Prime Cable Provisioning> - Montato nella directory /bprData. Ad esempio, LVBPRDATA

3. <volume logico per la directory di registro di Prime Cable Provisioning > - Montato nella directory /bprLog. Ad esempio, LVBPRDBLOG

- Creare gruppi di volumi e volumi logici in base ai requisiti e installarli nelle directory /bprData, bprHome e /bprLog.

Ad esempio:  Questa procedura prevede la creazione di volumi logici per BPRHOME con 3 GB di spazio su disco, BPRDATA con 15 GB di spazio su disco e BPRDBLOG con 5 GB di spazio su disco allocato. È necessario scegliere lo spazio su disco da estendere in base all'allocazione.

- Creare un gruppo di volumi.

vgcreate <nome_vg> <nome_pv>

[root@pcprdusecondary ~]# vgcreate rdusecondary /dev/sda3

- Creare volumi logici:

lvcreate -L <valorein GB> -n <nomevolume logico> <nomevolume>

[root@pcprdusecondary ~]# lvcreate -L +3GB -n LVBPRHOME rdusecondary

[root@pcprdusecondary ~]# lvcreate -L +15GB -n LVBPRDATA rdusecondary

[root@pcprdusecondary ~]# lvcreate -L +5GB -n LVBPRDBLOG rdusecondary

bprHome - percorso dell'applicazione di installazione (directory predefinita - /opt/CSCObac)

bprData - percorso dei dati di installazione. (Directory predefinita - /var/CSCObac)

bprLog - percorso del registro di installazione. (Directory predefinita - /var/CSCObac)

- Creare il file system XFS nella partizione lvm.

mkfs.xfs /dev/<nomegruppo volumetrico>/<volumogico>

[root@pcprdusecondary ~]# mkfs.xfs   /dev/rdusecondary/LVBPRHOME

[root@pcprdusecondary ~]# mkfs.xfs   /dev/rdusecondary/LVBPRDATA

[root@pcprdusecondary ~]# mkfs.xfs   /dev/rdusecondary/LVBPRDBLOG

- Creare una directory - bprHome, bprData, bprLog e montare volumi logici in queste directory.

[root@pcprdusecondary ~]# mkdir bprHome

[root@pcprdusecondary ~]# mkdir bprData

[root@pcprdusecondary ~]# mkdir bprLog

- Montare il volume logico creato in queste directory.

[root@pcprdusecondary ~]# mount /dev/RDUPRIMARY/LVBPRHOME   /bprHome/

[root@pcprdusecondary ~]# mount /dev/RDUPRIMARY/LVBPRDATA   /bprData/

[root@pcprdusecondary ~]# mount /dev/RDUPRIMARY/LVBPRDBLOG   /bprLog

- Questi comandi possono essere utilizzati per integrare e verificare il nuovo stato della partizione, il nuovo stato dei volumi fisici e logici, il tipo di file system e i blocchi di allocazione.

[root@pcprdusecondary ~]# fdisk -l

[root@pcprdusecondary ~]# pvdisplay

[root@pcprdusecondary ~]# vgdisplay

[root@pcprdusecondary ~]# lvdisplay

Nota:

- Non è necessario aggiungere le voci fstab per i volumi logici. Il cluster Corosync si occuperà del montaggio dei volumi. In passato, alcuni clienti hanno dovuto affrontare problemi a causa di queste voci. Durante il riavvio del sistema, a volte a causa di problemi di tempo, sia il server primario che quello secondario tentano di montare i volumi.

- Il nome del gruppo di volumi e i volumi logici (LVBPRHOME, LVBPRDATA, LVBPRDBLOG) devono essere uguali in entrambi i server. Devono condividere lo stesso spazio su disco in entrambi i server.

- La sincronizzazione dei file system dei dispositivi a blocchi DRBD funziona solo se le dimensioni dei dischi sono uguali su entrambi i server.

- La versione di CentOS Linux deve essere 7.4 e il kernel deve essere 3.10.0-693.11.6.el7.x86_64.

- Verificare che entrambi i server utilizzino la stessa interfaccia per l'indirizzo IP pubblico in cui viene annunciato il VIP, ovvero ens192.

2. Preparare il server Linux 7.4 per l'installazione di RDU HA su entrambi i server

- Modalità di installazione RDU HA

- Fasi iniziali comuni per la configurazione dei nodi RDU HA

- Configurazione di RDU HA in modalità primaria-secondaria

- Preparazione dei nodi RDU per l'installazione di HA in modalità primaria-secondaria

3. Installare il server RDU in modalità di ridondanza geografica

- Configurazione della coppia di failover RDU a due nodi

- Configurazione di RDU HA in modalità solo principale e solo secondaria

- Ripristino di un nodo RDU interessato tramite la modalità di ripristino

Per ulteriori informazioni, consultare la Guida introduttiva:

https://www.cisco.com/c/en/us/td/docs/net_mgmt/prime/cable_provisioning/6-1-3/quick/start/guide/CiscoPrimeCableProvisioning-6_1_3-QuickStartGuide/CiscoPrimeCableProvisioning-6_1_3-QuickStartGuide_chapter_0101.html#task_1DBF800D2FF84D73BD972A0C6C7B92E6

4. Prerequisiti di routing di layer 3 per la distribuzione della ridondanza geografica

RDU Geo-Redundancy

La ridondanza geografica RDU è una funzione avanzata di RDU HA supportata in RHEL 7.4 o CentOS 7.4 (entrambi a 64 bit), in cui il nodo principale e secondario RDU può trovarsi in una posizione geografica diversa o entrambi i nodi possono trovarsi in una subnet diversa.

- In modalità di ridondanza geografica, l'indirizzo VIP può trovarsi in qualsiasi subnet che non è necessario avere nell'intervallo di subnet comune a entrambi i nodi.

- In modalità di ridondanza geografica il valore CIDR di VIP deve essere 32.

- Il VIP verrà pubblicizzato come annuncio RIP dal server attivo, quindi è necessario eseguire l'inserimento del router in entrata di entrambi i nodi.

- In modalità di ridondanza geografica, l'indirizzo VIP verrà monitorato utilizzando l'agente di risorsa (res_VIPArip).

Requisiti di ridondanza geografica PCP

L'inserimento di route per l'indirizzo IP virtuale (VIP) deve essere eseguito sui router in entrata a cui sono connessi i server primario e secondario.

L'indirizzo VIP verrà annunciato come annuncio RIP2 dal server attivo, pertanto è necessario eseguire la ridistribuzione delle route per RIP2 al protocollo di routing dinamico in esecuzione nell'ambiente utente.

Come ridistribuire e annunciare la route RIP2 a OSPF IGRP. La stessa ridistribuzione può essere utilizzata per altri protocolli come EIGRP/IBGP.

Per la soluzione di ridondanza geografica PCP, il valore CIDR di VIP deve essere 32.

- Se l'annuncio tramite quagga è abilitato, immettere l'interfaccia attraverso la quale si desidera annunciare l'indirizzo VIP. Per impostazione predefinita, il nome dell'interfaccia è eth0. Verificare che il nome sia lo stesso sul server principale e su quello secondario. Verificare inoltre che l'interfaccia sia collegata al router in entrata su cui viene eseguito il routing injection.

- Se l'annuncio tramite quagga è disabilitato, immettere il valore CIDR per VIP

- /etc/quagga/ripd.conf. - percorso in cui RIP2 conf viene aggiunto in modalità geografica. https://www.nongnu.org/quagga/docs/quagga.html#RIP

- È necessario inserire l'adiacenza RIP nel router adiacente connesso sia al server principale che a quello secondario. Configurazione di esempio simile alla seguente:

- Configurazione adiacenze per peer adiacente. Questa condizione deve essere implementata in entrambi i router. Per annunciare l'interfaccia è necessario aggiungere VIP e rete IP pubblica.

- Route per indirizzo VIP.

- Pubblicizzare questa rete RIP tramite ospf/eigrp/static in base al percorso che consente di pubblicizzare il mondo esterno.

Example: Here OSPF is the dynamic protocol

router ospf <processed>

redistribute rip metric-type 1 subnets. For RIP2, it uses metric as hop count.

Example: Here ISIS is the dynamic protocol

router isis

redistribute rip metric

Verifica successiva HA

- Verificare lo stato del cluster RDU HA utilizzando il comando /bprHome/CSCObac/agent/HA/bin/monitor_ha_cluster.sh.

- Garantire il funzionamento di RDU HA senza problemi con la modalità di ridondanza geografica. Attendere che i dischi DRBD primario e secondario vengano sincronizzati e mostrino lo stato aggiornato (cat /proc/drbd).