关于cobbler APi实现的装机平台
2016-08-05 08:46
609 查看
最近对于CMDB平台做了一次功能增加,把具体实现再往下细分就是:运维人员对设备申请,申请好之后跟网络部需要需要提前分配一个IP地址网段等等,然后通过从厂商获取的MAC地址号,咱们可以根据cobbler 的API实现一个装机方式,给主机分配好IP地址,装机完成之后再同步到咱们的CMDB平台:
前提条件是cobbler得安装完成,并且咱们提前写好ks文件,生成profile等等。接下来就是咱们运维平台,根据获取的MAC地址给服务器定义一个IP信息录入,然后定制安装操作系统即可:
第一步:添加主机分配IP,最主要是MAC地址:
第二步:默认刚开始添加的适合都是等待装机状态,当点击开始装机时候,后台根据MAC地址定义操作系统的profile和生成IP地址,这个时候装机状态就变成装机中,然后开启服务器电源执行装机即可:
第三步:启动虚拟机开始装机:
到此安装完成;装机状态可变成装机完成,这里实现的思路咱们可以这样,写一个脚本久不久去ping 这个刚刚分配的IP地址,等真正可以Ping通之后,可以向这个IP发送某条命令然后根据返回值就能判断是否已经完成装机操作。
不足,这里我没有运用ipmi的一些机制来完成,后面慢慢学习和补充,最后咱们跑一个初始化脚本,然后把生产的机器的资产信息,同步到咱们CMDB平台即可。
定制操作系统可以参考官方文档的system修改成如下的操作:
当然这个只是一个官方文档给出的例子做的小修改,咱们可以封装成一个class,包含cobble的定制操作系统即可;当然也可以针对cobbler专门做一个纯web开发,通过web界面生成ks文件,生成profile也是可以的,这里我减少开发的繁杂,ks文件生成profile文档等等。
zabbix视频可以查看:http://www.roncoo.com/details?cid=fb3050a5b34b42f39ccad83ebebc89c1
前提条件是cobbler得安装完成,并且咱们提前写好ks文件,生成profile等等。接下来就是咱们运维平台,根据获取的MAC地址给服务器定义一个IP信息录入,然后定制安装操作系统即可:
第一步:添加主机分配IP,最主要是MAC地址:
第二步:默认刚开始添加的适合都是等待装机状态,当点击开始装机时候,后台根据MAC地址定义操作系统的profile和生成IP地址,这个时候装机状态就变成装机中,然后开启服务器电源执行装机即可:
第三步:启动虚拟机开始装机:
到此安装完成;装机状态可变成装机完成,这里实现的思路咱们可以这样,写一个脚本久不久去ping 这个刚刚分配的IP地址,等真正可以Ping通之后,可以向这个IP发送某条命令然后根据返回值就能判断是否已经完成装机操作。
不足,这里我没有运用ipmi的一些机制来完成,后面慢慢学习和补充,最后咱们跑一个初始化脚本,然后把生产的机器的资产信息,同步到咱们CMDB平台即可。
定制操作系统可以参考官方文档的system修改成如下的操作:
[root@cobbler src]# cat cobbler_api.py #!/usr/bin/env python import xmlrpclib remote = xmlrpclib.Server("http://192.168.63.238/cobbler_api") token = remote.login("xiaoluo","123456") system_id = remote.new_system(token) remote.modify_system(system_id,"name","xiaoluo",token) remote.modify_system(system_id,"hostname","xiaoluo",token) remote.modify_system(system_id,'modify_interface', { "macaddress-eth0" : "00:50:56:2C:4C:56", "ipaddress-eth0" : "192.168.63.100", "Gateway-eth0" : "192.168.63.254", "subnet-eth0" : "255.255.255.0", "static-eth0" : 1, "dnsname-eth0" :"114.114.114.114" }, token) remote.modify_system(system_id,"profile","webserver",token) remote.save_system(system_id, token) ret = remote.sync(token) print ret
当然这个只是一个官方文档给出的例子做的小修改,咱们可以封装成一个class,包含cobble的定制操作系统即可;当然也可以针对cobbler专门做一个纯web开发,通过web界面生成ks文件,生成profile也是可以的,这里我减少开发的繁杂,ks文件生成profile文档等等。
zabbix视频可以查看:http://www.roncoo.com/details?cid=fb3050a5b34b42f39ccad83ebebc89c1
相关文章推荐
- 运维平台化Cobbler和ipmi实现自动化装机平台 推荐
- 关于用.Net平台开发SPMS_API开发接口里的PChar说明——转载
- 广告贴- - 关于dotnet平台上的osgi实现的可能性
- 利用视频云平台(API)实现教育视频预览和购买
- 关于微博服务端API的OAuth认证实现
- 关于微博服务端API的OAuth认证实现
- 关于SOA的思考4:SOA平台的实现原理
- 关于保利威视平台的API调用签名
- gbk/utf8/unicode编码转换,不依赖任何系统API自己实现与平台无关的转换算法
- Win32关于GDI 的API (Win32的API函数是微软自己的东西,可以直接在C#中直接调用,在做WinForm时还是很有帮助的。有时候我们之直接调用Win32 的API,可以很高效的实现想要)
- x86平台原子操作API的实现原理
- 关于实现B/S与C/S平台之间功能通用性的设计思路
- 关于微博服务端API的OAuth认证实现
- spring 的IoC的几种实现,关于API的一些事儿
- 调用API在Android平台下实现音视频通信
- 自己开发Blog博客程序:关于MetaWeblogAPI 的实现
- spring 的IoC的几种实现,关于API的一些事儿
- 【翻译加转载】自己开发Blog博客程序:关于MetaWeblogAPI 的实现
- 关于数据库自动化运维平台的设计及开发实现思路 推荐
- 关于Android 使用官方API 实现人脸检测功能