cobbler批量安装系统
cobbler是一个可以实现批量安装系统的Linux应用程序。它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本。 1.系统环境准备及其下载cobbler 1)系统环境 添加两块网卡 [[email?protected] ~]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens33: <BROADCAST,MULTICAST,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:9d:ab:96 brd ff:ff:ff:ff:ff:ff inet 192.168.88.5/24 brd 192.168.88.255 scope global noprefixroute ens33 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe9d:ab96/64 scope link valid_lft forever preferred_lft forever 3: ens37: <BROADCAST,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:9d:ab:a0 brd ff:ff:ff:ff:ff:ff inet 192.168.5.82/24 brd 192.168.5.255 scope global noprefixroute dynamic ens37 valid_lft 6545sec preferred_lft 6545sec inet6 fe80::fef6:e669:b63e:b381/64 scope link noprefixroute valid_lft forever preferred_lft forever 2)关闭安全服务 [[email?protected] ~]# setenforce 0 [[email?protected] ~]# systemctl stop firewalld 3) 下载cobbler及其所需服务程序 yum安装cobbler需要使用下面两个源,大家可以复制下面的代码到自己的yum仓库保存即可 [epel] name=epel enabled=1 gpgcheck=0 baseurl=https://mirrors.aliyun.com/epel/7/x86_64/ [centos] name=centos base enabled=1 gpgcheck=0 baseurl=http://mirrors.163.com/centos/7/os/x86_64/ [[email?protected] yum.repos.d]# yum install cobbler dhcp tftp-server xinetd syslinux httpd -y 2.配置相关服务 第一步:配置DHCP服务 [[email?protected] yum.repos.d]# vim /etc/dhcp/dhcpd.conf subnet 192.168.5.0 netmask 255.255.255.0 { range 192.168.5.10 192.168.168.5.60; default-lease-time 600; max-lease-time 7200; filename "pxelinux.0"; } [[email?protected] yum.repos.d]# systemctl restart dhcpd 第二步:配置tftp [[email?protected] yum.repos.d]# vim /etc/xinetd.d/tftp # default: off # description: The tftp server serves files using the trivial file transfer # protocol. The tftp protocol is often used to boot diskless # workstations,download configuration files to network-aware printers, # and to start the installation process for some operating systems. service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /var/lib/tftpboot disable = no #yes改为no per_source = 11 cps = 100 2 flags = IPv4 } [[email?protected] yum.repos.d]# systemctl restart xinetd [[email?protected] yum.repos.d]# systemctl restart xinetd 第三步:启动httpd,cobbler [[email?protected] yum.repos.d]# systemctl restart httpd [[email?protected] yum.repos.d]# systemctl restart cobblerd 第四步:检查cobbler配置 [[email?protected] yum.repos.d]# cobbler check 1 : The ‘server‘ field in /etc/cobbler/settings must be set to something other than localhost,or kickstarting features will not work. This should be a resolvable hostname or IP for the boot server as reachable by all machines that will use it. 2 : For PXE to be functional,the ‘next_server‘ field in /etc/cobbler/settings must be set to something other than 127.0.0.1,and should match the IP of the boot server on the PXE network. 3 : 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 4 : Some network boot-loaders are missing from /var/lib/cobbler/loaders,you may run ‘cobbler get-loaders‘ to download them,or,if you only want to handle x86/x86_64 netbooting,you may ensure that you have installed a *recent* version of the syslinux package installed and can ignore this message entirely. Files in this directory,should you want to support all architectures,should include pxelinux.0,menu.c32,elilo.efi,and yaboot. The ‘cobbler get-loaders‘ command is the easiest way to resolve these requirements. 5 : enable and start rsyncd.service with systemctl 6 : debmirror package is not installed,it will be required to manage debian deployments and repositories 7 : ksvalidator was not found,install pykickstart 8 : The default password used by the sample templates for newly installed machines (default_password_crypted in /etc/cobbler/settings) is still set to ‘cobbler‘ and should be changed,try: "openssl passwd -1 -salt ‘random-phrase-here‘ ‘your-password-here‘" to generate new one 9 : fencing tools were not found,and are required to use the (optional) power management features. install cman or fence-agents to use them 修改配置文件/etc/cobbler/settings 问题1 cobbler文件默认是127.0.0.1本地回环地址,需要更改为提供cobbler服务的ip地址 192.168.5.82,在384行 问题2 netx_server也是默认本地127.0.0.1回环地址,需要修改为提供cobbler服务的ip地址 192.163.182,128,在272行出 问题3 关闭防火墙,重启虚拟机 问题4:可以忽略 问题5 [[email?protected] yum.repos.d]# systemctl restart rsyncd [[email?protected] yum.repos.d]# systemctl enable rsyncd Created symlink from /etc/systemd/system/multi-user.target.wants/rsyncd.service to /usr/lib/systemd/system/rsyncd.service. 问题6可以忽略 问题7可以忽略pykickstart可以下载,不下载也可以 问题8 [[email?protected] yum.repos.d]# openssl passwd -1 -salt ‘123‘ ‘123456‘ $1$123$nE5gIYTYiF1PIXVOFjQaW/ 123是随机数,123456是设置的密码 [[email?protected] yum.repos.d]# vim /etc/cobbler/settings 将生成的密码粘贴过来 以上问题解决之后,需要同步和重启 [[email?protected] yum.repos.d]# systemctl restart cobblerd [[email?protected] yum.repos.d]# cobbler check [[email?protected] yum.repos.d]# cobbler sync 第五步:挂载光盘并进行数据导入 [[email?protected] yum.repos.d]# mount /dev/cdrom /mnt mount: /dev/sr0 写保护,将以只读方式挂载 mount: /dev/sr0 已经挂载或 /mnt 忙 /dev/sr0 已经挂载到 /mnt 上 数据导入(需要一些时间) [[email?protected] yum.repos.d]# cobbler import --path="/mnt" --name="centos7.5" 查看distro [[email?protected] yum.repos.d]# cobbler distro list centos7.5-x86_64 [[email?protected] ~]# ls anaconda-ks.cfg [[email?protected] ~]# cp anaconda-ks.cfg /var/lib/cobbler/kickstarts/ks.cfg [[email?protected] ~]# vim /var/lib/cobbler/kickstarts/ks.cfg IP为桥接的ip 第六步:自定义profile [[email?protected] ~]# cobbler profile add --kickstart="/var/lib/cobbler/kickstarts/ks.cfg" --distro="centos7.5-x86_64" --name="centos7.5_ken"/ [[email?protected] ~]# cobbler profile list centos7.5-x86_64 centos7.5_ken 第七步:删除不包含ks文件的profile [[email?protected] ~]# cobbler profile remove --name=‘centos7.5-x86_64‘ [[email?protected] ~]# cobbler profile list centos7.5_ken 3.cobbler自动化安装测试 新建一个虚拟机,内存需要3G以上 选择第我们自定义的包即可进行自动化安装。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |