Alternate Disk - AIX 5.2 / 5.3

Posted by kairo on Mon 17 March 2008

Apresentação:


O Alternate Disk é uma solução para clonar o sistema operacional AIX em um disco de stand by, que se for forçado o boot via SMS ou indicado como um boot válido no bootlist do AIX será restaurado.
Uma melhor explicação também seria chamá-lo: mksysb em disco.
Se seu rootvg esta em mirror em dois discos (normalmente hdisk0 e hdisk1) basta quebrar o mirror e realizar os procedimentos -- este artigo demonstra como fazer caso seus logical volumes (LV) não estejam espelhados.
Uma aplicação interessante para esta solução é uma contingência rápida para recuperação de ambiente em atividades críticas tais como aplicação de ML, migração/upgrade de versão.
Isto porque o backup image tem um restore a partir de uma mídia ou de um nimsrv (pretendo abordá-lo no futuro)

Resumo:

1. Pré-requesitos
a. Instalação do pacote do alternate disc
b. Calcular espaço dos LVs não espelhados
3. Quebrar o espelhamento do rootvg
4. Remover área de boot do hdisk 1
5. Verificar conteúdo não espelhado e migrar para o hdisk0
6. Remover o hdisk1 do rootvg
7. Cria o boot image no hdisk0
8. Verifica a sequencia de boot
9. Realiza o alternate Disk
10. Valida o Alternate Disk em disco
11. Removendo o alternate disk
12. Adicionando o disco novamente ao rootvg
13. Recriando o mirror entre os discos
14. Recolocando os discos no boot list e recriando áreas de boot
15. Validação com boot

1. Pré-requesitos

a. Instalação do pacote do alternate disc
O pacote bos.alt_disc_install pode ser obtido na mídia dois do AIX 5.2 ou 5.3
Instale via

# smitty install

Nota: Se seu ambiente já possuir MLs aplicadas e recomendado fazer o download dos fixes e aplicá-los.

b. Calcular espaço dos LVs não espelhados
Caso tenha Logical Volume (LV) não espelhados é preciso identicar se o hdisk que será utilizado dispõe de espaço para receber estes LVs.
Exemplo:

#lsvg –l rootvg rootvg: LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT hd5 boot 1 2 2 closed/syncd N/A hd6 paging 80 160 2 open/syncd N/A hd8 jfs2log 1 2 2 open/syncd N/A hd4 jfs2 1 2 2 open/syncd / hd2 jfs2 53 106 2 open/syncd /usr hd9var jfs2 1 2 2 open/syncd /var hd3 jfs2 10 20 2 open/syncd /tmp hd1 jfs2 2 4 2 open/syncd /home hd10opt jfs2 1 2 2 open/syncd /opt lg_dumplv sysdump 16 16 2 open/syncd N/A paging00 paging 80 160 2 open/syncd N/A teste-lv jfs2 10 10 1 open/syncd /teste-lv lvML jfs2 24 24 2 open/syncd /ML

# lslv -l testelv teste-lv:/teste-lv PV COPIES IN BAND DISTRIBUTION Hdisk1 010:000:000 0% 010:000:000:000:000

Os LVs teste-lv não ficará no disco após a quebra do mirror.
Desta formaerá necessário 10 PPs a mais no disco hdisk0

# lspv hdisk0 | grep FREE FREE PPs: 252 (32256 megabytes) HOT SPARE: no FREE DISTRIBUTION: 67..00..00..76..109

3. Quebrar o espelhamento do rootvg

# unmirrorvg -c1 rootvg hdisk1

Estou removendo o hdisk1, onde fazerei o alternate

4. Remover área de boot do hdisk 1

# chpv -c hdisk1

5. Verificar conteúdo não espelhado e migrar para o hdisk0

Verifica LVs presentes no disco

# lspv -l hdisk1

Migra todo o restante para o hdisk0, lembrand que não podem possuir o mesmo nome.

#migratepv hdisk1 hdisk0

Verifica se não sobrou nada, se está zerado

# lspv -l hdisk1

6. Remover o hdisk1 do rootvg

Retira o hdisk1 do rootvg

# reducevg rootvg hdisk1

Verifica se está somente o hdisk0 no rootvg

# lsvg -p rootvg

7. Cria o boot image no hdisk0

# bosboot -a -d /dev/hdisk0

Verifica o bootlist do hdisk0

# bootlist -m normal hdisk0

8. Verifica a sequencia de boot

# bootlist -m normal –o

9. Realiza o alternate Disk

# alt_disk_install -C -O hdisk1 Calling mkszfile to create new /image.data file. Checking disk sizes. Creating cloned rootvg volume group and associated logical volumes. Creating logical volume alt_hd5. Creating logical volume alt_hd6. Creating logical volume alt_hd8. Creating logical volume alt_hd4. Creating logical volume alt_hd2. Creating logical volume alt_hd9var. Creating logical volume alt_hd3. Creating logical volume alt_hd1. Creating logical volume alt_hd10opt. Creating /alt_inst/ file system. Creating /alt_inst/home file system. Creating /alt_inst/opt file system. Creating /alt_inst/tmp file system. Creating /alt_inst/usr file system. Creating /alt_inst/var file system. Generating a list of files for backup and restore into the alternate file system... Backing-up the rootvg files and restoring them to the alternate file system... Modifying ODM on cloned disk. Building boot image on cloned disk. forced unmount of /alt_inst/var forced unmount of /alt_inst/usr forced unmount of /alt_inst/tmp forced unmount of /alt_inst/opt forced unmount of /alt_inst/home forced unmount of /alt_inst forced unmount of /alt_inst Changing logical volume names in volume group descriptor area. Fixing LV control blocks... Fixing file system superblocks...

10. Valida o Alternate Disk em disco

# lspv | grep root hdisk0 00531d9a33ff6ab5 rootvg active hdisk1 00531d9a47ed2df6 altinst_rootvg

11. Removendo o alternate disk

# alt_disk_install -X altinst_rootvg

12. Adicionando o disco novamente ao rootvg

# extendvg rootvg hdisk1

13. Recriando o mirror entre os discos

# nohup mirrorvg rootvg hdisk1 &

14. Recolocando os discos no boot list e recriando áreas de boot

Recoloca os discos no boot list normal

# bootlist -m normal hdisk0 hdisk1

Recriar area de boot

# bosboot -a -d /dev/hdisk00 # bosboot -a -d /dev/hdisk01

15. Validação com boot

# shutdown -Fr


Comments !