dell服务器管理口ip地址_批量自动化配置Dell服务器idrac管理口IP
背景说明
工作中经常会遇到一次上几十台、几百台服务器的情况
每当到这个时候小伙伴们拿台笔记本和一根网线,一台服务器、一台服务器的去修改idrac IP
为了节约这个工作量,利用dell的racadm工具,写了下面这个脚本。只要运行起这个脚本,后面要做的就只是插拔网线的工作
安装racadm工具包
[root@localhost ~]# curl -s http://linux.dell.com/repo/hardware/dsu/bootstrap.cgi | bash
[root@localhost ~]# yum -y install srvadmin-all
准备工作
在采购时dell会提供一份服务器的sn列表,会根据这个列表规划好每台服务器的idrac IP,我们可以将此转换成以逗号分隔的CSV文件如下:
[root@localhost ~]# cat idrac_ip_list
AAAAAAA,10.10.10.2,255.255.255.0,10.10.10.1
BBBBBBB,10.10.10.3,255.255.255.0,10.10.10.1
脚本
[root@localhost ~]# cat set_idrac_ip.sh
#!/usr/bin/env bash
# @Author : Eric Winn
# @Email : eng.eric.winn@gmail.com
# @Time : 2018-07-27 14:47
# @Version : 1.0
# @File : set_idrac_ip
# @Software : PyCharm
# the file of idrac
idrac_ip_list_file=${1}
if [ ! -f "${idrac_ip_list_file}" ]; then
echo "idrac_ip_list_file is not found!!!!"
echo "$0 [idrac_ip_list_file]"
exit 127
fi
# idrac Default infomation
idrac_default_ip=${2:-192.168.0.120}
idrac_default_user=${3:-root}
idrac_default_pass=${4:-calvin}
# racadm bin
racadm_bin=/opt/dell/srvadmin/sbin/racadm
# install check
srvadmin_install="curl -s http://linux.dell.com/repo/hardware/dsu/bootstrap.cgi | bash\nyum -y install srvadmin-all"
test ! `ls ${racadm_bin} 2> /dev/null` && printf "Please run these commands as root to install racadm.\n\e[1;31m${srvadmin_install}\e[0m\n" && exit 1
RACADM="${racadm_bin} -r $idrac_default_ip -u $idrac_default_user -p $idrac_default_pass"
# idrac history
idrac_sn_history=()
# idrac set
set_idrac_ip(){
# get SN
sn=`${RACADM} get BIOS.SysInformation.SystemServiceTag |grep SystemServiceTag |awk -F '=' '{print $2}'`
if [ "${sn}s" == "s" ]; then
echo "Get idrac sn is field!"
return 1
fi
# We only need the first 7 characters
sn=${sn:0:7}
echo "sn ======> ${sn}"
for h_sn in ${idrac_sn_history[*]}
do
if [ "$h_sn" == "${sn}" ]; then
echo "The ${sn} is already set."
return 0
fi
done
# get new idrac_net from idrac_ip_list_file
new_idrac_net=(`grep ${sn} $idrac_ip_list_file|awk -F ',' '{print $2,$3,$4}'`)
if [ "${new_idrac_net}s" == "s" ]; then
echo "The ${sn} is not in the ${idrac_ip_list_file}"
return 1
fi
echo "Setting the new ip: ${new_idrac_net[*]}"
# set idrac ip
${RACADM} setniccfg -s ${new_idrac_net[*]} | grep successfully
if [ $? -eq 0 ]; then
idrac_sn_history=(${idrac_sn_history[*]} ${sn})
return 0
else
echo "Set is field!"
return 1
fi
}
# check internet
check_internet() {
pings=""
echo -e "Connecting ...\c"
while [ "${pings}s" == "s" ]
do
pings=`ping -c 2 $idrac_default_ip |awk 'NR==6 {print $4}'`
if [ "${pings}s" == "s" ]; then
echo -e ".\c"
else
echo
fi
done
return 0
}
# main function
main() {
while true
do
check_internet
if [ $? -eq 0 ]; then
echo "Let's starting set"
set_idrac_ip
if [ $? -eq 0 ]; then
echo
echo "Now , Please change to a new server"
sleep 5
else
echo
echo "Please check it."
sleep 15
fi
fi
done
}
main
运行
注:后面的idrac_ip是csv文件名
[root@localhost ~]# sh set_idrac_ip.sh idrac_ip
Connecting ...
Let's starting set
sn ======> AAAAAAA
Setting the new ip: 10.10.10.2 255.255.255.0 10.10.10.1
Static IP configuration enabled and modified successfully
Now , Please change to a new server
dell服务器管理口ip地址_批量自动化配置Dell服务器idrac管理口IP相关推荐
- 批量自动化配置Dell服务器idrac管理口IP
背景说明 工作中经常会遇到一次上几十台.几百台服务器的情况 每当到这个时候小伙伴们拿台笔记本和一根网线,一台服务器.一台服务器的去修改idrac IP 为了节约这个工作量,利用dell的racadm工 ...
- 不同域里相同ip地址_不同的人可能具有相同的公共IP地址吗?
不同域里相同ip地址 For the most part, all of us are used to having a unique public IP address, but what do y ...
- js获取域名ip地址_插件分享 | 可在线查询子域名和同IP域名的RapidDNS
前言:https://RapidDNS.io 是一个秒级在线子域名和同IP域名的查询工具.目前拥有25亿条DNS记录,支持A.AAAA.CNAME.MX4种DNS记录类型.由于Goby程序对子域名收集 ...
- 北京dns服务器ip地址_什么是DNS? 域名系统,DNS服务器和IP地址概念介绍
北京dns服务器ip地址 介绍 (Introduction) By the end of this article, you should have a better understanding of ...
- 联想服务器imm默认地址_命令下配置ip地址
一.添加 IP 地址及默认网关 (是添加,要重设或更新原来IP的请看第三点) netsh interface ip add address 用法 : add address [name=] [[add ...
- 网站服务器的ip地址会变吗,网站的服务器变了 IP地址变吗
网站的服务器变了 IP地址变吗 内容精选 换一换 本文介绍通过华为云市场镜像"Drupal内容管理系统(LAMP)"搭建Drupal网站的方法.Drupal是使用PHP语言编写的开 ...
- 公有ip地址和私有ip地址_如何查找您的私有和公共IP地址
公有ip地址和私有ip地址 Each device on your network has a private IP address only seen by other devices on the ...
- 详细讲解电脑IP地址, 子网掩码, 默认网关 和 DNS服务器等
以Windows系统中IP地址设置界面为参考(如图1), IP地址, 子网掩码, 默认网关 和 DNS服务器, 这些都是什么意思呢? 一 IP地址 概述 计算机要实现网络通信,就必须要有一个用于快 ...
- linux设置静态ip地址_什么是静态IP地址,与动态IP地址比较以及如何为Windows和Linux设置?...
linux设置静态ip地址 IP addresses are the core mechanism of Computer networks. The IP address is used to sp ...
最新文章
- sublime python3 输入换行不结束
- WINCE开机显示logo之前先显示白屏的问题
- codevs 1283 等差子序列
- Java字符串替换前缀,从Bash中的字符串中删除固定的前缀/后缀
- day_01 解析简单的程序
- 不再为无限级树结构烦恼,且看此篇
- 谈SQL SERVER数据库中的索引
- 【Django 2021年最新版教程14】session是什么 如何使用
- UiPath视频教程
- STM32 rtc唤醒 低功耗待机模式 避免iwdog看门狗方案
- Hello软件项目相关功能测试点
- 桥本木分式(使用回溯法求解)
- Linux Kubuntu 良心输入法
- C语言基础入门,编程的第一步
- Ubuntu启用IPv6上google的方法
- 服务器和交换机物理连接_什么是路由器交换机?路由器交换机说明!
- JavaScript - 核心语法学习
- LeetCode 720. 词典中最长的单词
- rtx腾讯通服务器修改ip,如何修改rtx服务器地址
- 从角雷达到前向雷达,中国厂商如何加速突围?