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

[经验分享] 运维自动化Cobbler批量部署RedHat

[复制链接]

尚未签到

发表于 2018-5-12 10:41:15 | 显示全部楼层 |阅读模式
系统环境:redhat 5.5

redhat 5.5默认的系统中没有cobbler,需要先安装一个源,我这里使用的是epel的。

1.安装cobbler仓库

#64位:   

wget http://mirrors.ustc.edu.cn/fedora/epel/5/x86_64/epel-release-5-4.noarch.rpm

rpm -ivh rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm



2. 安装cobbler所需的软件

yum -y install cobbler dhcp httpd xinetd tftp-server  

# cobbler的配置文件在/var/lib/cobbler/和/etc/cobbler下(不同版本可能不同)
# xinetd tftp-server用来做tftp服务器,pxe启动需要。
# httpd服务器主要存放ks文件和安装光盘。注意 /var/www/cobbler 目录必须具有足够容纳 Linux 安装文件的空间(移动,建软链接)


3.启动cobbler,并配置



/etc/init.d/cobblerd start   

  cobbler check

会出现一些需要配置的地方,按照提示修改,大概有如下几个地方:

(1)编辑/etc/cobbler/settings文件,找到 server选项,修改为cobbler server的ip地址,找到 next_server选项,也修改为此地址

(2)执行 cobbler get-loaders,系统将自动下载loader程序,完成提示的修复工作

(3)提示说debmirror没安装。如果不是安装 debian之类的系统,此提示可以忽略,如果需要安装,下载地址为:

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



首先安装其依赖包

yum install ed patch perl perl-Compress-Zlib perl-Cwd perl-Digest-MD5

perl-Digest-SHA1 perl-LockFile-Simple perl-libwww-perl



(4)修改系统的默认密码,默认为cobbler,可以使用如下命令生成密码,并使用生成后的密码替换/etc/cobbler/settings中的密码。(default_password_crypted:处)生成密码命令:
openssl passwd -1 -salt 'random-phrase-here' 'your-password-here'
其中“random-phrase-here”为干扰码,可以随便输入

然后把“default_password_crypted”字段修改为openssl生成的新密码。





4.导入iso文件

cobbler import --path==/mnt/redhatISO(光盘所在位置) --name=RHEL-5.5-X86-64(名字随便)

然后会在/var/www/cobbler/ks_mirrors下的RHEL-5.5-X86-64目录下。同时会创建一个名字为RHEL-5.5-X86-64的一个发布版本,以及一个名字为RHEL-5.5-X86-64的profile文件。

#cobbler list         # 查看导入结果,应包含一个xen的  



5. 配置dhcp服务



首先修改cobbler配置,让cobbler来管理dhcp服务,编辑文件/etc/cobbler/settings
manage_dhcp: 1
接下来修改/etc/cobbler/dhcp.template,此文件是cobbler管理dhcp的模板

只需要如下所示
subnet 192.168.10.0 netmask 255.255.255.0 {
option routers             192.168.10.1;
option domain-name-servers 8.8.8.8;
option subnet-mask         255.255.255.0;
range dynamic-bootp        192.168.10.100 192.168.10.254;
     filename                   "/pxelinux.0";
     default-lease-time         21600;
     max-lease-time             43200;
     next-server                $next_server;
}


6.生成并同步所有配置

#cobbler sync





7. 启动相关服务



service xinetd start   

service dhcpd start   

service cobblerd start



8. 测试安装服务器

启动另一台新服务器,通过 PXE 启动进入,然后会进入蓝色的 Cobbler 安装界面,选择安装项,几分钟之内就能一气呵成,自动完成系统安装。



9. 重装系统

此步骤cobbler会自动进行初始化工作,移除已经存在的启动项,然后根据模板拷贝loader文件。之后再生成pxe的配置文件,生成dhcp的配置文件,最后再重启dhcp服务。




# 在要重装的机器安装koan   

yum install koan


#查看cobbler服务器有哪些安装盘   

koan --list-profiles --server=192.168.1.2

#选择要重装的系统并重启   

koan --replace-self --server=192.168.1.2 --profile=CentOS-5-4-x86-64  

然后reboot的时候系统就会重装了。



PS:需要安装simplejson软件包,最新版下载地址:

http://pypi.python.org/pypi/simplejson/

最新版的  simplejson要求python 2.6+以上的

我的python 2.4,所以下载 的http://www.oschina.net/p/simplejson simplejson-2.0.9.tar.gz版本(python setup.py install 安装即可)



10.设置Cobbler web界面

Cobbler web界面是一个很好的前端,非常容易管理很多Cobbler操作。可以用它列出和编辑distros, profiles, subprofiles, systems, repos and kickstart文件。



安装Cobbler web:

yum install cobbler-web

Cobbler web界面访问地址:

http://192.168.1.2/cobbler_web/(192.168.1.2为Cobbler web server地址)



设置用户名密码:

为已存在的用户重置密码:

htdigest /etc/cobbler/users.digest "Cobbler" cobbler

添加新用户:

htdigest /etc/cobbler/users.digest "Cobbler" yourname

设置/etc/cobbler/modules如下:

[authentication]  

module = authn_configfile  

[authorization]  

module = authz_allowall   



重启Cobbler服务:

service cobblerd restart      重启httpd服务,web界面就可以访问了。



PS:默认的ks文件是/var/lib/cobbler/kickstarts/sample.ks文件。

cobbler profile getks --name=CenOS5.5 (查找profile  CenOS5.5的ks文件是否有问题)




11. 设置profile和system


(1) profile可以理解为按角色进行分类

下面是几个添加删除修改profile配置的例子:

添加profile配置,名称为:CenOS5.5,指定镜像为:CentOS5.5-x86_64,kickstart文件为/var/lib/cobbler/kickstarts/CentOS5.ks

cobbler profile add --name=CentOS5.5 --distro=CentOS5.5-x86_64 --kickstart=/var/lib/cobbler/kickstarts/CentOS5.ks


修改profile文件,名称为:CentOS5.5,指定镜像由CentOS5.5-x86_64修改为CentOS5.5-i386

cobbler profile add --name=CentOS5.5 --distro=CentOS5.5-i386


变更profile配置名称,名称由CenOS5.5修改为CentOS5.5-i386

cobbler profile rename --name=CentOS5.5 –newname=CentOS5.5-i386


删除profile配置,需要删除的profile名称为CenOS5.5

cobbler profile remove --name=CentOS5.5


注意:修改删除profile,profile必须存在。

(2) system是对待安装机器做具体设置,如设置主机名、IP地址、hostname等,这些设置根据MAC应用到具体机器上。

下面是几个添加删除修改system的例子:

添加system配置,配置文件名称:webserver1,机器IP地址192.168.0.110,机器MAC地址:00:0C:29:77:89:c7,使用配置文件名称:webserver,kickstart文件为:/var/lib/cobbler/kickstarts/webserver.ks

cobbler system add --name=webserver1 --ip=192.168.0.110 --mac=00:0C:29:77:89:c7 --profile=webserver --kickstart=/var/lib/cobbler/kickstarts/webserver.ks --static=1


修改system配置,配置文件名称:webserver1,机器IP地址由192.168.0.110变更为192.168.10.110

cobbler system add --name=webserver1 --ip=192.16810.110


变更system配置名称,名称由webserver1变更成dbserver1

cobbler system rename --name= webserver1 –newname= dbserver1


删除system配置,需要删除的profile名称为dberver1

cobbler system remove --name=dbserver1







Cobbler命令说明


命令名称

命令用途

cobbler check

核对当前设置是否有问题

cobbler list

列出所有的cobbler元素

cobbler report

详细的列出个元素

cobbler sync

同步配置到dhcp/pxe和数据目录

cobbler reposync

同步yum仓库

Cobbler配置文件说明

Cobbler配置文件存放在/etc/cobbler下。


配置文件名称

用   

/etc/cobbler/settings

cobbler主配置文件

/etc/cobbler

dhcp、dns、pxe、dnsmasq的模板配置文件

/etc/cobbler/users.digest

用于web访问的用户名密码配置文件

/etc/cobbler/modules.conf

模块配置文件

/etc/cobbler/users.conf

Cobbler WebUI/Web service授权配置文件

   

Repo数据目录/var/www/cobbler

导入的发行版,repos镜像和kickstart文件都放置在/var/www/cobbler目录下。确保/var目录有足够的空间来存储这些文件。


目录名称



images/

存储所有导入发行版的Kernel和initrd镜像用于远程网络启动

ks_mirror/

存储导入的发行版

repo_mirror/

yum repos存储目录

/var/log/cobbler

存放日志文件/var/log/cobbler/cobbler.log



Cobbler数据目录/var/lib/cobbler,此目录存储和Cobbler profiles、systems、distros相关的配置。


目录名称



configs/

存储distros、repos、systems和profiles相关信息

backup/

备份目录

snippets/

放置一些可以在kickstarts导入的脚本小片段

triggers/

放置一些可执行脚本

kickstarts/

放置kickstart模板文件

运维网声明 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-459028-1-1.html 上篇帖子: wintarget配置和redhat5的iscsi配置简介 下篇帖子: redhat各目录作用
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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