powercli修改esxi主机名_python脚本批量更改ESXI主机名,DNS

#!/bin/env python

import paramiko,time,sys

###IP list###

f=open("iplist.txt",'r')

#######user  and  passport#####

username="root"

passw="passport"

#############################

#############input  CMD######

cmd=['esxcli system hostname set --domain esxi.com','esxcli network  ip  dns  server add  -s 1

92.168.7.40']

#############################

list=[]

for i in f:

list.append(i)

f.close()

def ssh2(ip,username,passwd,cmd):

s=paramiko.SSHClient()

s.set_missing_host_key_policy(paramiko.AutoAddPolicy())

try:

s.connect(ip,22,username,passwd,timeout=5)

stdin,stdout,stderr=s.exec_command(cmd)

for i in stdout.readlines():

print i,

s.close()

except:

print "username:%s\npasspw:%s\nIP:%s"%(username,passwd,ip),

print "passwd or username error"

return

def main():

if len(sys.argv) < 2 or sys.argv[1]!="start":

print "%s need start"% sys.argv[0]

sys.exit(-1)

else:

for i in list:

print i

l=i.split('.')

hostname="esxcli system hostname set --host  esx"+l[2]+"-"+l[3]

cmd.append(hostname)

for c in cmd:

print c

ssh2(i,username,passw,c)

time.sleep(1)

if __name__ == "__main__":

main()

由于ESXI 不能使用ssh 密钥登陆,所以通过python 脚本paramiko实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值