NetWorker: Como usar o comando nsrpolicy
Résumé: Este artigo fornece informações sobre como usar o comando nsrpolicy do NetWorker para executar tarefas administrativas do NetWorker.
Instructions
A coluna nsrpolicy command é um comando administrativo do NetWorker usado para gerenciar e monitorar políticas do NetWorker. Muitas das mesmas funções são executadas no NetWorker Management (NMC) e no Web UI (NWUI); No entanto nsrpolicy Fornece aos administradores recursos de linha de comando.
nsrpolicy Deve ser executada sob uma das seguintes condições:
- Você está executando o comando de um prompt elevado. Prompt de comando do administrador/PowerShell no Windows ou root/
sudoshell no Linux. - Você está executando o comando em um prompt não elevado, mas emitiu um token de autenticação do NetWorker:
nsrlogin -u USERNAME
nsrlogin emite um token de autenticação baseado em tempo para administração do NetWorker, usando as credenciais de usuário do NetWorker. Se você estiver usando nsrlogin, é importante encerrar a sessão com nsrlogout quando as atividades tiverem sido concluídas. Isso impede que tokens obsoletos interfiram nos comandos subsequentes.
Visão geral do uso:
nsrpolicy
policy
create | delete | display | update | list
workflow
create | delete | display | update | list
action
create | delete | display | update | list
group
create | delete | display | update
start
Must have: -p [policy] -w [workflow]
Other options (NetWorker 9.2 and above for -c option): -c { <client_name1:[save_set_path_1;save_set_path_2],client_name2...> -s [NetWorker server] -D [debug level] -h
stop
Must have: Either -j [jobid] or -p [policy] -w [workflow]
Other options: -s [NetWorker server] -D [debug level] -h
monitor
Must have: -p [policy]
Other options: -w [workflow] -c [client] -g [group] -d [details] -n [non-tabular] -j [jobid] -s [NetWorker server] -D [debug level] -h
input-file
Must have: -f [file name]
Other options: [--stop_on_error -S <0/1; default:0 (Do not stop)>] [--stop_on_error -S <0/1; default:0 (Do not stop)>] -D [debug level] -h
restart
Must have: Either -j [jobid] or -p [policy] -w [workflow]
Other options: -s [NetWorker server] -D [debug level] -h
migrate
Must have what is to be migrated: group | schedule_clone | nas_device | vmware_policy
Other options: -s [NetWorker server] -D [debug level] -h
help
Exemplos:
Liste objetos na zona de dados:
nsrpolicy [object] list
Objetos: política, fluxo de trabalho, ação
nsrpolicy policy list nsrpolicy workflow list -p "VMware Protection" nsrpolicy action list -p "VMware Protection" -w "Full VM"
Exiba as propriedades de uma ação:nsrpolicy action display -p [policy] -w [workflow] -A [action]
nsrpolicy action display -p "VMware Protection" -w "Full VM" -A backup
Exiba as propriedades de um grupo:nsrpolicy group display -g [group]
nsrpolicy group display -g "VMware Protection - Full VM"
Desativar ou ativar uma ação:nsrpolicy action update [action type backup subtype] -p [policy] -w [workflow] -A [action] -e [no/yes]
nsrpolicy action update backup traditional -p "Client Protection" -w "Traditional Client" -A backup -e no nsrpolicy action update backup traditional -p "Client Protection" -w "Traditional Client" -A backup -e yes
Para alterar o agendamento associado a uma ação:nsrpolicy action update [action type backup subtype] -p [policy] -w [workflow] -A [action] -t [schedule]
nsrpolicy action update backup traditional -p "Client Protection" -w "Traditional Client" -A backup -t full,incr,incr,incr,incr,incr,incr
Adicionar um client a um grupo usando um arquivo de entrada (uma instância do client já deve existir):
Crie um arquivo de entrada com o texto:group update client -g [group] --add_clnt_list [client]:[saveset]
[root@nsr ~]# cat AddTraditionalClient.txt group update client -g "Client Protection - Traditional Client" --add_clnt_list win-client03.amer.lan:All
nsrpolicy input-file -f "[path to input file]"
[root@nsr ~]# nsrpolicy input-file -f /root/AddTraditionalClient.txt 121415:nsrpolicy: Command from file: group update client -g "Client Protection - Traditional Client" --add_clnt_list win-client03.amer.lan:All 133584:nsrpolicy: Group 'Client Protection - Traditional Client' was successfully updated
Crie um novo fluxo de trabalho com valores não padrão para comentário, hora de início e grupo:nsrpolicy workflow create -p [policy] -w [workflow] -c [comment] -g [group] -S [start time]
nsrpolicy workflow create -p "Client Protection" -w "Traditional Client - Linux" -c "Linux Clients" -g "Linux - Clients" -S "10:00"
Crie uma nova ação com valores não padrão para o pool de destino e o limite de sucesso:nsrpolicy action create [action type backup subtype] -p [policy] -w [workflow] -A [action] -o [target pool] -u [success threshold]
nsrpolicy action create backup traditional -p "Client Protection" -w "Traditional Client - Linux" -A backup -o "Data Domain Default" -u success
Inicie um fluxo de trabalho (não é possível iniciar uma ação dessa maneira. Você deve iniciar todo o fluxo de trabalho).nsrpolicy start -p [policy] -w [workflow]
nsrpolicy start -p "Client Protection" -w "Traditional Client - Linux"
Interrompa um fluxo de trabalho:nsrpolicy stop -p [policy] -w [workflow]
nsrpolicy stop -p "Client Protection" -w "Traditional Client - Linux"
jobkill:
[root@nsr ~]# nsrpolicy start -p "Client Protection" -w "Traditional Client - Linux" 144091:nsrpolicy: Workflow 'Client Protection/Traditional Client - Linux' started and has job id 1248743 [root@nsr ~]# [root@nsr ~]# jobkill -j 1248743 Terminating job 1248743
Inicie um client em um fluxo de trabalho:nsrpolicy start -p [policy] -w [workflow] -c "[client]:[saveset]
nsrpolicy start -p "Client Protection" -w "Traditional Client - Linux" -c "rhel-client03.amer.lan:All"
Monitore a execução mais recente dos fluxos de trabalho em uma política:nsrpolicy monitor -p [policy] -dn
nsrpolicy monitor -p "Client Protection" -dn
nsrwatch Comando para monitorar sessões.
Resultado de trabalho detalhado para um trabalho recente específico:nsrpolicy monitor -j [job id]
nsrpolicy monitor -j 290473
jobquery:
jobquery
print type: backup action job
Para iniciar um fluxo de trabalho no modo de depuração, nsrpolicy não é tão eficaz quanto o nsrworkflow comando porque 'nsrpolicy start' não registra a saída de depuração no /nsr/logs/policy pasta que nsrworkflow vontade de .raw .nsrworkflow -D[Debug Level] -p [policy] -w [workflow] -A "[action]"
nsrworkflow -D9 -p "Client Protection" -w "Traditional Client - Linux"
Para obter mais informações sobre os níveis de depuração do NetWorker, consulte: NetWorker: Níveis de informações de depuração
nsrworkflow A depuração só depura as mensagens do lado do servidor do NetWorker. Ele não adiciona depuração às operações realizadas no client/sistema que está executando o backup.
Exemplo de ativação save -D3 backups em um client do NetWorker, usando o utilitário de linha de comando nsradmin:
[root@nsr ~]# nsradmin NetWorker administration program. Use the "help" command for help, "visual" for full-screen mode. nsradmin> . type : NSR Client; name : rhel-client03.amer.lan Current query set nsradmin> update backup command : save -D3 backup command: save -D3; Update? y updated resource id 48.0.46.11.0.0.0.0.231.177.13.90.10.60.28.121(13)
No exemplo acima, quando o fluxo de trabalho do client é iniciado, o save O processo é iniciado no cliente com a depuração ativada (-D3) neste caso.
Para depurar funções específicas de backup, consulte: NetWorker: Como depurar operações de backup (em inglês)
Log:
Todos os backups de política e fluxo de trabalho são registrados no diretório de logs do NetWorker:
Linux: /nsr/logs/policy/POLICY_NAME
Windows (padrão): C:\Program Files\EMC NetWorker\nsr\logs\policy\POLICY_NAME
As mensagens gerais do servidor são registradas no daemon.raw:
Linux: /nsr/logs/daemon.raw
Windows (padrão): C:\Program Files\EMC NetWorker\nsr\logs\daemon.raw
NetWorker: Como usar nsr_render_log para processar arquivos de log .raw
jobsdb período de retenção (padrão de 72 horas). Os registros passados no período de retenção são removidos do sistema durante as tarefas de expiração.
Exemplos de script:
nsrpolicy recursos além do uso de linha única e como se pode administrar o servidor NetWorker a partir da CLI. Não implemente/use scripts em seu ambiente sem testar ou entender as funções. O suporte do NetWorker não oferece nem fornece soluções de script ou suporte a scripts.
Linux:
Exemplo 1: Liste todas as políticas e seus fluxos de trabalho. Esse script de shell executa um loop pela lista de políticas na configuração do NetWorker e executa o comando "nsrpolicy workflow list" em cada um deles, de modo que ele gere uma lista de nomes de fluxo de trabalho para cada política.
#!/usr/bin/sh
IFS=$'\n'
fullpolicylist=(`nsrpolicy policy list`)
for lp in "${fullpolicylist[@]}"
do
echo " "
echo "POLICY: $lp"
echo "Workflows"
nsrpolicy workflow list -p "$lp"
done
Exemplo 2: Liste todas as políticas e seus fluxos de trabalho e ações e o pool de destino. Esse script de shell executa três loops para obter a lista de políticas, fluxos de trabalho e ações. Os nomes de cada um são exibidos e o parâmetro do nó de armazenamento de destino da ação.
#!/usr/bin/env bash
set -euo pipefail
# Read policies into an array (one per line)
mapfile -t fullpolicylist < <(nsrpolicy policy list)
for lp in "${fullpolicylist[@]}"; do
echo "------------------"
echo "POLICY: $lp"
# Read workflows for this policy
mapfile -t wflist < <(nsrpolicy workflow list -p "$lp")
for w in "${wflist[@]}"; do
echo
echo "WORKFLOW: $w"
# Read actions for this workflow
mapfile -t alist < <(nsrpolicy action list -p "$lp" -w "$w")
for a in "${alist[@]}"; do
echo "ACTION: $a"
# Pull DestinationPool value
destpool=$(
nsrpolicy action display -p "$lp" -w "$w" -A "$a" \
| awk -F': ' '/DestinationPool/ {print $2; exit}'
)
echo "Destination Pool: ${destpool:-<none>}"
done
done
done
Windows PowerShell:
Exemplo 1: Lista de fluxos de trabalho. Lista as políticas e seus fluxos de trabalho fazendo um loop pela lista de políticas e executando o comando "nsrpolicy workflow list" para cada política.
$listp = nsrpolicy policy list
foreach ($i in $listp)
{
write-host "-----"
write-host "POLICY: $i"
write-host "WORKFLOWS: "
nsrpolicy workflow list -p "$i"
}
Exemplo 2: Lista de ações. Três loops são criados. Um loop para listar as políticas e, em seguida, um loop para listar todos os workflows de cada política e, em seguida, um loop para listar todas as ações de cada workflow.
$listp = nsrpolicy policy list
foreach ($p in $listp)
{
write-host "-----"
write-host "POLICY: $p"
write-host "WORKFLOWS: "
$wlist = nsrpolicy workflow list -p $p
foreach ($w in $wlist)
{
write-host "$w"
write-host "ACTIONS:"
$alist = nsrpolicy action list -p "$p" -w "$w"
foreach ($a in $alist)
{
write-host "$a"
}
}
}Informations supplémentaires
A primeira etapa é fazer login no servidor NetWorker na linha de comando usando o comando nsrlogin com as mesmas credenciais que você usa para fazer login no NetWorker Management Console.Ao executar o comando nsrlogin, o host do NetWorker entra em contato com o NetWorker AuthenticationService para validar as credenciais de login do usuário.
nsrlogin -u [nome de usuário] - p [senha]
O comando nsrpolicy tem várias opções diferentes disponíveis em cada nível. Pressionar a tecla Enter em cada etapa fornecerá a lista completa de opções disponíveis para a próxima parte do comando:
nsrpolicy
policy
create | delete | display | update | list
workflow
create | delete | display | update | list
action
create | delete | display | update | list
groupcreate | delete | display | update
start
É necessário ter: -p [política] -w [fluxo de trabalho]
Outras opções (NetWorker 9.2 e superior para a opção -c): -c { <client_name1:[save_set_path_1; save_set_path_2],client_name2...> -s [servidor do NetWorker] -D [nível de depuração] -h
parar
É necessário ter: -j [jobid] ou -p [política] -w [fluxo de trabalho]
Outras opções: -s [servidor do NetWorker] -D [nível de depuração] -h
monitor
É necessário ter: -p [política]
Outras opções: -w [fluxo de trabalho] -c [client] -g [grupo] -d [detalhes] -n [não tabular] -j [jobid] -s [servidor NetWorker] -D [nível de depuração] -h
arquivo
de entradaÉ necessário ter: -f [nome do arquivo]
Outras opções: [--stop_on_error -S <0/1; padrão:0 (não parar)>] [--stop_on_error -S <0/1; padrão:0 (não parar)>] -D [nível de depuração] -h
reiniciar
Deve ter: -j [jobid] ou -p [política] -w [fluxo de trabalho]
Outras opções: -s [servidor do NetWorker] -D [nível de depuração] -h
migrar
O que deve ser migrado deve ter : group | schedule_clone | nas_device | vmware_policy
Outras opções: -s [servidor do NetWorker] -D [nível de depuração] -h
Ajuda
EXEMPLOS DE LINHA DE COMANDO:
Listar políticas na lista
de políticas nsrpolicy da
zona
de dadoslista de políticas nsrpolicyExibir as propriedades de uma ação:
nsrpolicy action display -p [policy] -w [workflow] -A [action]
Ação nsrpolicy exibe -p Mona -w Mona_wf -A backup
Exiba as propriedades de um grupo:
nsrpolicy group display -g [grupo]
exibição do grupo nsrpolicy -g Felix
Desabilite uma ação:
nsrpolicy action update [action type backup subtype] -p [policy] -w [workflow] -A [action] -e no
nsrpolicy action update backup traditional -p FrankHoenikker -w FrankH -A backup -e no
Para alterar o agendamento associado a uma ação:
Atualização da ação nsrpolicy [subtipo de backup do tipo de ação] -p [política] -w [fluxo de trabalho] -A [ação] -t [agendamento]
nsrpolicy action update backup traditional -p Mona -w Mona_wf -A backup -t full,incr,incr,incr,incr,incr,incr
Adicione um client a um grupo usando um arquivo de entrada (a instância do client já deve existir):
Crie um arquivo de entrada com o texto: group update client -g [group] --add_clnt_list [client]:[saveset]
cat AddAlicetoTheHook.input
group update client -g TheHook --add_clnt_list vm-lego-231:/alice
nsrpolicy input-file -f "[path to input file]"
nsrpolicy input-file -f "/nsr/AddAlicetoTheHook.input"
Crie um novo fluxo de trabalho com valores não padrão para comentário, hora de início e grupo:
nsrpolicy workflow create -p [política] -w [fluxo de trabalho] -c [comentário] -g [grupo] -S [hora de início]
nsrpolicy workflow create -p Mona -w Papa -c "Workflow for RedHat 6 clients" -g PapaMgroup -S "10:00"
Criar uma nova ação com valores não padrão para o pool de destino e o limite
de sucesso nsrpolicy action create [action type backup subtype] -p [policy] -w [workflow] -A [action] -o [target pool] -u [success threshold]
nsrpolicy action create backup traditional -p Mona -w Papa -A papabackup -o SanLorenzoDDPool -u success
Iniciar um fluxo de trabalho (Observe que não é possível iniciar uma ação dessa maneira. Você deve iniciar todo o fluxo de trabalho).
nsrpolicy start -p [política] -w [fluxo de trabalho]
nsrpolicy start -p Mona -w Mona_wf
Interrompa um fluxo de trabalho (você pode obter o jobid relevante usando o "nsrpolicy monitor" comand - veja abaixo):
nsrpolicy stop -j [jobid]
nsrpolicy stop -j 320819
Inicie um client em um fluxo de trabalho:
nsrpolicy start -p [policy] -w [workflow] -c "[client]:[saveset]
nsrpolicy start -p Mona -w Mona_wf -c "vm-wego-231:/felix"
Monitore a execução mais recente dos fluxos de trabalho em uma política:
nsrpolicy monitor -p [política] -dn
nsrpolicy monitor -p Mona -dn
Resultado de trabalho detalhado para um trabalho recente específico:
nsrpolicy monitor -j [id do trabalho]
NSRPOLICY Monitor -J 290473
Para iniciar um fluxo de trabalho no modo de depuração, nsrpolicy não é tão eficaz quanto o comando nsrworkflow porque "nsrpolicy start" não registrará a saída de depuração na pasta /nsr/logs/policy que nsrworkflow fará no arquivo bruto.
nsrworkflow -p [política] -w [fluxo de trabalho] -A "[ação]"
nsrworkflow -D9 -p newt -w newt1 -A "backup"
Onde você gostaria de colocar a depuração depende da parte precisa do processo de backup que você precisa examinar mais detalhadamente. O comando nsrworkflow acima colocará as operações savegrp no NetWorker-server-side em D9 e enviará os dados de depuração para o arquivo bruto em /nsr/logs/policy. No entanto, ele não transmitirá o indicador de depuração para o processo de salvamento no lado do NetWorker-client. Para fazer isso, você precisa modificar o campo "comando de backup" para o cliente. Você pode usar o NMC para isso ou a partir da linha de comando:
Isso fará com que o processo de salvamento seja executado no modo de depuração (D3 no exemplo abaixo) e enviará os dados de log de depuração para a pasta /nsr/logs/policy/[nome da política]/[nome do fluxo de trabalho]/ _logs.
NWserver121:> programa de administração do nsradmin
NetWorker.
Use o comando "help" para obter ajuda, "visual" para o modo de tela cheia.
nsradmin> . Digite : Cliente NSR; Nome : VM-LEGO-231
Current query set
nsradmin> update backup command : save -D3
backup command: save -D3;
Atualização? Y
Atualização do ID do recurso 48.0.46.11.0.0.0.0.231.177.13.90.10.60.28.121(13)
comando de backup: save -D3;
Atualização? Y
Atualização do ID do recurso 45.0.185.125.0.0.0.0.126.197.192.89.10.60.28.121(34)
comando de backup: save -D3;
Atualização? ID de recurso atualizado Y
47.0.28.24.0.0.0.0.123.60.218.88.10.60.28.121(39)
comando de backup: save -D3;
Atualização? Y
Atualização do ID do recurso 64.0.28.24.0.0.0.0.123.60.218.88.10.60.28.121(35)
comando de backup: save -D3;
Atualização? ID de recurso atualizado Y
57.0.46.11.0.0.0.0.231.177.13.90.10.60.28.121(8)
comando de backup: save -D3;
Atualização? y
ID de recurso atualizado 49.0.62.11.0.0.0.0.118.31.239.89.10.60.28.121(5)
/nsr/logs/policy/Zinka/zinka_wf/zinka_backup_357042_logs
EXEMPLOS DE SCRIPT:
Esses scripts são apresentados como exemplos do que pode ser criado com esse comando. Eles não devem ser implementados em um ambiente de produção sem testes completos.
LINUX:
Exemplo 1: Listar todas as políticas e seus fluxos de
trabalhoEsse script de shell executa um loop pela lista de políticas na configuração do NetWorker e executa o comando "nsrpolicy workflow list" em cada uma delas, de modo que gera uma lista de nomes de fluxo de trabalho para cada política.
cat listofworkflows.sh
#!/usr/bin/sh
IFS=$'\n'fullpolicylist
=('nsrpolicy policy list')
para lp em "${fullpolicylist[@]}"
do
echo " "
echo "POLICY: $lp"
echo "Workflows"
nsrpolicy workflow list -p "$lp"
done
Exemplo 2: Listar todas as políticas e seus fluxos de trabalho e ações e o pool
de destinoEsse script de shell executa três loops para obter a lista de políticas, fluxos de trabalho e ações. Os nomes de cada um são exibidos, bem como o parâmetro do nó de armazenamento de destino da ação.
cat listofworkflows_actions.sh
#!/usr/bin/sh
IFS=$'\n'fullpolicylist
=('nsrpolicy policy list')
para lp em "${fullpolicylist[@]}"
do
echo "------------------ "
echo "POLICY: $lp"
wflist=('nsrpolicy workflow list -p $lp')
para w em "${wflist[@]}"
do
echo " "
echo "WORKFLOW: $w"
alist=('nsrpolicy action list -p $lp -w $w')
para um em "${alist[@]}"
do
echo "ACTION: $a"
destpool='nsrpolicy action display -p $lp -w $w -A $a | grep DestinationPool | cut -d ":" -f2'
echo "Pool de destino: $destpool" Concluído
,
Concluído
Exemplo
3: execute um backup somente se existir
um diretório específico Esse script de shell verifica se existe um diretório chamado /k7app. Em caso afirmativo, ele inicia o fluxo de trabalho chamado newt1 e registra que ele fez isso em um arquivo de log dedicado. Se o diretório não existir, o backup não será executado e esse fato será registrado no mesmo arquivo de log. A mesma estrutura de script pode ser usada para qualquer circunstância em que você deseja que um fluxo de trabalho seja executado somente quando uma condição específica for atendida.
#!/usr/bin/sh
IFS=$'\n'dir
="/k7app"
log="/nsr/logs/k7applog.log"
DATE='date'if
[ -d "$dir" ]
then
nsrpolicy start -p Newt -w newt1
printf $DATE >> $log
printf " $dir está presente, portanto iniciando o fluxo de trabalho newt1 \n" >> $log
else
printf $DATE >> $log
printf " $dir não está presente, portanto não iniciando o fluxo de trabalho newt1 \n">>$log fi
WINDOWS POWERSHELL:
Exemplo 1: Lista de fluxos de trabalho
Lista as políticas e seus fluxos de trabalho fazendo um loop pela lista de políticas e executando o comando "nsrpolicy workflow list" para cada política.
$listp = nsrpolicy policy list
foreach ($i in $listp)
{
write-host "-----"
write-host "POLICY: $i"
write-host" FLUXOS DE TRABALHO: "
nsrpolicy workflow list -p "$i"
}
Exemplo 2: Lista de ações
: três loops são criados. Um loop para listar as políticas e, em seguida, um loop para listar todos os workflows de cada política e, em seguida, um loop para listar todas as ações de cada workflow.
$listp = nsrpolicy policy list
foreach ($p in $listp)
{
write-host "-----"
write-host "POLICY: $p"
write-host" FLUXOS DE TRABALHO: "
$wlist = nsrpolicy workflow list -p $p
foreach ($w em $wlist)
{
write-host "$w"
write-host "ACTIONS:"
$alist = nsrpolicy action list -p "$p" -w "$w"
foreach ($a em $alist)
{
write-host "$a"
}
}
}
Exemplo 3 Executar um backup somente se existir
um diretório específico Esse script verifica se existe um diretório chamado C:\basicdata. Em caso afirmativo, ele inicia o fluxo de trabalho denominado Star e registra que ele fez isso em um arquivo de log dedicado. Se o diretório não existir, o backup não será executado e esse fato será registrado no mesmo arquivo de log. A mesma estrutura de script pode ser usada para qualquer circunstância em que você deseja que um fluxo de trabalho seja executado somente quando uma condição específica for atendida.
$dir = "C:\basicdata"
$log = "C:\Arquivos de Programas\EMC NetWorker\nsr\logs\star.log"
$LogTime = Get-Date -format "MM-dd-yyyy_hh-mm-ss"
if ( Test-Path "$dir" )
{ nsrpolicy start -p Star -w Workflow1
"------------------" | Fora do arquivo $log -Acrescentar -Forçar
$LogTime | Out-File $log -Append -Force
"Estrela Iniciada" | Out-File $log -Append -Force
}
else
{
"------------------" | Fora de arquivo $log -Acrescentar -Forçar
$LogTime | Out-File $log -Append -Force
"Estrela não iniciada porque $dir não existe" | Out-File $log -append -force
}