测试中发现,无法导入32位系统镜像,使用32位的CentOS安装Cobbler也不行,目前未解决。
# 安装环境 # cat /etc/redhat-release CentOS Linux release 7.1.1503 (Core) # uname -a Linux localhost.localdomain 3.10.0-229.el7.x86_64 #1 SMP Fri Mar 6 11:36:42 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux # cat /etc/redhat-release CentOS Linux release 7.1.1503 (Core) [root@localhost ~]# uname -a Linux localhost.localdomain 3.10.0-229.20.1.el7.x86_64 #1 SMP Tue Nov 3 19:10:07 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux # rpm -qa cobbler cobbler-2.6.10-1.el7.noarch #################################################################################### # #安装过程 # #################################################################################### # 增加repo源 rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm # 或 wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo # 安装Cobbler及相关软件 yum -y install httpd xinetd tftp-server dnsmasq rsync syslinux yum -y install cobbler fence-agents pykickstart # 关闭selinux # vi /etc/selinux/config SELINUX=disabled # 获取selinux状态 # getenforce # 关闭iptables systemctl stop firewalld systemctl disable firewalld # 生成系统安装后,root的密码 (默认密码为 cobbler) # 格式 openssl passwd -1 -salt 'random-phrase-here' 'your-password-here' # 其中 random-phrase-here 为干扰码 # openssl passwd -1 -salt 'allgo' 'allgo.cc' $1$allgo$sjkKoGvJXV2AuBNFeHyxP. # 修改Cobbler配置/etc/cobbler/settings manage_dhcp:1 manage_dns:1 manage_tftpd:1 restart_dhcp:1 restart_dns:1 next_server:<服务器的 IP 地址> server:<服务器的 IP 地址> default_password_crypted: "$1$allgo$sjkKoGvJXV2AuBNFeHyxP." # 修改 modules,使用dnsmasq作为DHCP、DNS服务器 # vi /etc/cobbler/modules.conf [dns] module = manage_dnsmasq [dhcp] module = manage_dnsmasq [tftpd] module = manage_in_tftpd # 修改dnsmasq配置文件 /etc/dnsmasq.conf # vi /etc/dnsmasq.conf # Cobbler generated configuration file for dnsmasq # $date # # resolve.conf .. ? #no-poll #enable-dbus read-ethers addn-hosts = /var/lib/cobbler/cobbler_hosts dhcp-range=192.168.211.10,192.168.211.29,255.255.255.0 dhcp-ignore=tag:!known dhcp-option=3,$next_server dhcp-lease-max=1000 dhcp-authoritative dhcp-boot=pxelinux.0 dhcp-boot=net:normalarch,pxelinux.0 dhcp-boot=net:ia64,$elilo $insert_cobbler_system_definitions # TFTP配置 # cat /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 per_source = 11 cps = 100 2 flags = IPv4 } systemctl start xinetd.service systemctl status xinetd.service systemctl enable xinetd.service systemctl start tftp.socket systemctl status tftp.socket systemctl enable tftp.socket systemctl start tftp.service systemctl status tftp.service systemctl enable tftp.service # 配置httpd cd /etc/httpd/conf.d/ #移除并备份conf文件,目的不显示测试页面 mv autoindex.conf autoindex.conf.bak mv userdir.conf userdir.conf.bak mv welcome.conf welcome.conf.bak # 启动httpd、Cobbler systemctl start httpd.service systemctl enable httpd.service systemctl status httpd.service systemctl start cobblerd.service systemctl enable cobblerd.service systemctl status cobblerd.service # Cobbler检查,会检测到一些错误,根据提示解决 cobbler check # Cobbler配置应用 cobbler sync # 查看相关应用是否启动 ss -naltu # 准备安装文件 # 导入iso文件 mount -t iso9660 -o loop,ro /os/CentOS-7-x86_64-Minimal-1503-01.iso /mnt cobbler import --name=centos7mini --path=/mnt --arch=x86_64 # cobbler import --arch=x86_64 --path=/mnt --name=centos7mini2 # 查看导入结果 cobbler distro list cobbler distro report cobbler profile report # 添加kickstart配置文件 # 从现有sample_end 修改得到 # cp /var/lib/cobbler/kickstarts/sample_end.ks /var/lib/cobbler/kickstarts/jxl_data.ks # vi /var/lib/cobbler/kickstarts/jxl_data.ks timezone Asia/Shanghai --isUtc lang en_US.UTF-8 --addsupport=zh_CN.UTF-8 # 添加账号 # user --name=<username> [--groups=<list>] [--homedir=<homedir>] [--password=<password>] [--iscrypted] [--shell=<shell>] [--uid=<uid>] user --name="centos" --iscrypted="$1$juxinli$PEn5Sl/DCkrLOGeSmVrFP1" --uid=1000 # Allow anaconda to partition the system as needed # autopart # Partition clearing information clearpart --all --initlabel # Disk partitioning information part / --asprimary --fstype="xfs" --size=204800 part /boot --asprimary --fstype="xfs" --size=1024 part swap --asprimary --fstype="swap" --size=4096 # kvm part /vm --asprimary --fstype="xfs" --grow --size=1 # data part /data --asprimary --fstype="xfs" --grow --size=1 #LVM-data part /boot --fstype="xfs" --size=1024 part swap --fstype="swap" --size=4096 part pv.01 --size=1 --grow volgroup centos pv.01 logvol / --fstype="xfs" --vgname=centos --size=2048 --name=root logvol /data --fstype="xfs" --vgname=centos --size=1 --grow --name=data #LVM-kvm part /boot --fstype="xfs" --size=1024 part swap --fstype="swap" --size=4096 part pv.01 --size=1 --grow volgroup centos pv.01 logvol / --fstype="xfs" --vgname=centos --size=2048 --name=root logvol /vm --fstype="xfs" --vgname=centos --size=1 --grow --name=vm # cobbler profile add --name=Fedora17-xfce --ksmeta='desktop_pkg_group=@xfce-desktop' --kickstart=/var/lib/cobbler/kickstarts/example.ks --parent=centos7mini2-x86_64 # cobbler profile add --name=centos-data --kickstart=/var/lib/cobbler/kickstarts/jxl_data.ks --parent=centos7mini2-x86_64 # 修改kickstart文件 cobbler profile edit --name=centos7mini-x86_64 --kickstart=/var/lib/cobbler/kickstarts/jxl_data.ks # 验证kickstart文件内容 cobbler profile getks --name=centos7mini-x86_64 # 配置需要安装的机器 # 针对MAC为00:0C:29:48:30:63的机器安装 cobbler system add --name=test --profile=centos7mini-x86_64 --interface=eno16777736 --mac=00:0C:29:48:30:63 --ip-address=192.168.211.11 --netmask=255.255.255.0 --static=1 --dns-name=test.mydomain.com --gateway=192.168.211.1 --hostname=test.mydomain.com cobbler system report ####### # 让配置生效 cobbler sync #######注意################ # 检查 dnsmasq dhcp-range是否正确,因为cobbler sync 会修改 grep "range" /etc/dnsmasq.conf dhcp-range=192.168.211.10,192.168.211.20 # 修改/etc/dnsmasq.conf 后需要重启dnsmasq systemctl restart dnsmasq.service ############################## # 安装Cobbler Web 界面 yum -y install cobbler-web # 修改授权 # /etc/cobbler/modules.conf [authentication] module = authn_pam [authorization] module = authz_ownership # 添加Cobbler_web 账号 # useradd web && passwd web # 将 账号 添加到Cobbler_web admins组 # cat /etc/cobbler/users.conf [admins] admin = "" cobbler = "" web = "" # 重启服务 service cobblerd restart service httpd restart # 登录WEB(注意使用https) https://192.168.211.131/cobbler_web/ # Cobbler 子命令介绍 cobbler check #检查cobbler配置 cobbler sync #步配置到dhcp pxe和数据目录 cobbler list #列出所有的cobbler元素 cobbler import #导入安装的系统光盘镜像 cobbler report #列出各元素的详细信息 cobbler distro #查看导入的发行版系统信息 cobbler profile #查看配置信息 cobbler system #查看添加的系统信息 cobbler reposync #同步yum仓库到本地 cobbler repo add --name=CentOS-7-x86_64 --mirror=http://mirrors.aliyun.com/centos/7/os/x86_64/ cobbler reposync # 参考文档 # Cobbler官网 http://cobbler.github.io/manuals/quickstart/ http://cobbler.github.io/manuals/2.6.0/ # dnsmasq设置 http://debugo.com/dnsmasq/ # 使用 Cobbler 自动化和管理系统安装 http://www.ibm.com/developerworks/cn/linux/l-cobbler/ # Cobbler自动化工具同时批量部署CentOS7及CentOS6.5 http://www.tuicool.com/articles/YZN3qi #kickstart配置文件详解 http://blog.chinaunix.net/uid-17240700-id-2813881.html