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

[经验分享] 使用cobbler批量安装CentOS7

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-7-12 08:43:18 | 显示全部楼层 |阅读模式
一、cobbler介绍
    关于cobbler的介绍,引用了一段来自百度百科的文字:
  “网络安装服务器套件 Cobbler(补鞋匠)从前,我们一直在做装机民工这份很有前途的职业。自打若干年前 Red Hat 推出了 Kickstart,此后我们顿觉身价倍增。不再需要刻了光盘一台一台地安装 Linux,只要搞定 PXE、DHCP、TFTP,还有那满屏眼花缭乱不知所云的 Kickstart 脚本,我们就可以像哈里波特一样,轻点魔棒,瞬间安装上百台服务器。这一堆花里胡哨的东西可不是一般人都能整明白的,没有大专以上学历,通不过英语四级,根本别想玩转。总而言之,这是一份多么有前途,多么有技术含量的工作啊。很不幸,Red Hat 最新(Cobbler项目最初在2008年左右发布)发布了网络安装服务器套件 Cobbler(补鞋匠),它已将 Linux 网络安装的技术门槛,从大专以上文化水平,成功降低到初中以下,连补鞋匠都能学会。对于我们这些在装机领域浸淫多年,经验丰富,老骥伏枥,志在千里的民工兄弟们来说,不啻为一个晴天霹雳。
二、环境准备
  1、关闭防火墙和SElinux
    为了让cobbler的安装及其依赖更加直观,我在VMware上安装了一个CentOS6.7系统,关闭防火墙和SElinux。
  [iyunv@zhen ~]# iptables-F
  [iyunv@zhen ~]# ntsysv
  [iyunv@zhen ~]# vi /etc/selinux/config        将SELINUX=disabled
  [iyunv@zhen ~]# setenforce 0
  2、配置ip
在部署过程中需要上网下载一些安装包,要配置系统的ip,可以上网。
  3、配置epel源
  (1)可以使用yum来安装cobbler,但是系统镜像自带的yum源内不包含cobbler的安装包。需要在系统上安装epel源。下面列出几个常用epel源:
  浙江大学:http://mirrors.lifetoy.org/
    中科大:http://mirrors.ustc.edu.cn/
    阿里云:http://mirrors.aliyun.com/
http://mirrors.ustc.edu.cn/fedora/epel/5/SRPMS/epel-release-5-4.src.rpm
http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
http://mirrors.ustc.edu.cn/centos/6/extras/x86_64/Packages/epel-release-6-8.noarch.rpm
http://mirrors.lifetoy.org/centos/6/extras/x86_64/Packages/epel-release-6-8.noarch.rpm
(2)epel源安装
wget阿里云的epel源:
用rpm命令安装:
[iyunv@zhen ~]# rpm -ivh epel-release-6-8.noarch.rpm
三、安装软件包
  cobbler的运行需要 xinet、 dhcp、 httpd,直接使用yum安装即可。
  [iyunv@zhen ~]# yum -yinstall cobbler
  [iyunv@zhen ~]# yum -yinstall xinetd dhcp httpd
四、修改配置文件
   cobbler的配置文件是:/etc/cobbler/settings
  在配置文件中需要注意的地方如下:
(1)default_kickstart: /var/lib/cobbler/kickstarts/default.ks
//这行内容定义了默认使用ks文件,即用system-config-kickstart生成的文件,一般不用修改。
(2)default_password_crypted:"$1$mF86/UHC$WvcIcX2t6crBz2onWxyac."
  //这行定义了批量安装的系统默认的root密码。
     在命令行执行:[iyunv@zhen ~]# openssl passwd -1 -salt `openssl rand -hex 6`
  Password:         (在此输入密码)
  $1$8f3d273d$dtl/D8sAbEU06dWGkr1vA0
  [iyunv@zhen ~]#
     然后将生成的密码复制到配置文件该位置
  (3) manage_dhcp: 0
//0代表独立管理dhcp,1代表由cobbler管理dhcp。如果单独管理dhcp,在实际环境中会与路由器本身的dhcp发生冲突,为了减少客户机重试次数,需要暂时关闭路由器的dhcp。为了避免关闭路由器的dhcp造成的影响,在这里将参数设为1。这样就需要用到/etc/cobbler/dhcp.template。
(4) manage_tftpd: 1
  //这里要将参数改为0
(5)next_server: 127.0.0.1
   server: 127.0.0.1
  //这两个参数都需要设置为cobbler服务端的ip地址。
五、配置dhcp
   由cobbler的dhcp需要用到/etc/cobbler/dhcp.template。
   打开配置文件做如下修改:
    21 subnet 192.168.198.0netmask 255.255.254.0 {
    22      optionrouters              192.168.199.1;
    23      optiondomain-name-servers  8.8.8.8;
     24      optionsubnet-mask         255.255.254.0;
    25      rangedynamic-bootp        192.168.199.100 192.168.199.254;
    26     default-lease-time           21600;
    27      max-lease-time             43200;
    28      next-server                $next_server;
六、启动服务
  (1)cobbler:执行cobbler check检查cobbler运行环境,根据提示信息修改。
部分提示如下:
①somenetwork boot-loaders are missing from /var/lib/cobbler/loaders, you may run'cobbler get-loaders' to download them, or, if you only want to handlex86/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 tosupport all architectures, should include pxelinux.0, menu.c32, elilo.efi, andyaboot. The 'cobbler get-loaders' command is the easiest way to resolve theserequirements.
若仅为x86/x86_64架构的服务器提供服务,安装syslinux即可
     [iyunv@zhen~]# yum install syslinux
②debmirror packageis not installed, it will be required to manage debian deployments andrepositories
这一项可以忽略
③ksvalidator was notfound, install pykickstart
安装ksvalidator
   [iyunv@zhen~]# yum install -y pykickstart
   ④The defaultpassword 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
为default_password_crypted参数设置新密码
[iyunv@zhen ~]#chkconfig --add cobblerd
[iyunv@zhen ~]#chkconfig cobblerd on
[iyunv@zhen ~]#service cobblerd start
(2)httpd
[iyunv@zhen ~]# chkconfig --add httpd
[iyunv@zhen ~]# chkconfig httpd on
[iyunv@zhen ~]# service httpd start      
(3)xinetd
[iyunv@zhen ~]# vi /etc/xinetd.d/tftp      将disable=no
[iyunv@zhen ~]# chkconfig xinetd on
[iyunv@zhen ~]# service xinetd start
七、配置镜像
  1、先将有系统镜像的光盘挂载到本地系统:
  [iyunv@zhen ~]# mkdir/mnt/cdrom
  [iyunv@zhen ~]# mount /dev/sr0 /mnt/cdrom/
2、导入镜像:cobbler  import --name=CentOS-7-x86_64 --path=/mnt/cdrom
--name:自定义名称
--path:指定系统镜像的位置
在导入之前最好重启cobblerd。若镜像文件很大,导入过程会很长。导入完成后,       在/var/www/cobbler/ks_mirror目录下会生成一个--name指定的名称的目录。导入完成后可以使用cobbler distrolist
3、生成ks文件
需要使用yum安装system-config-kickstart
执行system-config-kickstart需要图形界面支持。下面是一个ks文件模版,可以修改使用:
#platform=x86,AMD64, or Intel EM64T
#System  language
lang en_US
#Systemkeyboard
keyboard us
#Sytemtimezone
timezoneAsia/Shanghai
#Rootpassword
rootpw--iscrypted $default_password_crypted
#Use textmode install
text
#Install OSinstead of upgrade
install
#Use NFSinstallation Media
url--url=$tree
#Systembootloader configuration
bootloader--location=mbr
#Clear theMaster Boot Record
zerombr
#Partitionclearing information
clearpart--all --initlabel
#Disk partitioninginformation
part /boot--fstype xfs --size 1024 --ondisk sda
part swap--size 16384 --ondisk sda
part /--fstype xfs --size 1 --grow --ondisk sda
#Systemauthorization infomation
auth  --useshadow --enablemd5
#Networkinformation
$SNIPPET('network_config')
#network--bootproto=dhcp --device=em1 --onboot=on
# Rebootafter installation
reboot
#Firewallconfiguration
firewall--disabled
#SELinuxconfiguration
selinux--disabled
#Do notconfigure XWindows
skipx
#Packageinstall information
%pre
$SNIPPET('log_ks_pre')
$SNIPPET('kickstart_start')
$SNIPPET('pre_install_network_config')
# Enableinstallation monitoring
$SNIPPET('pre_anamon')
%end

%packages
@ base
@ core
sysstat
iptraf
ntp
lrzsz
ncurses-devel
openssl-devel
zlib-devel
OpenIPMI-tools
mysql
nmap
screen
%end

%post
systemctldisable postfix.service
%end
  4、导入ks文件
  [iyunv@zhen ~]# cobblerprofile edit --name=CentOS-7-x86_64 --distro=CentOS-7-x86_64 --kickstart=/var/lib/cobbler/kickstarts/CentOS-7-x86_64.cfg
   执行这条命令前,需要将ks文件拷贝到/var/lib/cobbler/kickstarts/目录下
  5、同步配置
  cobbler sync
  关于cobbler命令的具体使用方法,执行cobbler --help查看
  6、ps
  第3、4步可以合为一步:cobbler import --name=CentOS-7-x86_64--path=/mnt/cdrom/ --kickstart=/root/CentOS-7.1-    x86_64.cfg一条命令执行。
  7、到此,cobbler的所有配置已经完成,接下来新建测试机来测试下。
八、注意事项
  1、在实际的服务器上安装时,在刚开机时按F12进入PXE装机即可自动开始安装;
  2、本文使用到的ks模版用来安装CentOS7系统,安装7以下版本需要做一些修改,否则会报错。
  3、每次做完修改要使用cobbler sync同步配置

运维网声明 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.yunweiku.com/thread-242813-1-1.html 上篇帖子: SSH KEY免密码验证 下篇帖子: CentOS6 彻底关闭IPv6
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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