Linha de comando da HMC: Administrando as partições (lpar)

A HMC (Hardware Management Console), console de administração de servidores Power da IBM oferece, além da interface gráfica web, a opção de linha de comando, onde podemos de maneira rápida e prática executar tarefas de administração das partições. Seu sistema operacional, HMC OS, é baseado em Linux.

Selecionei alguns comandos que considero úteis na administração das partições (lpar) e que utilizo com mais frequência:

  • Como verificar a versão da HMC:
lshmc -V
  • Abrir terminal de uma partição. Pode-se usar a opção -p ou -id:
mkvterm -m [nome servidor Power] -p [nome da partição]
                                 -id [id da partição]

Para fechar a conexão de terminal, digite: ~~.

  • Listar as partições (lpar) do servidor Power, mostrando algumas características (especificadas na opção -F do comando):
lssyscfg -r lpar -m [nome servidor Power] -F name,lpar_id,state,default_profile,curr_profile
  • Listar o profile completo de uma determinada partição (lpar):
lssyscfg -r prof -m [nome servidor Power] --filter "lpar_ids=[id da partição]"

Você pode indentificar o id da partição executando o comando lparstat -i na partição.

  • Verificar o status de uma partição (lpar):
lssyscfg -m [nome servidor Power] -r lpar -F name:state |grep [nome da partição]
  • Desligar (shutdown) uma partição (lpar):
chsysstate -m [nome servidor Power] -o shutdown -r lpar --immed -n [nome da partição]
  • Ligar / Ativar uma partição (lpar):

Inicialização (boot) em modo normal:

chsysstate -m [nome servidor Power] -r lpar -o on -n [nome da partição] -f [nome do profile]

Inicialização (boot) em modo de manutenção, SMS:

chsysstate -m [nome servidor Power] -r lpar -o on -b sms -n [nome da partição] -f [nome do profile]
  •  Como alterar configuração do profile de uma partição (lpar):

No exemplo a seguir, alterando o sharing_mode para cap:

chsyscfg -r prof -m [nome do servidor Power] -i "name=[nome do profile],lpar_name=[nome da partição],sharing_mode=cap"

Após feito isso, a partição precisa ser reinicializada e desligada com a opção halt. Na partição (lpar)

shutdown -Fh

Após desligar, inicie a partição com o comando chsyscfg mostrado acima.

  • Nota: Os colchetes [ ] utilizados nos comandos acima não fazem parte do comando e são apenas utilizados para marcar as partes do comando com informação variável.

 

Referência:

  1. Documentação da IBM sobre diversar versões de HMC (em inglês): http://www14.software.ibm.com/webapp/set2/sas/f/hmcl/resources.html
  2. LPAR facts. Inclui seção de comandos da consoke HMC (em inglês): http://jeeva.us/AIX/LPAR

Como suprimir uma mensagem do log de erro no AIX

O sistema operacional AIX tem um sistema de logs de erro, chamado em inglês de error log, que acessamos através do comando errpt.

Há situações onde o sistema operacional está reportando erros que queremos suprimir desse sistema de logs como por exemplo:

  • O sistema de logs está sendo inundado por um log que reporta um problema que está planejado pra ser resolvido.
  • O log não representa um problema, pois é consequência de algum bug do AIX e você quer removê-lo do log até que a IBM corrija o bug e você aplique a correção.
  • O log até representa um problema, mas por algum motivo sua empresa decidiu conviver com ele e ele não será resolvido em curto prazo.

Enfim, há diversos cenários onde pode ser desejável suprimir  uma certa mensagem de erro. Frequentemente o sistema de logs de erro é monitorado e gera alertas, incidentes e não queremos ter alertas e incidentes que por qualquer motivo não serão tratados ou já tem sua solução programada.

Continue reading Como suprimir uma mensagem do log de erro no AIX

Unix: Como substituir letra maiúscula por minúscula em um arquivo

Para converter letras maiúsculas em letras minúsculas em um arquivo em sistemas Unix, pode-se usar o comando tr com a sintaxe a seguir:

tr '[:upper:]' '[:lower:]' < [arquivo] > [novoarquivo]

O comando tr pode ser usado para diversas outras manipulações de caracteres. Para mais informações consulte a man page do comando: man tr

O link a seguir tem mais informa̵̤es sobre o comando tr no AIX 7: AIX 7 РHelp Information РCommands Рtr

 

Lista de alguns comandos do NIM (Network Installation Manager)

Apenas uma lista de alguns comandos do NIM.

List the NIM clients:

# lsnim -t standalone

List the machine information:

# lsnim -l <nimclientname>
<nimclientname>:
   class          = machines
   type           = standalone
   connect        = shell
   platform       = chrp
   netboot_kernel = mp
   if1            = master_net <nimclientname> 7e7895fe785a
   cable_type1    = bnc
   Cstate         = BOS installation has been enabled
   prev_state     = not running
   Mstate         = in the process of booting
   info           = LED 611: failure: mount <hostname>:/filesystem/mksysb/aix_5300-06_latest.mksysb /NIM_BOS_IMAGE
   boot           = boot
   mksysb         = mksysb_aix_5300-06
   nim_script     = nim_script
   spot           = 5300-06_spot
   cpuid          = 00CC9XXXXXXXX
   control        = master

 

Reset the machine:

# nim -Fo reset

After the reset:

# lsnim -l <nimclientname>
<nimclientname>:
   class          = machines
   type           = standalone
   connect        = shell
   platform       = chrp
   netboot_kernel = mp
   if1            = master_net <nimclientname> 7e7895fe785a
   cable_type1    = bnc
   Cstate         = ready for a NIM operation
   prev_state     = BOS installation has been enabled
   Mstate         = in the process of booting
   mksysb         = mksysb__aix_5300-06
   spot           = 5300-06_spot
   cpuid          = 00CCXXXXXX
   control        = master
   Cstate_result  = reset

Deallocate resources:

mksysb:

# nim -o deallocate -a mksysb=mksysb_aix_5300-06

spot:

# nim -o deallocate -a spot=5300-06_spot -a subclass=all

AWK – Como usar uma variável shell

Para usar uma variável shell numa linha de comando do AWK, há 2 maneiras de se fazer isso.

Uma delas é usar aspas como no exemplo abaixo usando a variável shell count:

awk "/ $count/ " ' { print $1 }'

A outra é atribuir o valor da variável à  uma variável do próprio awk através da opção -v. Por exemplo, usando a variável shell count e a variável awk co:

awk -v co="$count" '{if ($1 == co) print $2 }'`

Referência:

IBM VIO server: Como identificar qual o vhost de uma lpar no VIO

Dada uma lpar já configurada no VIO server, como você identifica qual é o vhost dessa lpar?

Num cenário com 2 VIO servers, foovio1 e foovio2, e utilizando a HMC, veja como fazer para identificar qual o vhost da sua lpar, foolpar:

1 – Na HMC:

> lssyscfg -r lpar -m [system] -F name,lpar_id,default_profile,curr_profile |grep foolpar
foolpar,7,foolpar,foolpar
> lssyscfg -r prof -m [system] --filter "lpar_ids=X"
name=foolpar,lpar_name=foolpar,lpar_id=7,lpar_env=aixlinux,all_resources=0,min_mem=8192,desired_mem=24576,
max_mem=32768,min_num_huge_pages=0,desired_num_huge_pages=0,max_num_huge_pages=0,proc_mode=shared,min_proc_units=1.75,
desired_proc_units=3.5,max_proc_units=7.0,min_procs=2,desired_procs=4,max_procs=8,sharing_mode=uncap,uncap_weight=128,
io_slots=none,lpar_io_pool_ids=none,max_virtual_slots=400,
"virtual_serial_adapters=0/server/1/any//any/1,1/server/1/any//any/1",

"virtual_scsi_adapters=107/client/97/foovio1/107/0,207/client/98/foovio2/207/0",

"virtual_eth_adapters=20/0/20//0/0,21/0/21//0/0,11/0/11//0/0,30/0/30//0/0",hca_adapters=none,boot_mode=norm,conn_monitoring=1,
auto_start=0,power_ctrl_lpar_ids=none,work_group_id=none,redundant_err_path_reporting=1
  • [system] É o nome do frame, da máquina física.
  • X é o id da lpar (identificado no primeiro comando acima, na HMC)

No “virtual_scsi_adapters” você consegue ver qual o virtual adpater de cada VIO server. No caso:

foovio1: 107
foovio2: 207

2 – Nos VIO servers:

foovio1

>  /usr/ios/cli/ioscli lsmap -all |egrep -e "0x0000000Y|C107"
vhost8          U9115.570.06BCXD0-V97-C107                   0x0000000Y
  • Y é o id da lpar (identificado no primeiro comando acima, na HMC)

foovio2

>  /usr/ios/cli/ioscli lsmap -all |egrep -e "0x0000000Y|C207"
vhost6          U9115.570.06BCXD0-V94-C207                   0x0000000Y
  • Y é o id da lpar (identificado no primeiro comando acima, na HMC)
  • OBS: Você usa o  /usr/ios/cli/ioscli se estiver como root. Se estiver como padmin, não use essa parte do comando.

O vhost da lpar no vio está identificado nos dois vio servers.

O unix, o universo e tudo mais.