2015年11月13日星期五

DELL服务器硬件信息采集SHELL脚本

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
DELL服务器硬件信息采集SHELL脚本  阅读原文»

DELL服务器硬件信息采集SHELL脚本

最近需要做资产列表,要采集DELL服务器的硬件信息,包括如下信息:

1、操作系统信息(类型,版本,内核,平台,主机名)

2、主板信息(厂商,机型,序列号)

3、CPU信息(型号,个数,物理核数)

4、内存(条数,单条容量)

执行前请先安装MegaRAID,为了提高工作效率,我们使用SHELL脚本来实现,如下:

  #!/bin/sh  #get os information  function get_os_info() {          release=`cat /etc/redhat-release | awk '{print $1"_"$3}'`          kname=`uname -s`          nodename=`uname -n`          kernal=`uname -r`          bit=`uname -i`          printf "OS_RELEASE: $release"_"$bit\n"          printf "OS_DETAIL: $kname $nodename $kernal $bit\n"  }  get_os_info  #get vendor, model, sn...  function motherboard() {          vendor=`dmidecode -t 1|grep "Manufacturer"|awk '{print $2}'`          model=`dmidecode -t 1|grep "Product"|awk '{print $4}'`          sn=`dmidecode -t 1|grep "Serial" |awk '{print $3}'`          printf "MODEL: $vendor $model\n"          printf "SN: $sn\n"  }  motherboard  function memory() {          count=`dmidecode  -q -t 17 2 |grep  "Size" |grep -v "No Module Installed"|awk '{print $2}'|uniq -c|awk '{print $1}'`          capacity=`dmidecode  -q -t 17 2 |grep  "Size" |grep -v "No Module Installed"|awk '{print $2}'|uniq -c|awk '{print $2}'`          capacity=`expr $capacity / 1024`          printf "MEM: $count"*"$capacity"G"\n"  }  memory  function cpuinfo() {          cpu_model=`cat /proc/cpuinfo|grep "model name"|head -1|awk -F: '{print $2}'`          cpu_count=`cat /proc/cpuinfo|grep "core id"|grep "0"|uniq -c|awk '{print $1}'`          cpu_total_cores=`cat /proc/cpuinfo|grep "processor"|wc -l`          single_cores=`expr $cpu_total_cores / $cpu_count`          printf "CPU:$cpu_model($cpu_count"*"$single_cores"Cores")\n"  }  cpuinfo  function diskinfo() {          raidlevel=`/opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -Lall -aALL |grep "RAID"|awk '{print $3}'|cut -b 9-9`          disknumber=`/opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -Lall -aALL | grep "Drives"|awk -F ":" '{print $2}'`          disktype=`/opt/MegaRAID/MegaCli/MegaCli64 -PDList -aALL | grep "PD Type"|head -1|awk -F: '{print $2}'`          diskcapacity=`/opt/MegaRAID/MegaCli/MegaCli64 -PDList -aALL | grep "Raw Size"  head -1  awk '{print $3}'`          printf "DISK: $disknumber"*"$diskcapacity"GB"$disktype (Raid Level: $raidlevel)\n"  }  diskinfo  

脚本执行结果如下:

  OS_RELEASE: CentOS_6.5_x86_64  OS_DETAIL: Linux appsrv 2.6.32-431.el6.x86_64 x86_64  MODEL: Dell R730  SN: CDFGHJL  MEM: 4*8G  CPU: Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz(2*8Cores)  DISK: 2*279.396GB SAS (Raid Level: 1)  
每日博报 精彩不止一点

电信运营商城域网架构关键技术-QinQ双层标签  阅读原文»

QinQ技术的应用场景:

在运营商的网络中每一个用户都需要放入一个单独的VLAN中,以便实现进行各用户之间的隔离,但是由于802.1qVLAN TAG只有12比特,导致 vlan数量最多只能有个无法满足城域网中大量用户的隔离需求,这时就用到了QinQ技术。

QinQ技术是通过在原有的802.1q的基础上增加了一层802.1q标签来实现的,使得VLAN数量扩展到4094 * 4094个。如下图:

wKiom1ZERRnBR18HAAGAvx4yl2g578.png

下面通过实验来详细说明,通过华为设备在运营商城域网中如何部署QINQ技术。

实验拓扑

使用eNSP模拟器(版本V100R002C00 1.2.00.370

wKioL1ZERXCzhJgkAACmGgBbFPE108.png

环境描述

城域网用户的接入大致拓扑为:BRAS设备(理解为路由器,只是多了宽带接入功能)→OLT设备(理解为一个大交换机就行了)→分光器(纯物理层设备)→ONU设备(理解为用户接入交换机就行了)→家庭用户,如上图所示通过在ONU设备上划分VLAN对用户进行隔离,每个用户属于一个VLAN,如果这样的话,一台OLT下的VLAN ID明显不够用,图中只接了2ONU设备,在真实环境下一台OLT的下面一定挂着很多ONU设备这时VLAN肯定不够用的,这时可以使用QinQ技术解决OLTVLAN ID不够的问题!因为两层标签的情况下,VLAN的数量可以达到4096*4096个,一台OLT设备下不可能挂这么多的用户的。

实验规划

Win7 VLAN 100):192.168.100.10/24

C2 VLAN 200):192.168.100.20/24

C3 VLAN 300):192.168.200.10/24

C4 VLAN 400):192.168.200.20/24

OLT G0/0/1 VLAN 10

OLT G0/0/2 VLAN 20

实验需求

1.OLT设备上配置QinQ解决VLAN ID不够问

2.BRAS设备上配置子接口脱两层标签终结VLAN

3.在BRAS设备上配置PPPOE拨号功能,模拟实现家庭用户拨号上网。

4.抓包分析PPPOE报文。

实验配置

SW1配置:都是基本的交换要常规配置

<SW1>system-view

[SW1]vlanbatch 100 200

[SW1]inte0/0/1

[SW1-Ethernet0/0/1]portlink-type access

[SW1-Ethernet0/0/1]portdefault vlan 100

[SW1-Ethernet0/0/1]inte0/0/2

[SW1-Ethernet0/0/2]portlink-type access

[SW1-Ethernet0/0/2]portdefault vlan 200

[SW1-Ethernet0/0/2]intg0/0/1

[SW1-GigabitEthernet0/0/1]portlink-type trunk

[SW1-GigabitEthernet0/0/1]porttrunk allow-pass vlan 100 200

SW2配置:

<SW2>system-view

[SW2]vlanbatch 300 400

[SW2]inte0/0/1

阅读更多内容

没有评论:

发表评论