Linux之自动安装—Cobbler
在学习中,学了kickstart无人值守自动安装,觉得配置太繁琐,而且管理也不太方便。后面在看51
CTO的运维趋势的时候,发现了同样功能的新工具Cobbler(补鞋匠)。下面就说一说怎么利用Cobbler进行自动安装吧。
Cobbler安装及配置步骤
我参考了官网的Quickstart_Guide和1989丶的博客:使用Cobbler无人值守安装CentOS6.5(一)
安装前,请确认你的/var目录至少有10G左右可用空间。
一.安装Cobbler。
我使用yum工具安装的。命令如下:
[[email protected] ~]# yum install -y httpd cobbler tftp-server xinetd dhcp
配置yum源:若是Centos的系统,请直接拷贝阿里的yum源配置文件到本地/etc/yum.repos.d/目录下即可。yum源链接:http://mirrors.aliyun.com/repo/。
二.关闭selinux和防火墙。
若无特殊需要,可以关闭selinux和防火墙。
关闭selinux请编辑/etc/selinux/config文件,将SELINUX字段的值由enforcing改成disabled就可以了,不过要重启再生效的。
三.配置Cobbler。
Cobbler的配置文件是/etc/cobbler/settings文件。直接使用vim编辑即可。
首先,修改自动安装的系统的root密码。在配置文件中查找到字段
default_password_crypted,将后面引号中的修改了,方法是使用命令
[[email protected] ~]# openssl passwd -1 Password: Verifying - Password: $1$yfp27H6s$Gg5WkRzdrubD14JkS5Lat/ [[email protected] ~]#
将Verifying那行下面生成的**复制下来,替换掉字段后面的引号中的内容。
然后,查找server字段和next_server字段,这两个字段,分别指明了Cobbler服务器地址和tftp服务器地址。一般装在同一个机器请设置成一样的。
修改字段manage_dhcp字段,将其值由默认的0改为1,这样将使Cobbler可以管理dhcp。
接着修改dhcp配置,编辑文件/etc/cobbler/dhcp.template文件。
dhcp的配置和我上一个博客差不多,修改下图中标记字段即可,其它的一般不需要更改。
差不多配置文件就弄好了。
四.启动Cobbler并检查。
[[email protected] ~]# service cobblerd start
能正常启动,接着使用#cobbler check命令检查配置。
我这出现下面的信息。
百度一下,发现这样的问题可以通过以下方法解决:
[[email protected] ~]# cobbler service restart [[email protected] ~]# cobbler get-loaders
第二条命令要求你的网络是能访问cobbler官网的哈。
再次执行#cobbler check出现以下信息:
[[email protected] cobbler]# cobbler check The following are potential configuration items that you may want to fix: 1 : SELinux is enabled. Please review the following wiki page for details on ensuring cobbler works correctly in your SELinux environment: https://github.com/cobbler/cobbler/wiki/Selinux 2 : debmirror package is not installed, it will be required to manage debian deployments and repositories 3 : fencing tools were not found, and are required to use the (optional) power management features. install cman or fence-agents to use them Restart cobblerd and then run 'cobbler sync' to apply changes.
根据提示,发现第一条selinux我是已经关闭了,不过因为没有重启而没生效。重启会解决。
第二条是deb包相关的,不用管。
第三条是fencing tools,我们直接使用yum install -y fence-agents命令安装即可。
最后有提示说,相关的东西改了,要重启cobbler并执行cobbler sync才会生效的哦。
总之,有什么提示就按照提示解决吧。
那好吧,我们将系统重启后,安装了fence-agents后,启动cobbler并执行cobbler sync.
五.导入发行版的安装源。
导入之前,先得将安装源挂载到系统哈。
1.如果安装源是光盘,请使用mount -r /dev/cdrom /mnt/cdrom命令挂载。注意系统是否将光盘识别为cdrom哦,我见过也有识别成dvd的。
2.如果是ISO文件,请使用命令[[email protected] ~]# mount -o loop DISTROS_NAME.iso /MountPoint.
挂载好了,使用以下命令导入发行版的安装源。
[[email protected] ~]# cobbler import --path=/mnt/cdrom/ --name=Centos6.6 --arch=x86_64
这个命令的执行过程比较长哦,因为是会拷贝几个G的文件到/var/www/cobbler/ks_mirror/下哈,这也是开头说要求至少/var目录要有10G左右可用空间的原因哈。
六.创建要安装的系统。
使用下面的命令创建要安装的系统。
[[email protected] Centos6.6-x86_64]# cobbler system add --name=test --profile=Centos6.6- x86_64
可以看到创建成功了。最后。使用命令cobbler sync。
[[email protected] Centos6.6-x86_64]# cobbler sync task started: 2015-05-10_005723_sync task started (id=Sync, time=Sun May 10 00:57:23 2015) running pre-sync triggers cleaning trees removing: /var/www/cobbler/p_w_picpaths/Centos6.6-x86_64 removing: /var/lib/tftpboot/pxelinux.cfg/default removing: /var/lib/tftpboot/grub/efidefault removing: /var/lib/tftpboot/grub/grub-x86.efi removing: /var/lib/tftpboot/grub/p_w_picpaths removing: /var/lib/tftpboot/grub/grub-x86_64.efi removing: /var/lib/tftpboot/p_w_picpaths/Centos6.6-x86_64 removing: /var/lib/tftpboot/s390x/profile_list copying bootloaders trying hardlink /var/lib/cobbler/loaders/pxelinux.0 -> /var/lib/tftpboot/pxelinux.0 copying: /var/lib/cobbler/loaders/pxelinux.0 -> /var/lib/tftpboot/pxelinux.0 trying hardlink /var/lib/cobbler/loaders/menu.c32 -> /var/lib/tftpboot/menu.c32 copying: /var/lib/cobbler/loaders/menu.c32 -> /var/lib/tftpboot/menu.c32 trying hardlink /var/lib/cobbler/loaders/yaboot -> /var/lib/tftpboot/yaboot copying: /var/lib/cobbler/loaders/yaboot -> /var/lib/tftpboot/yaboot trying hardlink /var/lib/cobbler/loaders/grub-x86.efi -> /var/lib/tftpboot/grub/grub-x86.efi trying hardlink /var/lib/cobbler/loaders/grub-x86_64.efi -> /var/lib/tftpboot/grub/grub-x86_64.efi copying distros to tftpboot copying files for distro: Centos6.6-x86_64 trying hardlink /var/www/cobbler/ks_mirror/Centos6.6-x86_64/p_w_picpaths/pxeboot/vmlinuz -> /var/lib/tftpboot/p_w_picpaths/Centos6.6-x86_64/vmlinuz trying hardlink /var/www/cobbler/ks_mirror/Centos6.6-x86_64/p_w_picpaths/pxeboot/initrd.img -> /var/lib/tftpboot/p_w_picpaths/Centos6.6-x86_64/initrd.img copying p_w_picpaths generating PXE configuration files generating PXE menu structure copying files for distro: Centos6.6-x86_64 trying hardlink /var/www/cobbler/ks_mirror/Centos6.6-x86_64/p_w_picpaths/pxeboot/vmlinuz -> /var/www/cobbler/p_w_picpaths/Centos6.6-x86_64/vmlinuz trying hardlink /var/www/cobbler/ks_mirror/Centos6.6-x86_64/p_w_picpaths/pxeboot/initrd.img -> /var/www/cobbler/p_w_picpaths/Centos6.6-x86_64/initrd.img Writing template files for Centos6.6-x86_64 rendering DHCP files generating /etc/dhcp/dhcpd.conf rendering TFTPD files generating /etc/xinetd.d/tftp processing boot_files for distro: Centos6.6-x86_64 cleaning link caches running post-sync triggers running python triggers from /var/lib/cobbler/triggers/sync/post/* running python trigger cobbler.modules.sync_post_restart_services running: dhcpd -t -q received on stdout: received on stderr: running: service dhcpd restart received on stdout: 关闭 dhcpd:[确定] 正在启动 dhcpd:[确定] received on stderr: running shell triggers from /var/lib/cobbler/triggers/sync/post/* running python triggers from /var/lib/cobbler/triggers/change/* running python trigger cobbler.modules.scm_track running shell triggers from /var/lib/cobbler/triggers/change/* *** TASK COMPLETE ***
可以看到运行成功了,下来我们就可以使用新机器测试是否可以自动安装了。
可以看到,应该是成功了。进入Centos6.6-x86_64进行安装试一试。
好的,也是OK。就到此为止了同,关于详细的定制自动安装的很多配置,在这就不深入讨论了,请大家看一下文档吧。
转载于:https://blog.51cto.com/icyhome/1649930