Work diary on 2013

2013-09-10

  • 解决多个扩展柜满盘时,snmp获取信息超时问题。
    使用多线程,用线程获取数据到内存结构中,snmp查询的时候直接返回内存信息.

2013-08-27

  • 解磁盘灯bug

2013-08-19

  • snmp加入set功能(关机、重启、同步时间)

2013/08/12—2013/08/16

  • work summary:
    • 1.Pre-search maid feature
    • 2.Study and test snmpget feature
  • work plan:
    • 1.study maid, how to know what time the os do a I/O request for which disks?
    • 2.Implement snmpget, support shutdown and reboot feature with snmp.

2013-07-29

  • 修改ks.cfg, 解决网口顺序相反的bug

    # check MAC address, if not match the correct interface, fix it 
    file_eth0=/etc/sysconfig/network-scripts/ifcfg-eth0
    file_eth1=/etc/sysconfig/network-scripts/ifcfg-eth1
    
    if [ -e $file_eth0 ] && [ -e $file_eth1 ]; then 
        # get MAC and UUID
        MAC0=$(grep HWADDR $file_eth0 | awk -f '"' '{print $(NF-1)}')
        MAC1=$(grep HWADDR $file_eth1 | awk -f '"' '{print $(NF-1)}')
        UUID0=$(grep UUID  $file_eth0 | awk -f '"' '{print $(NF-1)}')
        UUID1=$(grep UUID  $file_eth1 | awk -f '"' '{print $(NF-1)}')
    
        if [ "$MAC0" != "" ] && [ "$MAC1" != "" ]; then 
            $ compare MAC 
            compare_flag=0
            compare_flag=`echo $MAC0 $MAC1 |awk '$1>$2 {print 1}'`
            if [ "$compare_flag" == "1" ]; then 
                #swap MAC and UUID
                sed -i 's/'$MAC0'/'$MAC1'/g' $file_eth0
                sed -i 's/'$MAC1'/'$MAC0'/g' $file_eth1
                if [ "$UUID0" != "" ] && [ "$UUID1" != "" ]; then 
                    sed -i 's/'$UUID0'/'$UUID1'/g' $file_eth0
                    sed -i 's/'$UUID1'/'$UUID0'/g' $file_eth1
                else 
                    sed -i '/UUID/d' $file_eth0
                    [ "$UUID1" != "" ] && echo "UUID=\"$UUID1\"" >> $file_eth0
                    sed -i '/UUID/d' $file_eth1
                    [ "$UUID0" != "" ] && echo "UUID=\"$UUID0\"" >> $file_eth1
                fi
            fi
        fi
    fi
    

2013-07-24

  • 磁盘组重建fail,scm无相应告警问题

2013-07-23

  • 解scm告警数目不对问题

2013-07-04

  • 修改打包脚本,更新snmp目录

2013/05/20—2013/05/24

  • 分析SCM源码,增加SCM新功能.

2013/05/13—2013/05/17

  • 1.优化Windows日志获取模块
  • 2.处理SCM新特性
  • 3.打包SCM天翼版本,支持SV1000G2-T24-S.

2013/05/06—2013/05/10

  • 1.解华东天悦科技测试windows服务器遇到的watchdog造成机器重启问题
  • 2.解客户现场出现存储I/O性能低问题,研究如何采用读写windows事件日志方式代替使用Megacli查询raid卡日志方式
  • 3.研究Mib库和Net-SNMP,规划增加SCM监控项.
  • 4.协助、配合KVM预研

2013-05-03

  • 测试watchdog
    • 测试机器:
      • 主板: Supermicro X9
      • IP : 172.16.110.39
      • OS : Windows 7
    • 测试过程:
        1. 确认问题
          1). 开机进入BIOS,在Advance中开启Watchdog功能
          2). 进入操作系统,确认系统会自动重启
        1. 测试解决方案
          1). 开机进入BIOS,在Advance中关闭Watchdog功能
          2). 进入操作系统,执行测试程序iotest(Win32 console project, 源码见附件),打印当前超时时间(显示为5分钟)
          (1). 运行定时器,每隔一分钟修改一次0xf6寄存器的值为10,打印当前超时时间(显示为10分钟)
          3). 长时间运行,确认系统不会重启。
    • 参考资料:
        1. WinIO, 用于Windows应用程序中直接对I/O端口和物理内存进行存取操作。主页: www.internals.com
        1. Supermicro的《Watchdog Function Description》文档, 详细描述I/O操作步骤。
        1. linux内核源码驱动模块下的watchdog代码
          ./drivers/watchdog/iTCO_wdt.c
          ./drivers/watchdog/iTCO_vendor_support.c
          ./drivers/watchdog/iTCO_vendor.h

2013/03/11—2013/03/15

  • 1.检查SCM包含UIT字样的文档
  • 2.海信两盘位设备连接无线网络

2013/02/18—2013/02/19

  • 1.UPS

2013-01-11

  • 1.新机型4U36开发环境搭建,编译ucli
  • 2.配置Linux和VDI开发环境
  • 3.完善Shell脚本

2013-01-09

  • 学习Emacs

2013-01-08

  • 解决gvim开启错误
  • 更新c.vim
  • 学习LDD
  • 学习Emacs
  • 上班至20:00后

2013-01-07

  • yum install gvim texmaker
  • 学习LISP
  • 学习LDD
  • pmt.sh错误
  • 修改.vimrc, 加入英文字典功能
  • Fedora14 32位编译ustor错误
  • 上班至20:00后

2013-01-06

  • linux 打印功能安装
  • 学习linux device kernel
  • 归还NAS共享速度测试借用的硬盘

2013-01-05

  • 学习VIM

2013-01-04

  • 提交Ustor新机型代码并填写SCR
  • vim函数名高亮
  • cp命令加入进度条