作者归档:root

DELL DSET和SAE的区别

从DELL第11代服务器开始,DELL的诊断工具dset改为了sae,dset全称为Dell System E-Support Tool,sae全称为SupportAssist Enterprise。

Dset只支持10代及之前的服务器,目前dset已停产,已被sae替代。

Sae对dset的优势如下:

  DELL SYSTEM E-SUPPORT TOOL (DSET) SUPPORTASSIST ENTERPRISE (SAE)
收集系统日志(现场/远程)+ / ++ / +
向戴尔支持发送日志 手动 自动或手动
在 Dell 支持网站上创建支持事件  +
使用工具查看日志  +
服务器事件日志(SEL)删除选项 + +
需要安装  +
系统监控  可达 15000 个系统
已为PowerEdge服务器未来新版本做好准备  +

+= 支持
= 不支持

Windows 系统上安装sae和收集日志,点击这里

在 Linux 系统上安装sae和收集日志,点击这里

Dell EMC SupportAssist Enterprise 3.x-指南和下载,点击这里

WINDOWS 2012安装VMWARE TOOLS报错的解决办法

VMware Workstation 15 Pro版本上安装windows server 2012虚拟机,虚拟机上安装vmware tools报错,报错内容是:

安装程序无法验证是否已安装所需的Microsoft更新KB2919355

网上有些办法是先安装 Microsoft Visual C++ 2017,但是有时候安装这个程序也会报错,经测试,并不需要安装该程序,至需要先安装补丁KB2919442,再安装补丁KB2919355,既可以正常安装vmware tools了。

单路和多通道内存模式

可以在英特尔主板 上配置几种类型的内存模式, 具体取决于安装了多少内存模块 (dimm):

  • 单通道
  • 双通道
  • 三重通道
  • 四通道
  • Flex 模式

单通道 (非对称) 模式
此模式提供单通道带宽操作, 在仅安装一个 dimm 或多个 dimm 的内存容量不相等时使用。在通道之间使用不同的速度 dimm 时, 也会使用最慢的内存定时。

single-channel with one DIMM

单通道带一个 DIMM

single-channel with three DIMMs

带三 dimm 的单通道

在启动时, 检测到内存配置, 您可能会看到此警报消息:

警报: 在每个通道中安装了相同数量的内存, 实现了最大的内存性能。按任意键继续。

使用当前安装的 dimm, 计算机被设置为单通道模式, 但可以设置为双通道模式。如果关闭并正确重新排列 dimm, 则可以建立双通道模式。

双通道 (交错) 模式
此模式提供更高的内存吞吐量, 并在两个 DIMM 通道的内存容量相等时启用。使用不同的速度 dimm 时, 使用的内存时间最慢。

dual-channel with 2 DIMMs

双通道带两个 dimm

dual-channel with 3 DIMMs

带三 dimm 的双通道

dual-channel with 4 DIMMs

带四 dimm 的双通道

启用双通道模式的规则
要实现双通道模式, 必须满足以下条件:

  • 相同的内存大小。示例: 1 gb、2 gb、4 gb。
  • 每个通道中的 DIMM 配置匹配。
  • 在对称内存插槽中匹配。

与上述条件不匹配的配置将恢复为单通道模式。不需要满足以下条件:

  • 同一品牌
  • 相同的定时规格
  • 相同的速度 (MHz)

系统中填充的最慢的 DIMM 模块决定了内存通道速度。

三重通道模式
三重通道交错通过依次访问 DIMM 内存来减少总体内存滞后时间。数据以交替模式分布在内存模块中。

三独立内存通道提供两种可能的交错模式:

  • 如果在三个蓝色内存插槽中安装了相同的匹配内存模块, 则启用三重通道模式。
  • 如果只有两个蓝色内存插槽使用匹配的 dimm 填充, 则启用双通道模式。
triple-channel mode

四通道模式
当四 (或倍数为四) dimm 在容量和速度上相同且处于四通道插槽中时, 将启用此模式。当安装两个内存模块时, 系统以双通道模式运行。当安装了三个内存模块时, 系统将以三重通道模式运行。

quad-channel with 4 DIMMs

带四个 dimm 的四通道:

quad-channel with 8 DIMMs

带八个 dimm 的四通道:

Flex 模式
这种模式会导致双通道和单声道操作贯穿整个 DRAM 内存。该图显示使用两个 dimm 的 flex 模式配置。操作如下:

  • 插槽1中的 2 gb dimm 和插槽2中的 dimm 的下 2 gb 在双通道模式下运行。
  • 插槽2中的 DIMM 的剩余 (上部) 2 GB 在单通道模式下运行。
flex

VMWARE的FAILED TO LOG INTO NFC SERVER的解决办法

现有vmware esxi5.5,通过vsphere client连接,无法上传文件,且虚拟机控制台打不开,上传文件时报错“Failed to log into NFC server”。

查找资料发现可能为/etc/config/vmware配置文件问题,ssh连接上另一台esxi服务器,仔细对比配置文件,发现一模一样,并且重启管理代理服务,问题依旧。

vsphere client需要与esxi主机的443和902端口正常通信,测试下tcp 902端口,发现端口不通,修改中间网路设备相关策略,放通902端口后,可以正常上传文件并且控制台也可正常打开。

原来是网络端口不通,导致的问题。

华为RH2288 V5服务器RAID0替换硬盘报错

现有一台RH2288 V5服务器,配置LSI Megaraid SAS3108阵列卡,有12块SATA 4T硬盘,每块硬盘都做了raid0,现在四号槽硬盘故障,按照正常操作,关机,更换硬盘,为新硬盘配置raid0。

但是配置好raid0后,重启,自检到阵列卡提示:

The following VDs are missing:005

进入阵列卡发现刚才新硬盘配置的raid0丢失,新硬盘的状态仍为ready,重配后,问题依旧。

联系华为厂家,厂家工程师的答复是可能为raid卡bug导致,将bmc相关日志收集给厂家,厂家未发现可疑问题,也未能定位出故障原因。

后更换另一块新硬盘,发现问题解决,可能是之前硬盘和阵列卡兼容性存在问题。

硬盘512E、4KN的解读

传统的硬盘是以512字节大小的扇区为单位分割进行读写, 512字节的空间不全用来存数据,还存放这一些功能性代码,如ECC校验、Gap、Sync/Address Mark的代码,所以真正的存储空间大概不到90% ,整个磁盘空间的利用率大概在88%左右。

为了提升硬盘可用容量,硬盘厂商把每一个磁盘单位(sector format)扇区格式改为4K(512 Bytes x 8),这种格式又叫做(Advanced Format)高级格式,8个(sector format)共用一个 同步/分隔区域和一个容量稍大的 ECC 校验区 (即功能性代码部分,这部分约占用一百多字节),真正的存储空间使用率能达到97%。

但是现有操作系统对4K这种高级格式支持度还不够,为了过渡,硬盘厂商为4K扇区格式的硬盘准备了512e(emulation)的硬盘固件, 利用固件来把传统的对于512字节扇区的逻辑访问转换为对于4K字节扇区的物理访问。

新硬盘还有另一种固件直接支持 4K字节扇区的访问,这种硬盘称之为4Kn(Native)。传统格式的硬盘被称之为512n(Native),原生就是512字节的扇区。

当我们将大于4K的数据块写入512e硬盘时,由于一次写入的扇区大小就是4K,所以写操作的性能会有较大提升。但是如果写入512e硬盘的数据块小于4K时,操作系统就必需经过读取再修改再写入的过程,这会造成比较明显的性能下降。一些传统应用(如数据库系统)的I/O操作最小单位仍小于 4KB,使用原生 512 byte 扇区硬盘可以保证最好的性能,采用 512e 硬盘容易产生性能影响。

信锐无线网络故障处理说明

网络拓扑大致为出口防火墙,下接上网行为管理,下接核心交换机,交换机上单臂部署信锐无线控制器和AP等。

现有部分用户反应,接入某无线信号后获取不到IP地址,无法上网。

查询无线用户认证日志得知,该终端接入时从vlan 90上获取IP,但是获取不到地址,查看无线控制器配置,得知终端用户获取IP的vlan配置在无线控制器上,但是未配置vlan 90,所以获取不到IP,修改该无线信号的配置,将vlan 90改成其他vlan号。

但是用户仍旧反应不能上网,再次查看无线信号的配置,发现该无线信号还启用了mac白名单的设置,但是未勾选相关的mac白名单,将mac白名单配置好后,用户看正常接入无线信号,正常上网。



VSAN主机磁盘出错处理步骤



在vsan的vcenter控制台界面,发现有主机磁盘出错的告警信息,但是在服务器上并未出现任何告警。

此时点击报错主机,在监控——问题——所有问题下,查看告警信息,在监控——任务与事件中,查看具体告警信息,在具体的告警信息中,可以看到告警硬盘的UID号和NAA号。

点击群集,在配置——VSAN——磁盘管理下,可以看到告警主机的磁盘组,在磁盘组中可以根据NAA号定位出告警硬盘。

将该磁盘从磁盘组中移除,移除时点击将所有数据撤出到其他主机。

由于故障硬盘采用raid0配置,所以还需要关机更换硬盘。如果不采用raid,采用HBA或者JBOD这种直通模式,则可在线更换硬盘。

将该主机上的所有运行中的虚拟机迁移到其他主机上,迁移时选择更改计算资源和存储,如果DRS状态是全自动,可以将DRS状态改为手动,否则迁移后,虚拟机可能会根据DRS再次迁回至该主机。

将该主机关机,更换硬盘,将新硬盘配置成raid0,启动主机,在vcenter的vsan配置中,将新硬盘加入到vsan磁盘组中。

查看vsan容量,vsan故障磁盘处理完成。



LINUX TC(TRAFFIC CONTROL) 简介

众所周知,在互联网诞生之初都是各个高校和科研机构相互通讯,并没有网络流量控制方面的考虑和设计,IP协议的原则是尽可能好地为所有数据流服务,不同的数据流之间是平等的。然而多年的实践表明,这种原则并不是最理想的,有些数据流应该得到特别的照顾,比如,远程登录的交互数据流应该比数据下载有更高的优先级。

      针对不同的数据流采取不同的策略,这种可能性是存在的。并且,随着研究的发展和深入,人们已经提出了各种不同的管理模式。IETF已经发布了几个标准,如综合服务(Integrated Services)、区分服务(Diferentiated Services)等。其实,Linux内核从2.2开始,就已经实现了相关的流量控制功能。本文将介绍Linux中有关流量控制的相关概念, 用于流量控制的工具TC的使用方法,并给出几个有代表性实例。

一、相关概念
      报文分组从输入网卡(入口)接收进来,经过路由的查找,以确定是发给本机的,还是需要转发的。如果是发给本机的,就直接向上递交给上层的协议,比如TCP,如果是转发的,则会从输出网卡(出口)发出。网络流量的控制通常发生在输出网卡处。虽然在路由器的入口处也可以进行流量控制,Linux也具有相关的功能,但一般说来,由于我们无法控制自己网络之外的设备,入口处的流量控制相对较难。因此我们这里处理的流量控制一般指出口处的流量控制。流量控制的一个基本概念是队列(Qdisc),每个网卡都与一个队列(Qdisc)相联系,每当内核需要将报文分组从网卡发送出去,都会首先将该报文分组添加到该网卡所配置的队列中,由该队列决定报文分组的发送顺序。因此可以说,所有的流量控制都发生在队列中。

       有些队列的功能是非常简单的,它们对报文分组实行先来先走的策略。有些队列则功能复杂,会将不同的报文分组进行排队、分类,并根据不同的原则,以不同的顺序发送队列中的报文分组。为实现这样的功能,这些复杂的队列需要使用不同的过滤器(Filter)来把报文分组分成不同的类别(Class)。这里把这些复杂的队列称为可分类(Classiful)的队列。通常,要实现功能强大的流量控制,可分类的队列是必不可少的。因此,类别(Class)和过滤器(Filter)也是流量控制的另外两个重要的基本概念。

     类别(Class)和过滤器(Filter)都是队列的内部结构,并且可分类的队列可以包含多个类别,同时,一个类别又可以进一步包含有子队列,或者子类别。所有进入该类别的报文分组可以依据不同的原则放入不同的子队列 或子类别中,以此类推。而过滤器(Filter)是队列用来对数据报文进行分类的工具,它决定一个数据报文将被分配到哪个类别中。

二、使用TC
      在Linux中,流量控制都是通过TC这个工具来完成的。通常,要对网卡进行流量控制的配置,需要进行如下的步骤:

  ◆ 为网卡配置一个队列;

  ◆ 在该队列上建立分类;

  ◆ 根据需要建立子队列和子分类;

  ◆ 为每个分类建立过滤器。

      在Linux中,可以配置很多类型的队列,比如CBQ、HTB等,其中CBQ 比较复杂,不容易理解。HTB(Hierarchical Token Bucket)是一个可分类的队列, 与其他复杂的队列类型相比,HTB具有功能强大、配置简单及容易上手等优点。在TC中,使用”major:minor”这样的句柄来标识队列和类别,其中major和minor都是数字。

      对于队列来说,minor总是为0,即”major:0″这样的形式,也可以简写为”major: “比如,队列1:0可以简写为1:。需要注意的是,major在一个网卡的所有队列中必须是惟一的。对于类别来说,其major必须和它的父类别或父队列的major相同,而minor在一个队列内部则必须是惟一的(因为类别肯定是包含在某个队列中的)。举个例子,如果队列2:包含两个类别,则这两个类别的句柄必须是2:x这样的形式,并且它们的x不能相同,比如2:1和2:2。

      下面,将以HTB队列为主,结合需求来讲述TC的使用。假设eth0出口有100mbit/s的带宽,分配给WWW、E-mail和Telnet三种数据流量,其中分配给WWW的带宽为40Mbit/s,分配给Email的带宽为40Mbit/s,分配给Telnet的带宽为20Mbit/S。

      需要注意的是,在TC 中使用下列的缩写表示相应的带宽:

      ◆ Kbps : kilobytes per second,千字节每秒 ;

      ◆ Mbps : megabytes per second,兆字节每秒 ,

      ◆ Kbit : kilobits per second,千比特每秒 ;

      ◆ Mbit : megabits per second, 兆比特每秒 。

三、创建HTB队列
      有关队列的TC命令的一般形式为:

tc qdisc [add | change | replace | link] dev DEV [parent qdisk-id |root] [handle qdisc-id] qdisc [qdisc specific parameters]

      首先,需要为网卡eth0配置一个HTB队列,使用下列命令:

      #tc qdisc add dev eth0 root handle 1:htb default 11

      这里,命令中的”add”表示要添加,”dev eth0”表示要操作的网卡为eth0。”root”表示为网卡eth0添加的是一个根队列。”handle 1:”表示队列的句柄为1: 。”htb”表示要添加的队列为HTB队列。命令最后的”default 11”是htb特有的队列参数,意思是所有未分类的流量都将分配给类别1:11。

四、为根队列创建相应的类别
      有关类别的TC 命令的一般形式为:

tc class [add | change | replace] dev DEV parent qdisc-id [classid class-id] qdisc [qdisc specific parameters]

      可以利用下面这三个命令为根队列1创建三个类别,分别是1:1 1、1:12和1:13,它们分别占用40、40和20mb[t的带宽。

      #tc class add dev eth0 parent 1: classid 1:1 htb rate 40mbit ceil 40mbit

      #tc class add dev eth0 parent 1: classid 1:12 htb rate 40mbit ceil 40mbit

      #tc class add dev eth0 parent 1: cllassid 1:13 htb rate 20mbit ceil 20mbit

      命令中,”parent 1:”表示类别的父亲为根队列1: 。”classid1:11”表示创建一个标识为1:11的类别,”rate 40mbit”表示系统将为该类别确保带宽40mbit,”ceil 40mbit”,表示该类别的最高可占用带宽为40mbit。

五、为各个类别设置过滤器
      有关过滤器的TC 命令的一般形式为:

tc filter [add | change | replace] dev DEV [parent qdisc-id | root] protocol protocol prio priority filtertype [filtertype specific parameters] flowid flow-id

      由于需要将WWW、E-mail、Telnet三种流量分配到三个类别,即上述1:11、1:12和1:13,因此,需要创建三个过滤器,如下面的三个命令:

      #tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip dport 80 0xffff flowid 1:11

      #tc filter add dev eth0 prtocol ip parent 1:0 prio 1 u32 match ip dport 25 0xffff flowid 1:12

      #tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip dport 23 oxffff flowid 1:13

      这里,”protocol ip”表示该过滤器应该检查报文分组的协议字段。”prio 1” 表示它们对报文处理的优先级是相同的,对于不同优先级的过滤器,系统将按照从小到大的优先级顺序来执行过滤器,对于相同的优先级,系统将按照命令的先后顺序执行。这几个过滤器还用到了u32选择器(命令中u32后面的部分)来匹配不同的数据流。以第一个命令为例,判断的是dport字段,如果该字段与Oxffff进行与操作的结果是8O,则”flowid 1:11”表示将把该数据流分配给类别1:1 1。更加详细的有关TC的用法可以参考TC的手册页。

六、复杂的实例
      在上面的例子中, 三种数据流(www、Email、Telnet)之间是互相排斥的。当某个数据流的流量没有达到配额时,其剩余的带宽并不能被其他两个数据流所借用。在这里将涉及如何使不同的数据流可以共享一定的带宽。

      首先需要用到HTB的一个特性, 即对于一个类别中的所有子类别,它们将共享该父类别所拥有的带宽,同时,又可以使得各个子类别申请的各自带宽得到保证。这也就是说,当某个数据流的实际使用带宽没有达到其配额时,其剩余的带宽可以借给其他的数据流。而在借出的过程中,如果本数据流的数据量增大,则借出的带宽部分将收回,以保证本数据流的带宽配额。

      下面考虑这样的需求,同样是三个数据流WWW、E-mail和Telnet, 其中的Telnet独立分配20Mbit/s的带宽。另一方面,WWW 和SMTP各自分配40Mbit/s的带宽。同时,它们又是共享的关系,即它们可以互相借用带宽。

      需要的TC命令如下:

      #tc qdisc add dev eth0 root handle 1: htb default 21

      #tc class add dev eth0 partent 1: classid 1:1 htb rate 20mbit ceil 20mbit

      #tc class add dev eth0 parent 1: classid 1:2 htb rate 80mbit ceil 80mbit

      #tc class add dev eth0 parent 1: classid 1:21 htb rate 40mbit ceil 20mbit

      #tc class add dev eth0 parent 1:2 classid 1:22 htb rate 40mbit ceil 80mbit

      #tc filter add dev eth0 protocol parent 10 prio 1 u32 match ip dport 80 0xffff flowid 1:21

      #tc filter add dev eth0 protocol parent 1:0 prio 1 u32 match ip dport 25 0xffff flowid 1:22

      #tc filter add dev eth0 protocol parent 1:0 prio 1 u32 match ip dport 23 0xffff flowid 1:1

      这里为根队列1创建两个根类别,即1:1和1:2,其中1:1对应Telnet数据流,1:2对应80Mbit的数据流。然后,在1:2中,创建两个子类别1:21和1:22,分别对应WWW和E-mail数据流。由于类别1:21和1:22是类别1:2的子类别,因此他们可以共享分配的80Mbit带宽。同时,又确保当需要时,自己的带宽至少有40Mbit。

      从这个例子可以看出,利用HTB中类别和子类别的包含关系,可以构建更加复杂的多层次类别树,从而实现的更加灵活的带宽共享和独占模式,达到企业级的带宽管理目的。

MEGACLI查看硬盘状态

通过megacli的如下命令查看RAID的情况,命令如下:

/opt/MegaRAID/MegaCli/MegaCli64 LDPDInfo -Aall

重点关注以下几点:

Media Error Count
Other Error Count
Predictive Failure Count
Last Predictive Failure
Drive has flagged a S.M.A.R.T alert

如果这几个数值不为0,则可能为硬盘故障,需要更换硬盘。

可以通过让指定硬盘闪烁的方式来定位磁盘位置,命令如下:

MegaCli -PdLocate -start -physdrv [E:S] -aALL

其中 E表示 Enclosure Device ID,S表示Slot Number。比如坏盘的位置为:
Enclosure Device ID: 1
Slot Number: 0

可执行以下命令让其闪烁:
root@Storage-c2:/opt/MegaRAID/MegaCli# ./MegaCli64 -PdLocate -start -physdrv[1:0] -a0
Adapter: 0: Device at EnclId-1 SlotId-0 — PD Locate Start Command was successfully sent to Firmware Exit Code: 0x00
root@Storage-c2:/opt/MegaRAID/MegaCli#

更换硬盘后,关闭闪烁的命令如下:
MegaCli -PdLocate -stop -physdrv [E:S] -aALL

如果raid中有硬盘故障,更换硬盘后,一般都无需做操作,阵列卡会自动做rebuild,从拔出硬盘到插入新盘,一般会有以下的过程:

  • Device
    Normal —>Damage —>Rebuild —>Normal
  • Virtual Drive
    Optimal —>Degraded —>Degraded —>Optimal
  • Physical Drive
    Online —>Failed Unconfigured —>Rebuild —>Online

查看rebuild进度的命令如下:

/opt/MegaRAID/MegaCli/MegaCli64 -PDRbld -showprog -physDrv [1:0] -a0

输出一般如下:

root@Storage-c2:/opt/MegaRAID/MegaCli# ./MegaCli64 -PDRbld -showprog -physDrv [1:0] -a0 
Rebuild Progress on Device at Enclosure 1, Slot 0 Completed 10% in 0 Minutes.
Exit Code: 0x00
root@Storage-c2:/opt/MegaRAID/MegaCli#