设为首页 收藏本站
查看: 759|回复: 0

[经验分享] cobbler 安装搭建,详细

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-1-5 08:39:16 | 显示全部楼层 |阅读模式
一、 cobbler安装准备 1. 关闭iptables与selinux
1 # chkconfig iptables off
2 # vi /etc/selinux/config
SELINUX=disabled
2. 安装源准备并安装cobbler软件
说明:基础源与epel源。
(要装32位机器可以打开网页选择合适的epel源)

yum -y install cobbler cobbler-web httpd rsync tftp-server xinetd dhcp python-ctypes debmirror pykickstart fence-agents

二、 配置tftp-server与rsync
开启tftp与rsync服务

sed -i '/disable/c disable = no' /etc/xinetd.d/tftp
sed -i -e 's/= yes/= no/g' /etc/xinetd.d/rsync
把/etc/xinetd/tftp 和/etc/xinetd/rsync 中的disable选项中的yes改成no。

三、配置cobbler 1. 配置httpd配置文件
# vi /etc/httpd/conf/httpd.conf
ServerName 127.0.0.1:80
ServerName  localhost:80
2. 配置cobbler主配置文件
1 sed -i 's/next_server: 127.0.0.1/next_server: 192.168.1.10/g' /etc/cobbler/settings
2 sed -i 's/server: 127.0.0.1/server: 192.168.1.10/g' /etc/cobbler/settings
3 sed -i 's/manage_dhcp: 0/manage_dhcp: 1/g' /etc/cobbler/settings
4 sed -i 's/manage_rsync: 0/manage_rsync: 1/g' /etc/cobbler/settings
修改/etc/cobbler/settings 这个配置文件里面的内容,把server:127.0.0.1 把IP改成自己的IP地址,把next_server 里面的地址也改成自己的地址。那manage_dhcp和manage_rsync后面的0改成1

3. 配置cobbler web登录认证配置文件 (1) 修改认证文件
sed -i 's/module = authn_denyall/module = authn_configfile/g' /etc/cobbler/modules.conf
module = authn_configfile /修改认证方式为密码文件类型
(2) 设置用户名密码
htdigest /etc/cobbler/users.digest "Cobbler" cobbler
账号就是cobbler密码会提示自己输出
4. 生成Cobbler安装系统root初始密码 (1)这里生成密钥和配置默认密钥,ks文件引用
# openssl passwd -1 -salt 'random-phrase-here' '111111'
$1$random-p$WbZ3JxhRzCS/1Ne4S9g4Z.
2) 将上面的加密串加入cobbler配置文件中。
# vi /etc/cobbler/settings
# 修改为如下配置
default_password_crypted: "$1$random-p$WbZ3JxhRzCS/1Ne4S9g4Z."

四、配置DHCP与启动cobbler相关服务
# mv /etc/cobbler/dhcp.template /etc/cobbler/dhcp.template.bak
# vi /etc/cobbler/dhcp.template
ddns-update-style interim;
allow booting;
allow bootp;
ignore client-updates;
set vendorclass = option vendor-class-identifier;
subnet 192.168.1.0 netmask 255.255.255.0 {
option routers 192.168.1.1;
option domain-name-servers 202.100.192.68;
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.1.120 192.168.1.254;
filename "/pxelinux.0";
default-lease-time 21600;
max-lease-time 43200;
next-server $next_server;
}
注: 不要修改/etc/dhcpd.conf 这个文件,过会我们会配置让cobbler接管启动dhcpd的任务,cobbler会把你修改的dhcp.template拷贝到/etc/dhcpd.conf
2. 需要启动的服务
chkconfig httpd on
chkconfig xinetd on
chkconfig dhcpd on
chkconfig cobblerd on
service httpd start
service xinetd start
service dhcpd start
service cobblerd start

五、效验cobbler安装条件 1. 修复cobbler check时出现的第一条错误信息 根据提示依依排错2. 修复debian/ubuntu系统安装选项支持包
# vi /etc/debmirror.conf
说明:前提是安装debmirror pykickstart这两个包,注释掉如下两行。
#@dists="sid";
#@arches="i386";
3. cobbler check效验环境
[iyunv@pxe ~]# cobbler check
The following are potential configuration items that you may want to fix:
1 : service dhcpd is not running
Restart cobblerd and then run 'cobbler sync' to apply changes.

4. 按上文校验提示操作修复
运行cobbler sync
直到出现*** TASK COMPLETE ***算成功
说明:本节在前面已经考虑过cobbler check的错误提示了,大部分处理了。
5. 重启cobblerd 与xinetd服务
service cobblerd restart
service xinetd restart
六、导入linux ISO安装镜像1. 挂载ISO光盘镜像
# mount /dev/cdrom /mnt
2. 开始导入光盘镜像
# cobbler import --path=/mnt --arch=x86_64 --name=Centos-5.9
执行这条命令
task started: 2013-12-15_193916_import
task started (id=Media import, time=Sun Dec 15 19:39:16 2013)
running: createrepo -c cache -s sha --groupfile
processing repo at : /var/www/cobbler/ks_mirror/Centos-5.9-x86_64
need to process repo/comps: /var/www/cobbler/ks_mirror/Centos-5.9-x86_64
looking for /var/www/cobbler/ks_mirror/Centos-5.9-x86_64/repodata/*comps*.xml
*** TASK COMPLETE ***
出现这个算成功
说明: cobbler将镜像拷贝一份放在/var/www/cobbler/ks_mirrors/CentOS-5.9-x86_64目录下。   
同时会创建一个名字为CentOS-5.9-x86_64的一个发布版本,以及一个名字为CentOS-5.9-x86_64的profile文件。

用cobbler list查看
七、修改安装更改kickstart文件 1. 相关知识内容
说明:   
默认kickstart文件是/var/lib/cobbler/kickstarts/sample_end.ks,需要手动为每个发行版单独指定, 或单独修改。
2. 手动创建自定义新的kickstart文件
vi /var/lib/cobbler/kickstarts/centos-5.9.ks
可以先把默认的拷贝一份改个名字。然后根据需求进行编辑
install
text
lang zh_CN.UTF-8
keyboard us
reboot
url --url=http://192.168.1.10/cobbler/ks_mirror/Centos-5.9-x86_64
network --device eth0 --bootproto dhcp --noipv6 --hostname oa
rootpw --iscrypted $1$H0bnNoWM$HE1R/mWv6LqbhUGI8Xw/t.
firewall --disabled
authconfig --enableshadow --enablemd5
selinux --disabled
timezone Asia/Shanghai
bootloader --location=mbr --driveorder=sda --append="rhgb quiet"
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
clearpart --all --initlabel
part /boot --fstype ext3 --size=200 --asprimary
part swap --size=2048
part / --fstype ext3 --size=200 --grow
%packages
@admin-tools
@base
@chinese-support
@core
@development-libs
@development-tools
@dialup
@editors
@gnome-desktop
@games
@graphical-internet
@graphics
@java
@legacy-software-development
@legacy-software-support
@office
@printing
@sound-and-video
@text-internet
@base-x
system-config-kickstart
kexec-tools
iscsi-initiator-utils
fipscheck
squashfs-tools
device-mapper-multipath
sgpio
imake
emacs
libsane-hpaio
xorg-x11-utils
xorg-x11-server-Xnest
xorg-x11-server-Xvfb
%post
service sendmail stop
3. 配置yum源
base、updates库使用163的repo源并增加EPEL库
base
cobbler repo add --name=centos5.8-x86_64-Base --mirror=http://mirrors.163.com/centos/5/os/x86_64/
将定义的仓库大写名字Base修改为小写base
cobbler repo edit --name=centos5.8-x86_64-base --mirror=http://mirrors.163.com/centos/5/os/x86_64/ --arch=x86_64 --breed=yum
updates
cobbler repo add --name=centos5.8-x86_64-updates --mirror=http://mirrors.163.com/centos/5/updates/x86_64/ --arch=x86_64 --breed=yum
添加EPEL仓库
cobbler repo add --name=centos5.8-x86_64-epel --mirror=http://mirrors.ustc.edu.cn/epel/5/x86_64/ --arch=x86_64 --breed=yum
6.3 同步yum仓库内容到本地
时间较长,注意磁盘容量是否满足。
cobbler reposync
task started: 2013-03-26_111553_reposync
task started (id=Reposync, time=Tue Mar 26 11:15:53 2013)
hello, reposync
run, reposync, run!
creating: /var/www/cobbler/repo_mirror/centos5.8-x86_64-updates/.origin/centos5.8-x86_64-updates.repo
running: /usr/bin/reposync -l -m -d --config=/var/www/cobbler/repo_mirror/centos5.8-x86_64-updates/.origin/centos5.8-x86_64-updates.repo --repoid=centos5.8-x86_64-updates --download_path=/var/www/cobbler/repo_mirror -a x86_64
………………略…………………………
received on stdout:
received on stderr:
*** TASK COMPLETE ***
6.4 repo添加到profle,
安装系统时会自动添加仓库配置
cobbler profile edit --name=centos5.8-x86_64 --repos="centos5.8-x86_64-base centos5.8-x86_64-epel centos5.8-x86_64-updates" --distro=centos5.8-x86_64  --kickstart=/var/lib/cobbler/kickstarts/centos5u8-x64.cfg
6.4 删除仓库配置
cobbler repo remove  --name=centos5.8-x86_64- updates
6.5 添加更新仓库源计划任务
cobbler reposync --tries=3 --no-fail

加入crontab 每周日更新一次即可
echo  "0 2  * *  0 cobbler reposync --tries=3 --no-fail" >> /var/spool/cron/root

注意检查crond是否启动
/etc/init.d/crond status
crond is stopped
/etc/init.d/crond start
Starting crond:                                            [  OK  ]
chkconfig crond on  
6.6 装机自动配置yum
如果你想安装系统时自动配置yum,请进行以下配置。
vim /etc/cobbler/settings
yum_post_install_mirror: 1
在装机脚本ks文件加入以下内容
%post
# Start yum configuration
$yum_config_stanza
# End yum configuration

3.修改profile指定新的KS启动文件,按角色进行分类
说明   
1. 选择Centos-5.9-x86_64,将采用Centos-5.9-x86_64安装源,并通过/var/lib/cobbler/kickstarts/centos-5.9.ks文件进行全自动安装。   
2. 如有其它发行版,导入完镜像后,可以通过以下方式进行修改,否则将采用默认KS进行安装系统。   
3. 也可以采用不同的ks文件来实现个性能自动安装,如下面第三条add命令,添加一个半自动的ks文件。   
4. 如果没有按下面内容修改指定ks文件的话,引导菜单只显示Centos-5.9-x86_64默认一项。指定ks文件后,会在启动菜单中显示。
1 # cobbler profile edit --name=Centos-5.9-x86_64 --distro=Centos-5.9-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos-5.9.ks
2 # cobbler profile edit --name=Centos-5.9-xen-x86_64 --distro=Centos-5.9-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos-5.9-xen.ks
3 # cobbler profile add --name=Centos-5.9-half-auto --distro=Centos-5.9-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos-5.9-halfauto.ks

4. 更改profile名称
# cobbler profile rename --name=Centos-5.9-x86_64 --newname=CentOS-5U9-x64
5. 删除profile配置,需要删除的profile名称为Centos-5.9-x86_64,删除后,安装启动菜单相关项消失。
# cobbler profile remove --name=Centos-5.9-x86_64

八、添加指定客户机系统配置到Cobbler
1. 指定一个网段使用特定的装机配置
cobbler system add --name=test_000 --ip=192.168.1.0/24 --profile=Centos-5.9-x86_64



2. 添加一个指定服务器的装机配置
指定服务器的mac地址,并设置好主机名、IP地址等信息,需要提示知道服务器MAC地址,根据MAC应用到具体机器上。
还可以指定ks参数。--kickstart=/var/lib/cobbler/kickstarts/webserver.ks
cobbler system add --name=test_001 --hostname=test_001 --mac=00:0C:29:E3:81:32 --interface=eth0 --ip-address=192.168.1.123 --subnet=255.255.255.0 --gateway=192.168.1.1 --static=1 --profile=Centos-5.9-x86_64

3. 修改system配置
机器IP地址变更为192.168.10.110  
cobbler system add --name=test_001 --ip=192.168.1.110
变更system配置名称
cobbler system rename --name=test001 --newname=abc
4. 删除system配置
需要删除的profile名称为test_001   
cobbler system remove --name=test_001
5. 查看定义的系统列表
cobbler system list
test_001
九、安装客户端操作系统 (1) 通过网卡pxe启动(2) 自动完成安装

十、重装客户端操作系统
rpm -ivh koan-1.6.6-1.el5.noarch.rpm
查看cobbler server上的配置文件,对于centos5.x 的系统koan不能采用yum安装,否则会因python版本过低而报错。

koan --server=192.168.1.10 --list=profiles
- looking for Cobbler at http://192.168.1.10/cobbler_api
downloading initrd initrd.img to /boot/initrd.img
url=http://192.168.1.10/cobbler/images/Centos-5.9-x86_64/initrd.img
downloading kernel vmlinuz to /boot/vmlinuz
url=http://192.168.1.10/cobbler/images/Centos-5.9-x86_64/vmlinuz
- ['/sbin/grubby', '--add-kernel', '/boot/vmlinuz', '--initrd', '/boot/initrd.img', '--args', '"ks=http://192.168.1.10/cblr/svc/op/ks/profile/Centos-5.9-x86_64 ksdevice=link kssendmac lang= text "', '--copy-default', '--make-default', '--title=kick1387098833']
- reboot to apply changes

reboot

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-40202-1-1.html 上篇帖子: Linux下部署svn服务 下篇帖子: Rsync+inotify实时同步笔记
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表