首页 » ORACLE 9i-23ai, 系统相关 » 如果存在Infiniband设备,ifconfig hardware address can be incorrect可以忽略

如果存在Infiniband设备,ifconfig hardware address can be incorrect可以忽略

Infiniband(IB) 是一个用网络通信标准,满足科学计算实验的要求, 致力于服务器端的高性能计算的互联技术,它具有极高的吞吐量和极低的延迟,用于计算机与计算机、服务器与存储系统之间、存储系统的直接或交换互连,当前的ORACLE RAC是支持IB的,适合用于RAC的CACHE FUSION和ORACLE Exadata等工程系统一体机,目前国产数据库一体机也大量使用。 还有最近几年最较火的RDMA远程直接内存访问(即Remote Direct Memory Access)和持久性内存全互联的分布式存储系统也多使用IB。

RDMA最早在Infiniband传输网络上实现,技术先进,但是价格高昂(只有Mellanox和Intel供应商提供全套网络解决方案),后来业界厂家把RDMA移植到传统Ethernet以太网上,降低了RDMA的使用成本,推动了RDMA技术普及。在Ethernet以太网上,根据协议栈融合度的差异,分为iWARP和RoCE两种技术。

除了Infiniband解决方案中的硬件卡、线、交换机硬件价格昂贵,领先的供应商有Mellanox和Intel公司, 很多用户是Mellanox全家桶,这两家公司总部都在美国,近年来美国政府对于中国公司技术限制,国内的自主可控和技术防卡脖,如X为,TaiShan一些存储没有使用IB。

Oracle数据库环境的IB也逐渐普及,如interconnect和存储。在11g中有bug在私网有问题,19.5前因Linux kernel regression in the UEK5 kernel 问题会存在RAC LMS进程hang,影响Exadata 机器(fixed in Linux kernel version V4.14.35-1902.10.6)。

Oracle环境部署OSW用于监控主机性能,似乎成为了未约定的标配, 在数据库出问题时提供OS层的信息,调用的也都是OS命令,其中如网络的ifconfig ,但是在如果服务器上有IB时会提示如下错误”Infiniband hardware address can be incorrect”

# ifconfig bondIB2
bondIB2: flags=5187<UP,BROADCAST,RUNNING,MASTER,MULTICAST>  mtu 1500
        inet 192.168.43.91  netmask 255.255.255.0  broadcast 192.168.43.255
        inet6 fe80::526b:4b03:82:8bd2  prefixlen 64  scopeid 0x20
Infiniband hardware address can be incorrect! Please read BUGS section in ifconfig(8).
        infiniband A0:00:03:00:FE:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00  txqueuelen 1000  (InfiniBand)
        RX packets 407680500135  bytes 236690359655375 (215.2 TiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 295004994806  bytes 212627133622966 (193.3 TiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

# ip addr show bondIB2
18: bondIB2: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
    link/infiniband a0:00:03:00:fe:80:00:00:00:00:00:00:50:6b:4b:03:00:82:8b:d2 brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff
    inet 192.168.43.91/24 brd 192.168.43.255 scope global bondIB2
       valid_lft forever preferred_lft forever
    inet 169.254.167.210/16 brd 169.254.255.255 scope global bondIB2:1
       valid_lft forever preferred_lft forever
    inet6 fe80::526b:4b03:82:8bd2/64 scope link 
       valid_lft forever preferred_lft forever

Cause:

Ifconfig uses the ioctl access method to get the full address information, which limits hardware addresses to 8 bytes.Because Infiniband address has 20 bytes, only the first 8 bytes are displayed correctly. Ifconfig is obsolete! For replacement check ip.

错误是因为IFCONFIG使用IOCTL访问取address,但限制在前8 bytes, IB的地址有20bytes, 所以才显示错误。建议使用IP替换ifconfig, IP命令类似于ifconfig,它对于分配静态IP地址,路由和默认网关等非常熟悉。ifconfig多年以来一直没有进行维护,不推荐使用ifconfig命令,即使该命令在大多数Linux发行版中仍然可用。

ifconfig命令已由功能基本被IP命令所取代,并且可以用一个命令执行多个网络管理任务。IP命令实用程序与iproute2软件包捆绑在一起。默认情况下,iproute2实用程序预先安装了所有主要的Linux发行版。如果没有,您可以iproute2在软件包管理器的帮助下通过在终端上进行发行来安装它,事实是,目前ip不能完全替代ifconfig。命令的结构有所不同。

打赏

, ,

对不起,这篇文章暂时关闭评论。