MTU
NIC bonding—逻辑上连接两个或更多的物理NIC卡以提供冗余和更高的吞吐
LMS—lock manager server,负责传输cache fusion的数据块;默认情况两个CPU开启一个LMS
调整优化区域
Interconnect network
1、 interconncet协议
最常见的是UDP,是IC最稳定的;另外一个是IP over infiniband(IB);RAC10.2.0.3以及之后的版本,支持Reliable Datagram Socket(RDS),消耗CPU和延迟更低
2、网卡network interface card bonding
可以通过逻辑绑定多个网卡来提供冗余和更高的吞吐;一般网卡的带宽占有率占到interconnect的10-30%,超过70%则认为网络饱和
3、集群网络验证
最常见的是interconnect连接到了public
Cluvfy comp nodecon –n rac1
Oifcfg getif
查看db启动时候的alertlog
X$ksxpia
监控interconnect网络
监控丢包、超时、溢出和接受错误
Errors/dropped—标明网络有问题
Overruns—buffer overrun,需要重传导致网络过量传输
RX/TX—显示了传输和接受到的数据量
通过ifconfig –a/netstat –s可以得到
丢包会对DB有直接的影响,案例:丢包导致virtual IP离线,进而进程关闭了ASM和DB,
While [1]; do date; ping –q –c 5 ***.**.**.*** | grep –v “\-“ | grep –v “rtt” | grep –v “PING” | grep –v “^$”; sleep 1; done
AWR report
Global cache efficiency
Network traffic generated = Global cache blocks served * DB block size
Network traffic received = Global cache blocks received * DB block size
CPU太过繁忙的话,会导致LMS排队获取传输cache fusion
单纯增加一个节点的I/O能力会减弱其他节点的I/O能力
等待事件
GC cr/current Block 2-way
节点A请求block,B为master,B接到请求将BLOCK转给A
GC cr/current Block 3 way
同上
GC cr/current Grant 2-way
节点B指导A从磁盘读block并且为此进程上锁,中间的耗时事件
GC cr/current Block Congested
前台程序频繁请求block,表明现有的LMS进程跟不上请求,可以考虑增大GCS_server_processes的参数;CPU排队过长同样可以导致LMS延迟
Gc cr/current block busy
在block被发送到请求的节点前,有延迟等待
网络
增加UDP buffer size到OS的最大值,oracle推荐so_sndbuf/so_rcvbuf修改到256kb,如果需要的话可以修改到1M,通过/etc/sysctl.conf修改
Net.core.rmem_default=62144
Net.core.wmem_default=62144
Net.core.rmem_max=62144
Net.core.wmem_max=62144
NIC应该配置成full duplex模式,以提供接受/发送端的负载均衡和failover
数据传输data transfer的操作系统限制,当大事务存在,packet size的限制可能导致性能问题
Interconnect throughput大规模吞吐,可以使用Jumbo Frames,可以帮助降低因bonding device占用的CPU利用率,它支持9000bytes的MTU,降低网络传输次数
确保public network没有被private network占用
使用ifconfig/netstat监控dropped packets,timeouts,buffer overflows,transmit receive errors
硬件
确认存储架构/网络/interconnect comp有冗余
当有节点增加到HBA卡时,disk array上的switch的端口数和controllers的数目必须相应增加
LUNS必须在HBA端口负载均衡,primary path必须50%,另一个也要50%
开启hyperthreading,/proc/cpuinfo和top中的cpu数量必须一致
开启异步I/O可以提升disk I/O性能
对于有OLAP查询、并行查询、备份恢复等需要大量I/O操作的DB,可以修改aio-max-size=1048576/aio-max-ns=56k来提升性能
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/15480802/viewspace-696132/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/15480802/viewspace-696132/
本文详细阐述了在Oracle RAC环境中调整网络配置和性能优化的方法,包括选择稳定性和效率并重的interconnect协议、合理配置NIC bonding、监控网络状态及性能指标,以及通过监控工具发现和解决网络问题,最终提升整体系统的稳定性和性能。

1142

被折叠的 条评论
为什么被折叠?



