cancel
Showing results for 
Search instead for 
Did you mean: 

Upgrade from 5.1 to 6.0.5 - problem with NIC resource

Jay_Reeves
Level 2

Hi, all.

Just upgrade an S10 cluster running 5.1SP1 to 6.0.5.

For the NIC resource, we have a red question mark, and in the logs:  NIC:nic:monitor:Cannot use IPv4 network host [IP deleted] for ping since Protocol is set to IPV4. Resource state: UNKNOWN

Probing does not clear it.  When we set the resource to blank (=IPV4 by default), it doesn't help.

Here's the main.cf:

/etc/VRTSvcs/conf/config]$ cat main.cf
include "OracleASMTypes.cf"
include "types.cf"
include "Db2udbTypes.cf"
include "OracleTypes.cf"
include "SybaseTypes.cf"

cluster proddb017 (
        UserNames = { admin = eLLlLGkHLqLOkTLp,
                 edisupport = GooMomNrpKpnOipHoxOkpL }
        Administrators = { admin }
        )

system proddb017-n1 (
        )

system proddb017-n2 (
        )

group webmethodsdb (
        SystemList = { proddb017-n1 = 0, proddb017-n2 = 1 }
        AutoStartList = { proddb017-n1, proddb017-n2 }
        Operators = { edisupport }
        )

        Db2udb webm (
                Critical = 0
                DB2InstOwner = db2inst1
                DB2InstHome = "/u01/home/db2inst1"
                DatabaseName = webm
                )

        DiskGroup proddb017dg (
                Critical = 0
                DiskGroup = proddb017dg
                )

        IP ediwmdb-ip (
                Critical = 0
                Device = igb0
                Address = "deleted"
                NetMask = "deleted"
                IfconfigTwice = 1
                )

        Mount db2_dbpath (
                Critical = 0
                MountPoint = "/db2_dbpath"
                BlockDevice = "/dev/vx/dsk/proddb017dg/vol_dbpath"
                FSType = vxfs
                FsckOpt = "-y"
                )

        Mount db2_diagnostics (
                Critical = 0
                MountPoint = "/db2_diagnostics"
                BlockDevice = "/dev/vx/dsk/proddb017dg/vol_diags"
                FSType = vxfs
                FsckOpt = "-y"
                )

        Mount db2_mirror_online_logs (
                Critical = 0
                MountPoint = "/db2_mirror_online_logs"
                BlockDevice = "/dev/vx/dsk/proddb017dg/vol_log2"
                FSType = vxfs
                FsckOpt = "-y"
                )

        Mount db2_online_logs (
                Critical = 0
                MountPoint = "/db2_online_logs"
                BlockDevice = "/dev/vx/dsk/proddb017dg/vol_log1"
                FSType = vxfs
                FsckOpt = "-y"
                )

        Mount db2_primary_log_archive (
                Critical = 0
                MountPoint = "/db2_primary_log_archive"
                BlockDevice = "/dev/vx/dsk/proddb017dg/vol_archive1"
                FSType = vxfs
                FsckOpt = "-y"
                )

        Mount db2_secondary_log_archive (
                Critical = 0
                MountPoint = "/db2_secondary_log_archive"
                BlockDevice = "/dev/vx/dsk/proddb017dg/vol_archive2"
                FSType = vxfs
                FsckOpt = "-y"
                )

        Mount db2backup (
                Critical = 0
                MountPoint = "/db2backup"
                BlockDevice = "/dev/vx/dsk/proddb017dg/vol_db2backup"
                FSType = vxfs
                FsckOpt = "-y"
                )

        Mount u01 (
                Critical = 0
                MountPoint = "/u01"
                BlockDevice = "/dev/vx/dsk/proddb017dg/vol_u01"
                FSType = vxfs
                FsckOpt = "-y"
                )

        NIC nic (
                Critical = 0
                Device = igb0
                NetworkHosts = { "deleted", "deleted", "deleted" }
                Protocol = IPV4
                )

        db2_dbpath requires proddb017dg
        db2_diagnostics requires proddb017dg
        db2_mirror_online_logs requires proddb017dg
        db2_online_logs requires proddb017dg
        db2_primary_log_archive requires proddb017dg
        db2_secondary_log_archive requires proddb017dg
        db2backup requires proddb017dg
        ediwmdb-ip requires nic
        u01 requires proddb017dg
        webm requires db2_dbpath
        webm requires db2_diagnostics
        webm requires db2_mirror_online_logs
        webm requires db2_online_logs
        webm requires db2_primary_log_archive
        webm requires db2_secondary_log_archive
        webm requires ediwmdb-ip
        webm requires u01


        // resource dependency tree
        //
        //      group webmethodsdb
        //      {
        //      Mount db2backup
        //          {
        //          DiskGroup proddb017dg
        //          }
        //      Db2udb webm
        //          {
        //          Mount db2_dbpath
        //              {
        //              DiskGroup proddb017dg
        //              }
        //          Mount db2_diagnostics
        //              {
        //              DiskGroup proddb017dg
        //              }
        //          Mount db2_mirror_online_logs
        //              {
        //              DiskGroup proddb017dg
        //              }
        //          Mount db2_online_logs
        //              {
        //              DiskGroup proddb017dg
        //              }
        //          Mount db2_primary_log_archive
        //              {
        //              DiskGroup proddb017dg
        //              }
        //          Mount db2_secondary_log_archive
        //              {
        //              DiskGroup proddb017dg
        //              }
        //          IP ediwmdb-ip
        //              {
        //              NIC nic
        //              }
        //          Mount u01
        //              {
        //              DiskGroup proddb017dg
        //              }
        //          }
        //      }

The types.cf file:

/etc/VRTSvcs/conf/config]$ cat types.cf
type Apache (
        static boolean IntentionalOffline = 0
        static keylist SupportedActions = { "checkconffile.vfd" }
        static str ArgList[] = { ResLogLevel, State, IState, httpdDir, SharedObjDir, EnvFile, PidFile, HostName, Port, User, SecondLevelMonitor, SecondLevelTimeout, ConfigFile, EnableSSL, DirectiveAfter, DirectiveBefore }
        static int ContainerOpts{} = { RunInContainer=1, PassCInfo=0 }
        str ResLogLevel = INFO
        str httpdDir
        str SharedObjDir
        str EnvFile
        str PidFile
        str HostName
        int Port = 80
        str User
        boolean SecondLevelMonitor = 0
        int SecondLevelTimeout = 30
        str ConfigFile
        boolean EnableSSL = 0
        str DirectiveAfter{}
        str DirectiveBefore{}
)

type Application (
        static keylist SupportedActions = { "program.vfd", "user.vfd", "cksum.vfd", getcksum }
        static str ArgList[] = { User, StartProgram, StopProgram, CleanProgram, MonitorProgram, PidFiles, MonitorProcesses }
        static int ContainerOpts{} = { RunInContainer=1, PassCInfo=0 }
        str User
        str StartProgram
        str StopProgram
        str CleanProgram
        str MonitorProgram
        str PidFiles[]
        str MonitorProcesses[]
)

type CoordPoint (
        static int InfoInterval = 300
        static int OfflineMonitorInterval = 60
        static str ArgList[] = { FaultTolerance }
        static str Operations = None
        int FaultTolerance
)

type DNS (
        static keylist SupportedActions = { "dig.vfd", "master.vfd", "keyfile.vfd" }
        static str ArgList[] = { Domain, TTL, TSIGKeyFile, StealthMasters, ResRecord, CreatePTR, OffDelRR }
        str Domain
        int TTL = 86400
        str TSIGKeyFile
        str StealthMasters[]
        str ResRecord{}
        boolean CreatePTR = 0
        boolean OffDelRR = 0
)

type DiskGroup (
        static keylist SupportedActions = { "license.vfd", "disk.vfd", "udid.vfd", "verifyplex.vfd", checkudid, campusplex, numdisks, joindg, splitdg, getvxvminfo, volinuse }
        static int NumThreads = 1
        static int OnlineRetryLimit = 1
        static str ArgList[] = { DiskGroup, StartVolumes, StopVolumes, MonitorOnly, MonitorReservation, tempUseFence, PanicSystemOnDGLoss, DiskGroupType, UmountVolumes }
        str DiskGroup
        boolean StartVolumes = 1
        boolean StopVolumes = 1
        boolean MonitorReservation = 0
        temp str tempUseFence = INVALID
        boolean PanicSystemOnDGLoss = 0
        str DiskGroupType = private
        int UmountVolumes
)

type DiskGroupSnap (
        static int ActionTimeout = 120
        static int MonitorInterval = 300
        static int NumThreads = 1
        static str ArgList[] = { TargetResName, FDSiteName }
        str TargetResName
        str FDSiteName
)

type ElifNone (
        static int OfflineMonitorInterval = 60
        static str ArgList[] = { PathName }
        static str Operations = None
        str PathName
)

type FileNone (
        static int OfflineMonitorInterval = 60
        static str ArgList[] = { PathName }
        static str Operations = None
        str PathName
)

type FileOnOff (
        static str ArgList[] = { PathName }
        str PathName
)

type FileOnOnly (
        static str ArgList[] = { PathName }
        static str Operations = OnOnly
        str PathName
)

type IP (
        static keylist SupportedActions = { "device.vfd", "route.vfd" }
        static str ArgList[] = { Device, Address, NetMask, Options, ArpDelay, IfconfigTwice, RouteOptions, PrefixLen }
        static int ContainerOpts{} = { RunInContainer=0, PassCInfo=1 }
        str Device
        str Address
        str NetMask
        str Options
        int ArpDelay = 1
        int IfconfigTwice
        str RouteOptions
        int PrefixLen
)

type IPMultiNIC (
        static int MonitorTimeout = 120
        static str ArgList[] = { "MultiNICResName:Device", Address, NetMask, "MultiNICResName:ArpDelay", Options, "MultiNICResName:Probed", MultiNICResName, IfconfigTwice, PrefixLen }
        static int ContainerOpts{} = { RunInContainer=0, PassCInfo=1 }
        str Address
        str NetMask
        str Options
        str MultiNICResName
        int IfconfigTwice
        int PrefixLen
)

type IPMultiNICB (
        static int MonitorInterval = 30
        static int OnlineRetryLimit = 1
        static int ToleranceLimit = 1
        static str ArgList[] = { BaseResName, Address, NetMask, DeviceChoice, RouteOptions, PrefixLen, IgnoreMultiNICBFailure, "BaseResName:Protocol" }
        static int ContainerOpts{} = { RunInContainer=0, PassCInfo=1 }
        str BaseResName
        str Address
        str NetMask
        str DeviceChoice = 0
        str RouteOptions
        int PrefixLen
        int IgnoreMultiNICBFailure
)

type Mount (
        static keylist SupportedActions = { "mountpoint.vfd", "mounted.vfd", "vxfslic.vfd", chgmntlock, "mountentry.vfd" }
        static str ArgList[] = { MountPoint, BlockDevice, FSType, MountOpt, FsckOpt, SnapUmount, CkptUmount, SecondLevelMonitor, SecondLevelTimeout, OptCheck, CreateMntPt, MntPtPermission, MntPtOwner, MntPtGroup, AccessPermissionChk, RecursiveMnt, VxFSMountLock }
        str MountPoint
        str BlockDevice
        str FSType
        str MountOpt
        str FsckOpt
        int SnapUmount
        int CkptUmount = 1
        boolean SecondLevelMonitor = 0
        int SecondLevelTimeout = 30
        int OptCheck
        int CreateMntPt
        int ReuseMntPt
        str MntPtPermission
        str MntPtOwner
        str MntPtGroup
        int AccessPermissionChk
        boolean RecursiveMnt = 0
        int VxFSMountLock = 1
)

type MultiNICA (
        static int MonitorTimeout = 300
        static int OfflineMonitorInterval = 60
        static str ArgList[] = { Device, NetMask, ArpDelay, RetestInterval, Options, RouteOptions, PingOptimize, MonitorOnly, IfconfigTwice, HandshakeInterval, NetworkHosts, Protocol }
        static str Operations = None
        str Device{}
        str NetMask
        int ArpDelay = 1
        int RetestInterval = 5
        str Options
        str RouteOptions
        int PingOptimize = 1
        int IfconfigTwice
        int HandshakeInterval = 20
        str NetworkHosts[]
        str Protocol
)

type MultiNICB (
        static int MonitorInterval = 10
        static int OfflineMonitorInterval = 60
        static str ArgList[] = { UseMpathd, MpathdCommand, ConfigCheck, MpathdRestart, Device, NetworkHosts, LinkTestRatio, IgnoreLinkStatus, NetworkTimeout, OnlineTestRepeatCount, OfflineTestRepeatCount, NoBroadcast, DefaultRouter, Failback, GroupName, Protocol }
        static str Operations = None
        int UseMpathd
        str MpathdCommand = "/usr/lib/inet/in.mpathd"
        int ConfigCheck = 1
        int MpathdRestart = 1
        str Device{}
        str NetworkHosts[]
        int LinkTestRatio = 1
        int IgnoreLinkStatus = 1
        int NetworkTimeout = 100
        int OnlineTestRepeatCount = 3
        int OfflineTestRepeatCount = 3
        int NoBroadcast
        str DefaultRouter = "0.0.0.0"
        int Failback
        str GroupName
        str Protocol
)

type NFS (
        static int RestartLimit = 1
        static str ArgList[] = { UseSMF, Nservers, LockFileTimeout }
        static str Operations = OnOnly
        int Nservers = 16
        int LockFileTimeout = 180
        boolean UseSMF = 0
)

type NFSRestart (
        static keylist SupportedActions = { "lockdir.vfd", "nfsconf.vfd" }
        static str ArgList[] = { LocksPathName, NFSLockFailover, LockServers, NFSRes, "NFSRes:LockFileTimeout", "NFSRes:UseSMF" }
        str NFSRes
        str LocksPathName
        boolean NFSLockFailover = 0
        int LockServers = 20
)

type NIC (
        static keylist SupportedActions = { "device.vfd" }
        static int OfflineMonitorInterval = 60
        static str ArgList[] = { Device, PingOptimize, NetworkHosts, Protocol, NetworkType }
        static str Operations = None
        str Device
        int PingOptimize = 1
        str NetworkHosts[]
        str Protocol
        str NetworkType
)

type NetBios (
        static str ArgList[] = { "SambaServerRes:ConfFile", "SambaServerRes:SambaTopDir", "SambaServerRes:LockDir", NetBiosName, NetBiosAliases, Interfaces, WinsSupport, DomainMaster }
        str SambaServerRes
        str NetBiosName
        str NetBiosAliases[]
        str Interfaces[]
        int WinsSupport
        int DomainMaster
)

type NotifierMngr (
        static int RestartLimit = 3
        static str ArgList[] = { EngineListeningPort, MessagesQueue, NotifierListeningPort, SnmpdTrapPort, SnmpCommunity, SnmpConsoles, SmtpServer, SmtpServerVrfyOff, SmtpServerTimeout, SmtpReturnPath, SmtpFromPath, SmtpRecipients }
        int EngineListeningPort = 14141
        int MessagesQueue = 30
        int NotifierListeningPort = 14144
        int SnmpdTrapPort = 162
        str SnmpCommunity = public
        str SnmpConsoles{}
        str SmtpServer
        boolean SmtpServerVrfyOff = 0
        int SmtpServerTimeout = 10
        str SmtpReturnPath
        str SmtpFromPath
        str SmtpRecipients{}
)

type Phantom (
)

type Process (
        static keylist SupportedActions = { "program.vfd", getcksum }
        static str ArgList[] = { PathName, Arguments }
        static int ContainerOpts{} = { RunInContainer=1, PassCInfo=0 }
        str PathName
        str Arguments
)

type ProcessOnOnly (
        static str ArgList[] = { IgnoreArgs, PathName, Arguments }
        static int ContainerOpts{} = { RunInContainer=1, PassCInfo=0 }
        static str Operations = OnOnly
        boolean IgnoreArgs = 0
        str PathName
        str Arguments
)

type Proxy (
        static int OfflineMonitorInterval = 60
        static str ArgList[] = { TargetResName, TargetSysName, "TargetResName:Probed", "TargetResName:State" }
        static str Operations = None
        str TargetResName
        str TargetSysName
)

type RVG (
        static int NumThreads = 1
        static str ArgList[] = { RVG, DiskGroup }
        str RVG
        str DiskGroup
        str StorageRVG
        str StorageDG
        str StorageHostIds
)

type RVGLogowner (
        static int NumThreads = 1
        static int OnlineRetryLimit = 5
        static str ArgList[] = { RVG, DiskGroup }
        str RVG
        str DiskGroup
        str StorageRVG
        str StorageDG
        str StorageHostIds
)

type RVGPrimary (
        static keylist SupportedActions = { fbsync }
        static int NumThreads = 1
        static int OnlineRetryLimit = 1
        static str ArgList[] = { RvgResourceName, AutoTakeover, AutoResync }
        str RvgResourceName
        int AutoTakeover = 1
        int AutoResync
)

type RVGShared (
        static int NumThreads = 1
        static str ArgList[] = { RVG, DiskGroup }
        str RVG
        str DiskGroup
)

type RVGSharedPri (
        static keylist SupportedActions = { fbsync, resync }
        static int NumThreads = 1
        static int OnlineRetryLimit = 1
        static str ArgList[] = { RvgResourceName, "RvgResourceName:RVG", "RvgResourceName:DiskGroup", AutoTakeover, AutoResync }
        str RvgResourceName
        int AutoTakeover = 1
        int AutoResync
        temp str VCSResLock
)

type RVGSnapshot (
        static keylist RegList = { Prefix }
        static int NumThreads = 1
        static str ArgList[] = { RvgResourceName, CacheObj, Prefix, DestroyOnOffline }
        str RvgResourceName
        str CacheObj
        str Prefix
        boolean DestroyOnOffline = 1
        temp str FDFile
)

type RemoteGroup (
        static int OnlineRetryLimit = 2
        static int ToleranceLimit = 1
        static str ArgList[] = { IpAddress, Port, Username, Password, GroupName, VCSSysName, ControlMode, OfflineWaitTime, DomainType, BrokerIp }
        str IpAddress
        int Port = 14141
        str Username
        str Password
        str GroupName
        str VCSSysName
        str ControlMode
        int OfflineWaitTime
        str DomainType
        str BrokerIp
)

type SANVolume (
        static int OnlineRetryLimit = 4
        static str ArgList[] = { SANVolume, SANDiskGroup, VolumeServer, Domain, ExclusiveUse, Preempt, AccessPolicy }
        str Domain
        str SANDiskGroup
        str SANVolume
        str VolumeServer
        boolean ExclusiveUse = 1
        boolean Preempt = 1
        str AccessPolicy = RDONLY
)

type SambaServer (
        static str ArgList[] = { ConfFile, SambaTopDir, LockDir, Ports, IndepthMonitorCyclePeriod, ResponseTimeout }
        str ConfFile
        str SambaTopDir
        str LockDir
        int Ports[] = { 139, 445 }
        int IndepthMonitorCyclePeriod = 5
        int ResponseTimeout = 10
)

type SambaShare (
        static str ArgList[] = { "SambaServerRes:ConfFile", "SambaServerRes:SambaTopDir", "SambaServerRes:LockDir", ShareName, ShareOptions, "SambaServerRes:Ports" }
        str SambaServerRes
        str ShareName
        str ShareOptions
)

type Share (
        static keylist SupportedActions = { "direxists.vfd" }
        static str ArgList[] = { PathName, Options, "NFSRes:State" }
        str NFSRes
        str PathName
        str Options
)

type VRTSWebApp (
        static int NumThreads = 1
        static str ArgList[] = { AppName, InstallDir, TimeForOnline }
        str AppName
        str InstallDir
        int TimeForOnline
)

type Volume (
        static int NumThreads = 1
        static str ArgList[] = { Volume, DiskGroup }
        str Volume
        str DiskGroup
)

type Zone (
        static str ArgList[] = { Pool, BootState, ShutdownGracePeriod }
        static int ContainerOpts{} = { RunInContainer=0, PassCInfo=1 }
        str Pool
        str BootState
        int ShutdownGracePeriod
)

type Zpool (
        static str ArgList[] = { PoolName, AltRootPath, ChkZFSMounts, ZoneResName, "ZoneResName:State" }
        str PoolName
        str AltRootPath
        boolean ChkZFSMounts = 1
        str ZoneResName
)

 

Any help would be greatly appreciated.

 

-Jay

1 ACCEPTED SOLUTION

Accepted Solutions

Jay_Reeves
Level 2

We got it figured out.

It seems for some reason the types.cf file didn't get updated and was using an old or corrupted copy.  I copied the /etc/VRTSvcs/conf/types.cf to /etc/VRTSvcs/conf/config/ and everything was cool.

I learned from the Veritas support engineers that most anytime that some of the simple resources such as MOUNT, IP, NIC, etc, have the "Unknown" status, it usually points to an issue with the types.cf file.

-Jay

View solution in original post

3 REPLIES 3

mikebounds
Level 6
Partner Accredited

VCS attributes are case sensitive and you have "Protocol = IPV4" - it should be  "Protocol = IPv4" ("v" in lowercase) - it cannot be blank also, it must be IPv4 or IPv6.

Mike

Jay_Reeves
Level 2

Thanks for the response, Mike.

However we had already tried what you mention: case-sensitive & blank.  We've done: blank, IPv4, ipv4, IPV4 - no luck.

It says in the Cluster Manager V7.0 Explorer Attribute window for the resource (and I quote) "IP protocol type "IPV6" or "IPV4" or blank (IPV4 is assumed)."  We are configuring it through the Java GUI and not editing the config files directly.

Any other ideas?

-Jay

Jay_Reeves
Level 2

We got it figured out.

It seems for some reason the types.cf file didn't get updated and was using an old or corrupted copy.  I copied the /etc/VRTSvcs/conf/types.cf to /etc/VRTSvcs/conf/config/ and everything was cool.

I learned from the Veritas support engineers that most anytime that some of the simple resources such as MOUNT, IP, NIC, etc, have the "Unknown" status, it usually points to an issue with the types.cf file.

-Jay