Cobbler是一个快速网络安装linux的服务,而且在经过调整也可以支持网络安装windows。该工具使用python开发,小巧轻便(才15k行代码),使用简单的命令即可完成PXE网络安装环境的配置,同时还可以管理DHCP,DNS,以及yum包镜像。
Cobbler支持命令行管理,web界面管理,还提供了API接口,可以方便二次开发使用。
和Kickstart不同的是,使用cobbler不会因为在局域网中启动了dhcp而导致有些机器因为默认从pxe启动在重启服务器后加载tftp内容导致启动终止。
cobbler的安装部署配置
环境准备:
1、安装epel
rpm -Uvh 'http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm'
2、安装dhcp服务
yum -y install dhcp
3、其他服务的安装
额外需要的服务还有tftp,rsync,xinetd,httpd。所以如果安装系统的时候如果这几个包没装上,请手动安装。
4、关闭selinux
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config
关闭后最好重启一下,让selinux的设置生效
cobbler安装配置
1、cobbler安装
yum -y install cobbler
2、cobbler的配置
启动cobbler
# /etc/init.d/cobblerd start
启动httpd服务
# /etc/init.d/httpd start
检查配置,执行
cobbler check
检查后会出现类似于这样的日志
主要的修改:
1,编辑/etc/cobbler/settings文件,找到 server选项,修改为适当的ip地址,本实例配置ip为:192.168.10.1
2,编辑/etc/cobbler/settings文件,找到 next_server选项,修改为适当的ip地址,本实例配置ip为:192.168.10.1
3,SELinux的设置。如果上面已经关闭了SELinux就不用管了
4,执行 cobbler get-loaders,系统将自动下载loader程序,完成提示4的修复工作。
5,编辑/etc/xinetd.d/tftp文件,将文件中的disable字段的配置由yes改为no
6,编辑/etc/xinetd.d/rsync文件,将文件中的disable字段的配置由yes改为no
7,在iptables中将69,80,25151端口打开。如果仅仅只是在内部环境中使用,建议直接将防火墙关掉
8,提示说debmirror没安装。如果不是安装 debian之类的系统,此提示可以忽略,如果需要安装,下载地址为:http://rpmfind.net/linux/rpm2html/search.php?query=debmirrorCentOS 6使用RHEL 5的包就可以。
9,修改cobbler用户的默认密码,可以使用如下命令生成密码,并使用生成后的密码替换/etc/cobbler/settings中的密码。生成密码命令:openssl passwd -1 -salt 'random-phrase-here' 'your-password-here'其中“random-phrase-here”为干扰码
所有提示全部fix之后,执行
/etc/init.d/cobblerd restart
cobbler的使用
1、导入系统镜像
cobbler import --path=/mnt --name=rhel6.1_x86_64
cobbler会将镜像中的拷贝到本地一份,放在/var/www/cobbler/ks_mirrors下的rhel6.1_x86_64目录下。同时会创建一个名字为rhel6.1_x86_64的一个发布版本,以及一个名字为rhel6.1_x86_64的profile文件,次路径可以作为今后的yum源使用
2、配置dhcp
首先修改cobbler配置,让cobbler来管理dhcp服务,编辑文件/etc/cobbler/settings
manage_dhcp: 1
接下来修改/etc/cobbler/dhcp.template,此文件是cobbler管理dhcp的模板
对于此文件,本例中只需要修改如下部分
subnet 192.168.10.0 netmask 255.255.255.0 {
option routers 192.168.10.1;
option domain-name-servers 8.8.8.8;
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.10.100 192.168.10.254;
filename                   "/pxelinux.0";
default-lease-time         21600;
max-lease-time             43200;
next-server                $next_server;
}
其余部分维持默认值即可。
到目前为止,全部的准备工作已经就算全部完成,接下来要做的就是启动服务了。在之前的调试过程中,很多服务已经启动过了,这里只需要启动xinetd服务即可:
/etc/init.d/xinetd start
同步cobbler配置
执行
cobbler sync
cobbler会自动进行初始化工作,移除已经存在的启动项,然后根据模板拷贝loader文件。之后再生成pxe的配置文件,生成dhcp的配置文件,最后再重启dhcp服务。
3、设置profile
profile可以理解为按角色进行分类。
cobbler profile add --name=webserver --distro= rhel6.1_x86_64 kickstart=/var/lib/cobbler/kickstarts/webserver.ks
cobbler的ks 文件默认都放在/var/lib/cobbler/kickstarts/下面 可以根据不同的需求定制ks文件
ks文件实例
#platform=x86, AMD64, or Intel EM64T
# System authorization information
auth --useshadow --enablemd5
# System bootloader configuration
bootloader --location=mbr
# Partition clearing information
clearpart --all --initlabel
# Use text mode install
text
# Firewall configuration
firewall --enabled
# Run the Setup Agent on first boot
firstboot --disable
# System keyboard
keyboard us
# System language
lang en_US
# Use network installation
url --url=$tree
# Reboot after installation
reboot
#Root password
rootpw --iscrypted $default_password_crypted
# SELinux configuration
selinux --disabled
# Do not configure the X Window System
skipx
# System timezone
timezone Asia/Shanghai
# Install OS instead of upgrade
install
# Clear the Master Boot Record
zerombr
# Allow anaconda to partition the system as needed
clearpart --all --initlabel
part /boot --fstype=ext4 --size=256
part swap --size=1024
part / --fstype=ext4 --size=10240
part /data --fstype=ext4 --grow --size=200
%packages
@base
@core
%end
%post
mkdir /data/sh
mkdir /data/applogs
mkdir /data/appbak
与kickstart的ks文件不太一致,可以根据不同的业务需求编写不同的ks文件,以便快速的部署应用到服务器
到此就可以安装系统了
与kickstart不同的是可以选择所需的操作系统安装可以多制定一些profile

转载于:https://blog.51cto.com/liyingjie/1160264

运维自动化之Cobbler安装配置相关推荐

  1. 品运维自动化之cobbler的安装序

    品运维自动化之cobbler的安装序 品茶提示: 1.安装如遇错误,请查看错误报告收集. 2.如遇文章出现错误之处请指出并回复以便帮助更多的朋友,或者发邮件至zwhset@163.com,我将定期回复 ...

  2. 运维自动化工具Cobbler之——安装实践

    运维自动化工具--Cobbler实践 第1章 About Cobbler 1.1 Cobbler Introduction Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的 ...

  3. 运维自动化之 Cobbler 系统安装使用详解

    一.简介 Cobbler是一个快速网络安装linux的服务,而且在经过调整也可以支持网络安装windows.该工具使用python开发,小巧轻便(才15k行python代码),使用简单的命令即可完成P ...

  4. Linux 运维自动化之Cobbler实战案例

    大纲 一.前言 二.Cobbler 工作原理详解 三.Cobbler 常用命令汇总 四.Cobbler 各种目录说明 五.自定义Kickstart文件详解 六.Cobbler 实战案例安装CentOS ...

  5. 自动化运维系列之Cobbler (资源)

    2019独角兽企业重金招聘Python工程师标准>>> 下图为开源自动化运维体系链: 1.cobbler实现自动装机 2.saltstack实现工程自动化配置 3.kubernete ...

  6. 自动化运维工具ansible(安装与模块介绍)

    自动化运维工具ansible(安装与模块介绍) 一.ansible运维工具概述 (一).ansible的特点 (二).ansible的原理 (三)ansible的优点 二.安装ansible 三.an ...

  7. 自动化运维工具ansible的安装管理以及模块介绍

    自动化运维工具ansible的安装管理以及模块介绍 目录 自动化运维工具ansible的安装管理以及模块介绍 一.ansible概述 1.几种常用运维工具比较 2.Ansible简介 3.Ansibl ...

  8. 【Python自动化运维】Python环境安装及基础语法

    [Python自动化运维]Python环境安装及基础语法 1. Python环境安装 2. Python基础语法 1. Python环境安装   pyenv官方安装手册:https://github. ...

  9. 第19章,运维自动化之系统安装

    更多内容请点击: Linux学习从入门到打死也不放弃,完全笔记整理(持续更新,求收藏,求点赞~~~~) https://blog.51cto.com/13683480/2095439 第19章,运维自 ...

最新文章

  1. 算法时间复杂度求解法【详细过程说明】
  2. Eclipse删除文件的恢复(转)
  3. WIKI 开发工具网站收藏
  4. MPAndroidChart的具体属性方法
  5. HDU 4616 Game 树形DP
  6. CSS中的三种样式来源:创作人员、读者和用户代理
  7. Delphi运算符及优先级
  8. leetcode 123. 买卖股票的最佳时机 III(dp)
  9. 信道效率以及信道的吞吐率
  10. python坐标系建立_在python中创建坐标网格
  11. java微信内h5调起支付_java微信支付--------公众号内H5调起支付
  12. 你的广告能打几分?Kaggle需求预测挑战赛冠军方案这样做丨教程
  13. uni-app 引用地图
  14. excel生成多个sheet .net
  15. unity 2d文字跟随主角移动_太可了!这些领域可以把Unity玩的那么好,带你开启新世界...
  16. 精度LiDAR-Monocular Visual Odometry
  17. 【论文阅读】【BMVC2018】BAM: Bottleneck Attention Module
  18. excel合并两列内容_EXCEL数据合并、批量添加内容知识,高手嫌弃,新手太需要...
  19. Latex表格制作记录
  20. mysql存储指纹,mysql - ZKTeco 4500指纹验证 - 堆栈内存溢出

热门文章

  1. GitHub的AI程序员“抄袭”算法大神代码,连原版注释都抄上了
  2. 二次元妹子五官画风都能改,周博磊团队用无监督方法控制GAN | CVPR 2021
  3. “基础数学没用”,百年名校要裁撤数学系补贴AI研究,4000多学者联合抗议
  4. 明略科技完成2亿美元E+轮融资,中俄投资基金领投,腾讯、弘卓资本等跟投
  5. 中国最新奥数竞赛成绩出炉:南师大附中女生严彬玮满分夺冠!60人国家集训队名单公布...
  6. 谷歌人为干预搜索结果被曝光:增加大公司曝光,主动营造岁月静好
  7. Python常见编译错更新
  8. TypeScript基础入门 - 接口 - 继承接口
  9. 【Linux使用技巧】linux 死机了怎么办
  10. JavaScript获取iframe中form表单中元素的值