您的位置:首页 > 运维架构 > Linux

cobbler部署centos7

2016-06-12 23:32 676 查看
1.基于epel源yum安装cobbler, 配置epel源可参见

http://blog.csdn.net/celeste7777/article/details/48528161

yum -y install cobbler tftp-server dhcp httpd


2.启动cobbler并配置,启动cobbler之前需要启动httpd,否则会报错error: [Errno 111] Connection refused

[root@controller ~]# systemctl start httpd
[root@controller ~]# systemctl start cobblerd


3.检查cobbler配置



按提示解决相关报错

vim /etc/cobbler/settings 将server的值要设置为可以与外部主机通信的值而非localhost

启动PXE功能,vim /etc/cobbler/settings将next_server值设置为tftp服务器的IP,同上



由于cobbler需要面向主机提供各种不同发行版OS的安装,bootloader各不相同,因此必须为各个版本提供好bootloader,执行下图命令


[root@controller ~]# systemctl enable rsyncd

[root@controller ~]# systemctl start rsyncd


debian安装用,暂时可以不管;如果需要安装,下载地址为:

http://rpmfind.net/linux/rpm2html/search.php?query=debmirror

[root@controller ~]# yum install pykickstart -y


vim /etc/cobbler/settings将default_password_crypted修改为下图随机生成加密的密码



安装cam和fance-agents来实现电源管理

[root@controller ~]# yum install cman fence-agents -y
[root@controller ~]# cobbler sync


4.将dhcp和tftp交给cobbler托管,启动dhcpd和tftp

vim /etc/cobbler/settings将manange_dhcp,manager_tftpd的值设置为1,本例中manager_rsync,manager_dns的值为0

[root@controller ~]# cat /etc/dhcp/dhcpd.conf

ddns-update-style interim;

allow booting;
allow bootp;

ignore client-updates;
set vendorclass = option vendor-class-identifier;

option pxe-system-type code 93 = unsigned integer 16;

subnet 192.168.1.0 netmask 255.255.255.0 {
option routers             192.168.1.5;
option domain-name-servers 192.168.1.1;
option subnet-mask         255.255.255.0;
range dynamic-bootp        192.168.1.100 192.168.1.254;
default-lease-time         21600;
max-lease-time             43200;
next-server                192.168.1.105;
class "pxeclients" {
match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
if option pxe-system-type = 00:02 {
filename "ia64/elilo.efi";
} else if option pxe-system-type = 00:06 {
filename "grub/grub-x86.efi";
} else if option pxe-system-type = 00:07 {
filename "grub/grub-x86_64.efi";
} else {
filename "pxelinux.0";
}
}
group {
}
[root@controller ~]# systemctl  start tftp
[root@controller ~]# systemctl  start dhcpd


5.定义distro

至此cobbler环境基本配置完成,接下来定义distro,可以通过为其指定外部的安装引导内核及ramdisk文件的方式实现,也可以选择导入安装树,本例中将ISO镜像挂载到当前系统某个目录,使用import导入,而非使用外部内核和init文件

[root@controller ~]# mount /dev/cdrom /media -r
[root@controller ~]# cobbler import -h


此处使用CentOS-7-x86_64-Minimal-1511.iso,如果镜像较大,导入会比较耗时

[root@controller ~]# cobbler import --name="centos-7_x86_64" --path=/media


导入完成可查看/var/www/下新增了一个cobbler目录,通过浏览器访问查看文件输出



6.制作kickstart文件

每一个profile必须要继承自Distribution,从而得知如何进行安装,安装的版本等。一个profile实现安装过程需要依赖yum源(在kikstart中配置),由于下载带宽有限,可以选择镜像的方式将其复制在本地。本例中使用root用户家目录下的anaconda-ks.cfg(系统安装过程中自动生成)作为样版文件,在此基础上进行编辑修改

[root@controller ~]# yum install system-config-kickstart
[root@controller ~]# system-config-kickstart




7.定义profile,profile将出现在PXE引导菜单中作为安装的选择之一



[root@controller ~]# cobber profile add -h
[root@controller ~]# cobbler profile add --name=centos7_x86_64_min --distro=centos-7-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos7_x86.cfg


导入完成后,列出当前系统的profile,其中centos-7-x86_64为定义distro时自动生成的profile,没有为其指定kickstart,因此可以使用以下命令删除,执行cobbler sync同步所有配置



[root@controller ~]# cobbler profile remove --name=centos-7-x86_64


测试能否引导启动



参考文章

http://os.51cto.com/art/201405/439670.htm

http://os.51cto.com/art/201008/218652.htm
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  centos7 cobbler