socket write failed(24) _Netbackup的問題解決

djb1008發表於2010-11-16
  1. 問題描述

netbackup的客戶端與netbackup的伺服器的IP地址不在同一個網端,並且兩臺計算機中間有一道防火牆,客戶端是ping不通伺服器的,無法透過ping測試網路的連通性。

為了保證netbackup的正常執行,需要開通兩個計算機之間的3個埠的訪問許可權,分別是:137821372013724

透過檢測防火牆的訪問日誌,我們可以看出客戶端與伺服器的之間的訪問埠號和訪問方向,大致為:

客戶端 訪問 伺服器 13720

伺服器 訪問 客戶端 13724

伺服器 訪問 客戶端 13782

所以我們可以根據上面的情況,讓網路管理員開通相關訪問的埠。

[@more@]

在當前的客戶端安裝netbackup client6.5),netbackup for db6.5)等客戶端軟體後,可能是無法透過網路訪問netbackup伺服器,安裝後有幾個重要的檔案沒有生成,直接導致了在伺服器端定義備份策略和定義客戶端時報錯(報錯誤號為25 24 的錯誤)

錯誤號=25 的錯誤是: 25 cannot connect to socket.

錯誤號=24 的錯誤是: 24 socket write failed.

本文的客戶端為redhat linux 5.3 x86_64

  1. 問題分析

2.1 首先我們看一下客戶端安裝後,在/etc/services檔案中增加了3個埠的定義,如下所示:

Netbackup_client# more /etc/services|grep 13782

bpcd 13782/tcp # VERITAS NetBackup

bpcd 13782/udp # VERITAS NetBackup

Netbackup_client# more /etc/services|grep 13720

bprd 13720/tcp # BPRD (VERITAS NetBackup)

bprd 13720/udp # BPRD (VERITAS NetBackup)

Netbackup_client# more /etc/services|grep 13724

vnetd 13724/tcp # Veritas Network Utility

vnetd 13724/udp # Veritas Network Utility

2.2 客戶端安裝後,幾個重要的配置檔案

比較安裝正常的客戶端與本次出現問題的客戶端,發現本次有問題的客戶端安裝後缺少幾個netbackup client需要使用的幾個關鍵檔案,這些檔案應該是在客戶端安裝過程中,由安裝程式自動生成的,但在這個出問題的客戶端上就是無法自動生成(重新嘗試安裝了多次,都是這個情況,應該是安裝程式與當前複雜的網路環境導致的).

正常的客戶端安裝後有以下幾個檔案

Netbackup_client_ok# ls -lt /etc/xinetd.d

-rw-r--r-- 1 root root 311 Nov 10 13:32 bpcd

-rw-r--r-- 1 root root 377 Nov 10 13:32 bpjava-msvc

-rw-r--r-- 1 root root 344 Nov 10 13:32 vnetd

-rw-r--r-- 1 root root 307 Nov 10 13:32 vopied

。。。。。。

Netbackup_client_ok# ls -lt /usr/openv/netbackup

-rw-r--r-- 1 root root 66 Nov 10 13:44 bp.conf

-rwxr-xr-x 1 oracle dba 3607 Nov 10 13:32 nblog.conf

筆者做了幾種情況的測試:

A.發現如果缺少/etc/xinetd.d/目錄下的四個檔案(bpcd,bpjava-msvc,vnetd,vopied)

在伺服器端定義客戶端的資訊時會報(25)cannot connect to socket錯誤;

其實在伺服器上定義客戶端資訊時,伺服器需要訪問客戶端的bpcd 服務提供的13782.

進一步測試,發現在/etc/xinetd.d/目錄下,增加一個bpcd檔案,然後重新啟動一下xinetd服務,伺服器端就不會報(25)錯誤了;

需要說明的是,定義客戶端沒有問題了,但如果在客戶端備份與恢復時,如果缺少另外的3個檔案,一樣會發生錯誤.所以/ect/xinetd.d/目錄下的這4個檔案一定要存在.

B.如果缺少/usr/openv/netbackup/目錄下的兩個檔案

在伺服器端定義客戶端的資訊時會報(24)錯誤.

  1. 問題解決

雖然安裝程式沒有自動生成上述的幾個重要的配置檔案,我們可以透過手工建立的方式來解決這個問題.使用vi工具手工建立這些檔案,當然如果有一個已經安裝正常的客戶端,直接複製過來就可以了.

#cd /etc/xinetd.d

Netbackup_client# more bpcd

service bpcd

{

socket_type = stream

protocol = tcp

wait = no

user = root

server = /usr/openv/netbackup/bin/bpcd

disable = no

}

Netbackup_client# more bpjava-msvc

# Service bpjava-msvc for NetBackup

service bpjava-msvc

{

socket_type = stream

protocol = tcp

wait = no

user = root

server = /usr/openv/netbackup/bin/bpjava-msvc

server_args = -transient

disable = no

}

Netbackup_client# more vopied

# Service vopied for NetBackup

service vopied

{

socket_type = stream

protocol = tcp

wait = no

user = root

server = /usr/openv/bin/vopied

disable = no

}

Netbackup_client# more vnetd

# Service vnetd for NetBackup

service vnetd

{

socket_type = stream

protocol = tcp

wait = no

user = root

server = /usr/openv/bin/vnetd

disable = no

instances = UNLIMITED

cps = 1000 1

}

Netbackup_client#cd /usr/openv/netbackup

Netbackup_client# more bp.conf

SERVER = netbackup

CLIENT_NAME = client_db1

MEDIA_SERVER = netbackup-ms

Netbackup_client# more nblog.conf

Default.LogDirectory=/usr/openv/logs

Default.DebugLevel=1

Default.DiagnosticLevel=6

Default.LogToStdout=false

Default.LogToStderr=false

Default.LogToOslog=false

Default.L10nLib=/usr/openv/lib/libvxexticu.so.1

Default.L10nResourceDir=/usr/openv/resources

Default.RolloverMode=FileSize

Default.RolloverAtLocalTime=00.00

Default.NumberOfLogFiles=3

Default.MaxLogFileSizeKB=5120

Default.LogFilePermissions=664

Default.SyslogIdent=VRTS-NB

Default.SyslogOpt=0

Default.SyslogFacility=LOG_LOCAL5

#Originators

102.L10nResource=nbwrg

102.OIDNames=nbwrg

111.L10nResource=emm

111.OIDNames=nbemm

113.L10nResource=nbcim

113.OIDNames=nbcim

116.L10nResource=nbpem

116.OIDNames=nbpem

117.L10nResource=nbjm

117.OIDNames=nbjm

118.L10nResource=nbrb

118.OIDNames=nbrb

119.L10nResource=bmrd

119.OIDNames=bmrd,bmrbd

119.L10nLib=/usr/openv/lib/libvxexticuST.so.1

121.L10nResource=bmrsavecfg

121.OIDNames=bmrsavecfg

121.L10nLib=/usr/openv/lib/libvxexticuST.so.1

122.L10nResource=bmrc

122.OIDNames=bmrc

122.L10nLib=/usr/openv/lib/libvxexticuST.so.1

123.L10nResource=bmrs

123.OIDNames=bmrs

123.L10nLib=/usr/openv/lib/libvxexticuST.so.1

124.L10nResource=bmrmedia

124.OIDNames=bmrcreatefloppy

124.L10nLib=/usr/openv/lib/libvxexticuST.so.1

125.L10nResource=bmrsrt

125.OIDNames=bmrsrtadm

125.L10nLib=/usr/openv/lib/libvxexticuST.so.1

126.L10nResource=bmrprep

126.OIDNames=bmrprep

126.L10nLib=/usr/openv/lib/libvxexticuST.so.1

127.L10nResource=bmrsetup

127.OIDNames=bmrsetupmaster,bmrsetupboot

127.L10nLib=/usr/openv/lib/libvxexticuST.so.1

128.L10nResource=bmrcommon

128.OIDNames=bmrcommon,bmrlibs,bmrmisc

128.L10nLib=/usr/openv/lib/libvxexticuST.so.1

129.L10nResource=bmrconfig

129.OIDNames=bmrconfig

129.L10nLib=/usr/openv/lib/libvxexticuST.so.1

130.L10nResource=bmrpkg

130.OIDNames=bmrcreatepkg

130.L10nLib=/usr/openv/lib/libvxexticuST.so.1

131.L10nResource=bmrrestore

131.OIDNames=bmrrestore

131.L10nLib=/usr/openv/lib/libvxexticuST.so.1

132.L10nResource=nbsl

132.OIDNames=nbsl

134.L10nResource=ndmpagent

134.OIDNames=ndmpagent

134.L10nLib=/usr/openv/lib/libvxexticuST.so.1

137.L10nResource=libraries

140.L10nResource=mmui

140.OIDNames=mmui

142.L10nResource=bmrepadm

142.OIDNames=bmrepadm

142.L10nLib=/usr/openv/lib/libvxexticuST.so.1

143.L10nResource=emm

143.OIDNames=mds

144.L10nResource=emm

144.OIDNames=da

151.L10nResource=ndmp

151.OIDNames=ndmp

154.L10nResource=bmrovradm

154.OIDNames=bmrovradm

#TAO debug level

156.DebugLevel=0

163.L10nResource=nbsvcmon

163.OIDNames=nbsvcmon

#VaultService

166.L10nResource=nbvault

166.OIDNames=nbvault

178.L10nResource=dsm

178.OIDNames=dsm

#FAT Pipe services

199.L10nResource=ftservices

199.OIDNames=FATServer

200.L10nResource=ftservices

200.OIDNames=FATClient

201.L10nResource=ftservices

201.OIDNames=FSM

219.L10nResource=rsrcevtmgr

219.OIDNames=rem

220.L10nResource=dps

220.OIDNames=dps

222.L10nResource=nbrmms

222.OIDNames=nbrmms

226.L10nResource=nbstserv

226.OIDNames=nbstserv

230.L10nResource=rdsm

230.OIDNames=rdsm

231.L10nResource=nbevtmgr

231.OIDNames=nbevtmgr

221.L10nResource=nbrmms

221.OIDNames=mpms

248.L10nResource=bmrlaunch

248.OIDNames=bmrlaunch

248.L10nLib=/usr/openv/lib/libvxexticuST.so.1

261.L10nResource=aggs

261.OIDNames=aggs

263.OIDNames=wingui

271.L10nResource=nbecmsg

271.OIDNames=nbecmsg

272.L10nResource=expmgr

272.OIDNames=expmgr

定義好以上這6個檔案後,重新啟動一下xinetd 服務

#services xinetd restart

Stopping xinetd: [ OK ]

Starting xinetd: [ OK ]

再去伺服器端定義這個客戶端,發現一切正常了,問題到此得到解決.

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/32980/viewspace-1041559/,如需轉載,請註明出處,否則將追究法律責任。

相關文章