VERITA Netbackup日常巡检详细说明
VERITA备份日常监控
一. 相关检查方法、命令
1.1 启动NBU的图形管理界面:
/usr/openv/netbackup/bin/jnbSA &
1.2字符界面命令:
1.2.1catlog 日志备份时间
bpdbjobs |grep -i cata|grep " 0 " |head -1|awk '{print "/usr/openv/netbackup/bin/admincmd/bpdbjobs -all_columns -jobid ",$1}'
1.2.2文件系统使用率
df -h
1.2.3空白磁带数目是否充足
available_media |grep -i tld |grep -i ava|wc -l
1.2.4最近失败的200条作业,备份时间过长的也需要注意
bpdbjobs |grep -v " 0 " |head -200
1.2.6驱动器状态
vmoprcmd -d
二. 日常检查流程
2.1确认VERITAS NBU进程状态
2.2确认备份任务状态
2.3确认磁带、磁带机的工作状态
2.4确认文件系统状态
2.1检查NBU进程状态:
需要每天监控activity monitor,确认在备份服务器上运行的进程有:avrd、vmd、tldd、ltid、bprd、nbdbd、bpdbm、bpsched、bpjobd。
如果前四个进程avrd、vmd、tldd、ltid有一个没有运行,则备份系统工作不正常。
简单的处理方法:重新启动NBU服务器进程
方法如下:
a)退出NBU的java管理界面,以root身份在命令行状态下输入:netbackup stop
b)使用bpps –a检查上述进程的状态
c)如果进程没有被kill干净,继续执行netbackup stop命令。
d)如果无法结束所有的进程,需要使用bp.kill_all来进行终结。
e)当使用bpps –a看到没有NBU的进程输出时,表明所有的NBU进程已经结束。使用命令:netbackup start启动NBU进程,并用bpps –a确认。
f)如果问题依然存在,请与厂家联系检查VERITAS工作状态。
2.2检查备份任务状态。
需要每天监控activity monitor,观察已经发生备份的任务状态返回值,返回值为0表明备份成功;如果返回值不为0,表明备份失败。对于数据库Archivelog的备份,由于备份的频率目前设置为每一小时一次,因此如果在下面的备份作业中,如果Archivelog的备份成功,可以忽略上面错误的备份。
典型的备份错误有:
a)
Archivelog备份返回值为1,而且后续的备份均返回1。
通常情况,需要进行Oracle 数据库的Archivelog同步。
Oracle数据库Archivelog同步的方法为:
以Oracle数据库用户登录到Oracle数据库服务上,通过RMAN来运行下面的命令:
$ su – oracle
$ rman
RMAN> connect target /
RMAN> change archivelog all validate;
RMAN> exit
b)
备份作业返回值为41、54。
检查服务器网络工作状态:
首先找到备份失败的服务器IP地址,确认IP地址可以ping通。
使用telnet工具,进行如下操作:
telnet 服务器IP地址 13782
如果返回信息如下,表明VERITAS NBU通信正常。
Trying...
Connected to 服务器IP地址.
Escape character is '^]'.
如果系统直接返回到命令行状态,请检查问题服务器的service和inetd设置,确保bpcd进程存在。
并使用如下命令检查bpcd的工作状态:
netstat |grep bpcd
c)
备份作业返回96、219。
请检查磁带机、磁带的工作状态
2.3检查磁带和磁带机状态:
磁带机和磁带常见的错误为96、219,需要确认磁带机状态是否up,磁带库是否闪红灯,使用bpmedialist命令查看是否磁带已经写满或者处于frozen状态,磁带是否卡在了磁带机里。
如果磁带显示frozen,可以使用bpmedia –unfreeze –m labelid来清除此状态,如果磁带反复显示frozen,可能磁带坏,请与厂家联系磁盘检查。
补充:可以在java界面中选择“Media and Device Management”来查看现在media分配的情况。
观察磁带机工作状态的方式有2种:Java GUI界面和命令行。
a)
Java GUI界面方式:
在Java GUI界面下,可以在Media and Device ManagementàDevice Monitor选项中,观察到磁带机的状态。例如磁带机正在使用中、磁带机DOWN、磁带机空闲等。
b)
命令行方式:
使用命令行方式观察磁带机的状态,相关的命令有vmdareq、vmoprcmd。
如果观察到磁带机DOWN,建议先检查是否有卡带现象。确定没有卡带现象后,可以做简单的磁带机UP操作。磁带机UP操作可以通过上面所述的Java GUI界面和命令行方式来执行。命令行方式举例如下:
vmoprcmd –h hostID –up driveID
其中,hostID是SSO服务器名称,driveID是磁带机的序号,目前备份系统中2台磁带机的序号取值为0和1。
经过简单UP后,如果磁带机仍然出现DOWN现象,请与厂家联系解决。
2.4检查文件系统状态
在备份服务器和其它服务器上使用如下命令
df –k
确认文件系统有可以使用的空间。文件系统如果写满,备份系统将工作不正常。
备注:
如果经过了很长时间(如7,8个小时)一个备份任务一直处于active或者queued状态,同时显示此任务的字节数没有增长,需要把此任务kill掉。因为这样会阻止下一个任务的执行。
三NBU常用的命令
- 在命令提示符下输入available_media,查看当前磁带使用情况
- 在命令提示符下输入bpmedialist命令查看当前磁带使用情况及是否冻结
- 在命令提示符号下输入bpexpdate –m a00001 –d 0来使磁带过期
- 在命令提示符号下输入bpmedia –unfreeze –m a00001来使磁带解除冻结状态
- 在命令提示符号下输入vmquery –m a00001来查看磁带的归属情况
- 在命令提示符号下输入vmquery –deassignbyid a00001 4 0来取消磁带的分配日期
- 在命令提示符号下输入bprecover –l a00001 –d hcart来查看catalog磁带中的内容
- 在命令提示符号下输入bprecover –r a00001 –d hcart来恢复catalog
- 在命令提示符号下输入bpexpdate –backupid wbs_1039674374 –d 0来删除一个备份影像,其中wbs_1039674374是backupid,可以通过report中的Images on Media报告来查看backupid
- 如何收集NBU备份服务器的相关信息
查看并导出所有备份策略内容到c:bppllist1.txt:
C:Program FilesVERITASNetBackupbinadmincmd>bppllist -allpolicies -L -verbose >c:bppllist1.txt - 列出当前存储单元并导出内容到c:bpstulist1.txt:
C:Program FilesVERITASNetBackupbinadmincmd>bpstulist -L -verbose >c:bpstulist1.txt - 查看磁带使用情况并导出内容到c:available_media.txt:
C:Program FilesVERITASNetBackupbingoodies>available_media >c:available_media.txt - 查看磁带归属情况:
显示所有卷并导出内容到c:vmquery.txt:
C:Program FilesVERITASVolmgrbin>vmquery -a >c:vmquery.txt - 列出卷池并导出内容到c:vmpool.txt:
C:Program FilesVERITASVolmgrbin>vmpool -listall >c:vmpool.txt - 列出license导出内容到c:nbulicense.txt:
C:Program FilesVERITASNetBackupbinadmincmd>bpminlicense -list_keys> c:nbulicense.txt
其它信息请用nbsupport170工具收集。方法是解压缩nbsupport170
.zip到备份服务器上某个临时文件夹,运行nbsupport.exe,然后在当前文件夹下的output中会生成一个.cab打包文件。所有与备份服务器运行相关的信息文件全在里面。
16、bpexpdate过期磁带,报”requested media id is in use”错误解决办法
如果你确认这个media并没有在使用,可以手工释放这个media占用的资源
首先使用/usr/openv/netbackup/bin/admincmd/nbrbutil -dump命令得到磁带占用资源的id
nbumaster:~ # /usr/openv/netbackup/bin/admincmd/nbrbutil -dump
Allocation Requests
(AllocationRequestSeq )
MDS allocations in EMM:
MdsAllocation: allocationKey=91666 jobType=1 mediaKey=4000261 mediaId=YZ5350 driveKey=2000012 driveName=HP.ULTRIUM4-SCSI.004 drivePath=/dev/nst0 stuName=nbumaster-hcart-robot-tld-0 masterServerName=nbumaster mediaServerName=nbumaster ndmpTapeServerName= diskVolumeKey=0 mountKey=0 linkKey=0 fatPipeKey=0 scsiResType=1 serverStateFlags=1
MdsAllocation: allocationKey=91667 jobType=1 mediaKey=4000264 mediaId=YZ5353 driveKey=2000008 driveName=HP.ULTRIUM4-SCSI.000 drivePath=/dev/nst5 stuName=nbumaster-hcart-robot-tld-0 masterServerName=nbumaster mediaServerName=nbumaster ndmpTapeServerName= diskVolumeKey=0 mountKey=0 linkKey=0 fatPipeKey=0 scsiResType=1 serverStateFlags=1
nbumaster:~ #
然后使用/usr/openv/netbackup/bin/admincmd/nbrbutil –releaseMDS 即上面的“allocationKey=”后面相应的数值,来释放资源
这样我们便能成功执行bpexpdate命令
17、查询目前有哪些磁带正在被哪个驱动器调用,以及正在运行哪些备份任务
nbumaster:~ # /usr/openv/netbackup/bin/admincmd/nbrbutil -dump
18、列出所有的job的明细
nbumaster:~ # /usr/openv/netbackup/bin/admincmd/bpdbjobs
将bpdbjobs输出到/tmp/bpdbjobs.txt文件中
bpdbjobs -file /tmp/bpdbjobs.txt
列出所有作业的摘要,可查看目前正处于ACTIVE的任务有多少个
nbumaster:~ # /usr/openv/netbackup/bin/admincmd/bpdbjobs -summary
MASTER SERVER QUEUED REQUEUED ACTIVE SUCCESS PARTSUCC FAILED INCOMP SUSP WAITING_RETRY TOTAL
nbumaster 0 0 5 1320 0 43 0 0 0 1368
nbsupport170工具可以向veritas技术支持中心获取。
Solaris下:
/usr/openv/volmgr/bin/sgscan changer 查看本机所有Robot设备;
/usr/openv/volmgr/bin/sgscan tape 查看本机所有的磁带驱动器。
/usr/openv/volmgr/bin/sgscan disk 查看本机所有的disk,包括本地磁盘和共享磁盘。robot及磁带驱动器配置:
/usr/openv/volmgr/bin/tpconfig 提供add ,delete,list NBU可以识别并使用的物理设备。
/usr/openv/volmgr/bin/stopltid
/usr/openv/volmgr/bin/stopltid <参数> :当修改配置后请重启:ltid(设备管理进程)。
tpconfig: 可以进入文本菜单。 先配置robot,再配置磁带驱动器。
/usr/openv/volmgr/bin/tpconfig -d 可以查看磁带驱动器及robot细节情况。
当配置完成之后,一定要重启ltid进程。
robtest
tpconfig -d
Id DriveName Type Residence
Drive Path Status
0 HP.ULTRIUM3-SCSI.000 hcart3 TLD(0) DRIVE=1
/dev/rmt/0cbn UP
/dev/rmt/1cbn UP
Currently defined robotics are:
TLD(0) robotic path = /dev/sg/c0tw500110a0009485aal1
EMM Server = dcd-bjgglc-logcdr
名词介绍:
image: 镜像:一个客户端在一次备份中所有数据的集合。
storage unit: 存储单元:保存备份的逻辑位置,可以是磁盘也可以是磁带。
volume: 卷: 每一个磁带一个编号,称为一个卷。
volume: 卷池:一组卷的集合,在备份时需要指明卷池,netbackup会自动维护卷池中的所有卷。
backup policy: 备份策略:4方面:数据保存在哪个存储单元,什么时段运行,备份哪些client的数据;
需要备份的数据的位置。netbackup 进程维护
/usr/openv/netbackup/bin/bpps -a 查看netbackup 所有进程,也可以通过图形界面查看Daemons状态。
bp.kill_all 启动netbackup (netbackup stop)
bp.start_all 停止netbackup (netbackup start)
jnbSA % 启动netbackup图形化界面.
- 磁带维护
/usr/openv/netbackup/bin/goodies/available_media:
以root用户运行,可以查看磁带的状态等等信息;
status: full,active,available,frozen,dbbackup.
当有磁带frozen时,可以用:bpmedia -unfreeze -m A00006,对磁带进行解frozen;
当磁带反复frozen时,请检查是否有坏,或是此磁带是清洗带。
过期磁带: bpexpdate -m media_id -d 0 eg: bpexpdate -m NU06CU -d 0 使磁带可重写。
bpexpdate -backupid eel_0904219764 -d 0 删除备份
bpexpdate: -m -d
bplist:
bplist -C dcd-bjgglc-rac03-vip -t 4 -l -R 4代表oracle
bplist --help
bpmedialist -l: 查看磁带信息。
bplabel: 对磁带进行label : 有三种方式 :quick erase; long erase; NBU label;
/usr/openv/netbackup/bin/admincmd/bplabel -erase -o -m -d hcart -p NetBackup -host
/usr/openv/netbackup/bin/admincmd/bplabel -erase -l -o -m -d hcart -p NetBackup -host
/usr/openv/netbackup/bin/admincmd/bplabel -m -d hcart -o -p NetBackup [-n drive_name | -u device_number] -host
对磁带label 可以检查,磁带是否有问题,时间也很快。
/usr/openv/netbackup/bin/admincmd/bpdbjobs -report
/usr/openv/netbackup/bin/admincmd/bperror -U –problems 报告24小时内的问题。
/usr/openv/netbackup/bin/admincmd/bpgetconfig | more 获得netbackup的配置信息。
/usr/openv/netbackup/bin/bpclntcmd -hn Client_A 测试到某client是否有问题。
磁带的池:
netbackup : 默认扫描到的磁带都放在此池;除clear带。
none: 默认放清洗带。
其他池可以手工建议:对一个策略建立一个池,从netbackup中找到数据带,分配到相应的策略池中。
并可以对分配完成的磁带进行label操作,可以检查磁带是否有问题。
6.管理维护:
bpadm 可以进行日常维护用,而不用jnbSA 的图形化界面。
bpflist -d 2009-07-01 -e 2009-07-02 -policy dbbackup -client dcd-bjgglc-rac03-vip -U
这一句可能是最有用的。
bpps -a
bpdbjobs -report 执行结果的状态问题: 0 :成功; 96: 没有空闲磁带可用。其他:
bpimage --help
bpflist --help
VERITA Netbackup日常巡检详细说明的更多相关文章
- 【SQL Server DBA】日常巡检语句3:特定监控(阻塞、top语句、索引、作业)
原文:[SQL Server DBA]日常巡检语句3:特定监控(阻塞.top语句.索引.作业) 1.查询阻塞信息.锁定了哪些资源 --1.查看阻塞信息 select spid,loginame,wai ...
- Linux/hp unix/AIX日常巡检脚本(转)
以下为Linux/hp unix/AIX日常巡检脚本,大家可以参考着进行改写,用于自己的服务器. #!/usr/bin/ksh syserrdate=`date +"%m/%d"` ...
- linux日常巡检脚本
######################以下是脚本内容开始部分###################################### #!/bin/bash #set -x2012-02-2 ...
- DG环境的日常巡检
DG环境的日常巡检 目录 1.DG环境的日常巡检4 1.1.主库环境检查4 1.1.1.主库实例启动状态检查4 1.1.2.主库启动模式检查4 1.1.3.主库DG环境的保护模式检查4 1.1.4.主 ...
- 企业日常巡检shell脚本
Linux内部查看系统信息 $INTERNET192忽略 [root@ mysql-master ~]# ip a|grep eth0|grep inet|cut -d' ' -f6|cut -d'/ ...
- ORACLE11g Dataguard物理Standby 日常巡检操作手册
ORACLE11g Dataguard物理Standby日常巡检操作手册 编写:_____________校对:_____________日期:_____________ 目录1.DG环境的日常巡检 ...
- 11g RAC R2 日常巡检--Grid
一.巡检RAC数据库 1.1列出数据库 [grid@node1 ~]$ srvctl config database racdb [grid@node1 ~]$ 1.2列出数据库的实例 [grid@n ...
- Oracle 数据库日常巡检
1. 检查数据库基本状况 包含:检查Oracle实例状态,检查Oracle服务进程,检查Oracle监听进程,共三个部分. 1.1. 检查Oracle实例状态 select instance_name ...
- Cisco 日常巡检命令
https://www.cnblogs.com/qzqdy/p/8116903.html 日常排错命令6 交换机的前面板有几个指示灯,用于监控系统的活动和性能.这些指示灯称之为发二极管(LED) 1. ...
随机推荐
- .NET Core单元测试覆盖率统计coverlet配置和使用
https://segmentfault.com/a/1190000017569492 需要使用: 使用 Moq 测试.NET Core 应用 https://www.cnblogs.com/c ...
- ios中页面底部输入框,position:fixed元素的问题
在安卓上点击页面底部的输入框,软键盘弹出,页面移动上移.ios上,软件盘弹出,输入框看不到了.让他弹出时让滚动条在最低部 var u = navigator.userAgent, app = navi ...
- 电量分析工具 Battery Historian 的配置及使用
1.Building from source code(通过各种配置后从源码构建) 官方流程看似很麻烦,但一上手,很快就搞定,让我情何以堪. ps:以下均是参考官方及网友做的 copy https:/ ...
- OS---外存分配方式
1.概述 1.1 在为文件分配外存空间时,所考虑的主要问题:如何有效利用外存空间?如何提高对文件的访问速度? 1.2 常用的外存分配方法:连续分配.链接分配.索引分配(在一个系统中,仅采用一种分配方式 ...
- Silverlight 减小 Xap 的大小
当Silverlight工程引用了很多dll后,加载的速度就会很慢,通过下面方式可以减小xap包的大小 勾选 “通过使用应用程序库缓存减小xap大小”,勾选此项后vs会自动将微软自身和外部引用不变的d ...
- tencent intern learning
gslb全局负载均衡 (负载均衡的问题就是某些session保存在某台服务器中,这个用户就只能用那台服务器服务了) jwt vs 传统cookies & session (jwt类似于公 ...
- Django重新整理
1.母版的继承 #base<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset ...
- [转]jQueryUI中Datepicker(日历)插件的介绍和使用
http://jqueryui.com/datepicker/ 本文转自:http://blog.csdn.net/redarmy_chen/article/details/7400571 jQuer ...
- Python LoggerAdpater类
Logger子类: import logging # create loggermodule_logger = logging.getLogger('spam_application.auxiliar ...
- Mac 安装GTK
Mac上配置GTK环境 安装command line工具, 如果安装了Xcode, 就直接跳过该步骤 安装Homebrew 使用brew install pkg-config 使用brew insta ...