racadm环境之多线程并发(一)
本人习惯通过cobbler部署物理机系统,那我就来说说部署系统前需要做哪些准备。
1.BIOS设置是否符合标准。比如F1/F2错误提示、系统启动顺序、是否有开启PXE启动等。
2.你从哪个网卡进行pxe引导,cobbler部署需确定对应服务器网卡的MAC地址。
3.做磁盘阵列,此项是最耗费时间的。也是这个原因,才有了这个文档。
4.更改idrac root用户的密码,并新增一个组内通用用户。
一、racadm环境部署及文档说明
此文档仅适用于dell且配置了iDRAC远程管理卡的机器(主要是配置了idrac ip,方便远程连接)。全文脚本依赖于racadm环境,需在放置脚本的服务器上安装srvadmin包。以下脚本就是为解决前文中的系统部署前准备事宜。
环境部署如下:
#wgethttp://downloads.dell.com/FOLDER03574555M/1/OM-MgmtStat-Dell-Web-LX-8.3.0-1908_A00.tar.gz-P/tmp/#tarzxvfOM-MgmtStat-Dell-Web-LX-8.3.0-1908_A00.tar.gz#cd/tmp/linux/rac/RHEL6/x86_64/#rpm-ivhsrvadmin*#ln-s/opt/dell/srvadmin/bin/racadm/usr/bin/racadm
具体命令和用法,我就不说了,大家可以参考以下手册
http://www.dell.com/support/manuals/us/en/19/idrac7-8-with-lc-v2.20.20.20/iDRAC_RACADM_Pub-v3/storage?guid=GUID-9E3676CB-B71D-420B-8C48-C80ADD258E03&lang=en-us
二、 脚本说明
脚本部分一共包含三部分。
run.sh:运行脚本,此脚本从hosts.conf文件中获取信息并后台执行bin目录下的脚本,实现多机器并发。
hosts文件:脚本从文本文件中获取ip信息,网卡号,需配置的阵列类型等。
README文档
modules目录:此目录放置实现网卡获取、用户添加、raid配置等脚本,因篇幅较长,后续逐渐更新。
1.run.sh脚本内容
#!/bin/bash#chenss#date:2016-09-10PATH="/opt/dell/srvadmin/bin/:/opt/dell/srvadmin/sbin/:$PATH"if[$#-gt0];thenecho-e"\e[0;31;1mCorrectsyntax:shrun.sh\e[0m"exitfistart=`date+%s`NicGetMac='/data/script/idrac/modules/modules_GetNicMac.sh'CreateRaid='/data/script/idrac/modules/modules/modules_CreateRaid.sh'AddUser='/data/script/idrac/modules/modules_AddUser.sh'Check='/data/script/idrac/modules/modules/modules_SetBios.sh'delvd='/data/script/idrac/modules/modules/modules_DelVds.sh'disk_convert='/data/script/idrac/modules/modules/modules_DiskModeConvert.sh'defpass='/data/script/idrac/modules/modules_RestorPass.sh'reboot='/data/script/idrac/modules/modules/modules_SysReboot.sh'pxe='/data/script/idrac/modules/bootseq.sh'idrac_file='/data/script/idrac/hosts'NewInit='/data/script/idrac/modules/modules_NewInit.sh'cat<<EOF##########pleaseoptionyourchoice:[1-10]############(1)GetserverNICmac-address(2)Removeallorthevirtualdiskotherthanthesystemdisk(3)PhysicalDiskmodeconvert(4)Createraid1orraid5(5)Addidracuserandchangerootpasswd(6)BiosdisableF1/F2errotpromptandsetupHDDfirstboot(7)checksystembootseq(8)Restoretherootdefaultpassword(9)rebootsystem(10)Newserverraid、biosinit(99)Executethecommandmanually(*)exitscript########################################################EOFread-p"pleaseoptionyourchoice:"choicecase$choicein1)script="$NicGetMac";;2)read-p"Thisoperationwillremovevirtualdisk,Areyousure?[Y|N]"confirmif["$confirm"=="Y"-o"$confirm"=="y"];thenscript="$delvd"read-p"Romveallornosystemvirtualdisk?[all|nosys]"rmvdif["$rmvd"!="all"-a"$rmvd"!="nosys"];thenecho-e"\e[0;31;1m:arguerror,youcanonlyenter'all'or'nosys',pleaseenteragain\e[0m"exitfielseecho-e"\e[0;31;1mYoucanonlyenter'Y'or'N',pleaseenteragain\e[0m"exitfi;;3)read-p"Thisoperationwillconvertdiskmode,Maybeerasediskdata,Areyousure?[Y|N]"confirmif["$confirm"=="Y"-o"$confirm"=="y"];thenscript="$disk_convert"elseecho-e"\e[0;31;1mYoucanonlyenter'Y'or'N',pleaseenteragain\e[0m"exitfi;;4)read-p"Thisoperationwillcreateraid,Maybeerasediskdata,Areyousure?[Y|N]"confirmif["$confirm"=="Y"-o"$confirm"=="y"];thenscript="$CreateRaid"elseecho-e"\e[0;31;1mYoucanonlyenter'Y'or'N',pleaseenteragain\e[0m"exitfi;;5)script="$AddUser";;6)script="$Check";;7)script="$pxe";;8)script="$defpass";;9)read-p"Thisoperationwillrebootsystem,Areyousure?[Y|N]"confirmif["$confirm"=="Y"-o"$confirm"=="y"];thenscript="$reboot"fi;;10)read-p"Thisoperationwillremovevirtualdisk,Areyousure?[Y|N]"confirmif["$confirm"=="Y"-o"$confirm"=="y"];thenscript="$all"elseecho-e"\e[0;31;1mYoucanonlyenter'Y'or'N',pleaseenteragain\e[0m"exitfi;;99)read-p"pleaseinputcommand:"abcdefg;;*)echo-e"\e[0;31;1marguerror,pleasecheck...\e[0m"exit;;esacifegrep-v'^#|^$|^NIC|^RAID'$idrac_file|grep'[^[:digit:]].*-'&>/dev/null;thenmenu_ipseq='1'elsemenu_ipseq='2'fifunctionShExec{NUM=`grep'^NIC'$idrac_file|awk'{print$2}'`mode=`egrep'^mode'$idrac_file|awk'{print$2}'`raid_level=`egrep'^RAID'$idrac_file|awk'{print$2}'`if[-n"$a"];thenracadm-r$idrac_ip-uroot-pcalvin$a$b$c$d$e$f$g--nocertwarn|egrep-v-B9'Defaultusername'elif["`basename$script`"=="modules_GetNicMac.sh"];thensh$script$idrac_ip$NUMelif["`basename$script`"=="modules_DelVds.sh"];thensh$script$idrac_ip$rmvdelif["`basename$script`"=="modules_DiskModeConvert.sh"];thensh$script$idrac_ip$modeelif["`basename$script`"=="all.sh"];thensh$script$idrac_ip$mode$raid_levelelsesh$script$idrac_ip$raid_levelfi}functionSEQ{egrep-v'^#|^$'$idrac_file|grep'[^[:digit:]].*-'|whilereadidracs;doprefix=`echo$idracs|awk-F'[.-]''{print$1"."$2"."$3}'`begin=`echo$idracs|awk-F'[.-]''{print$4}'`end=`echo$idracs|awk-F'[.-]''{print$5}'`foriin`seq${begin}${end}`;do{idrac_ip=${prefix}.$iShExec}&donewaitdone}functionNOSEQ{egrep-v'^#|^;|^$'$idrac_file|grep'^[[:digit:]].*$'|whilereadidracs;do{idrac_ip=`echo$idracs|awk'{print$1}'`ShExec}&waitdone}case$menu_ipseqin1)SEQ;;2)NOSEQ;;*)echo"usage:error,pleasecheckscript!"esacover=`date+%s`echo"usedtime:`expr$over-${start}`s"
2.hosts文件内容,初步定义如下。
#网卡编号NIC_NUM:1#需转换的硬盘模式mode:all_raid#RAID级别RAID:5#IDRACIP列表192.168.1.1-10
3.README文档介绍
一、脚本运行格式:shrun.sh然后根据需求选择需执行的操作##########pleaseoptionyourchoice:[1-10]############(1)GetserverNICmac-address(2)Removeallorthevirtualdiskotherthanthesystemdisk(3)PhysicalDiskmodeconvert(4)Createraid1orraid5(5)Addidracuser(JPush)andchangerootpasswd(6)BiosdisableF1/F2errotpromptandsetupHDDfirstboot(7)checksystembootseq(8)Restoretherootdefaultpassword(9)rebootsystem(10)Newserverraid、biosinit(99)Executethecommandmanually########################################################二、执行脚本选项说明1.获取服务器网卡的mac-address2.根据需求删除所有虚拟磁盘或保留除系统盘的其它所有虚拟磁盘(机器转hadoop业务或出厂阵列不规划时应用)3.硬盘(包含SSD)在直通和raid模式间转换。4.创建raid1或raid5。5.添加idrac用户、更改及恢复默认root用户密码。6.更改BIOS(禁用F1、硬盘第一引导)7.检查系统第一启动项8.还原IDRACroot用户密码为calvin9.通过IDRAC强行重启服务器10.把阵列清除、阵列创建、BIOS更改封装在一个脚本(阵列创建格式同选项4)99.执行传递的idrac命令三、hosts文件填写规范1.NIC_NUM后的数字表示第几块网卡,电口用网口3或4进行PXE安装,光口用网口1或2进行PXE安装2.硬盘模式:[all_raid|hdd_raid|hdd_jobd|ssd_raid|ssd_jobd](脚本会执行机器重启操作)书写格式:mode和”硬盘模式“间必须有空格。例:[mode:hdd_raid]或[modehdd_raid]均可。all_raid:所有硬盘都转换为RAID模式hdd_raid:除2块558G系统盘外,所有HDD磁盘转换为RAID模式hdd_jobd:除2块558G系统盘外,所有磁盘转换为直通模式ssd_raid:所有SSD磁盘转换为RAID模式ssd_jobd:所有SSD磁盘转换为直通模式3.阵列类型:[1|5]RAID5说明:方式一:有2块558G左右盘做sda,其余HDD做sdb方式二:所有HDD大小一样,划分300G做sda,剩下做sdb。两种方式都会判断是否有SSD)硬盘模式说明(脚本会执行机器重启操作):4.IDRACIP书写格式:方式一:192.168.1.1-10方式二:192.168.1.1192.168.1.2192.168.1.3
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。