cobbler+pxe自动化装机&&ansible高可用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cobbler+pxe自动化装机&&ansible高可用相关的知识,希望对你有一定的参考价值。
参考技术A Ansible是一款极其简单的IT自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。Ansible是基于模块工作的,本身没有批量部署的能力,真正具有批量部署的是Ansible所运行的模块,Ansible只是提供一种框架。Ansible主要承担的工作包括:配置管理、服务即时开通、应用部署、流程编排、监控告警、日志记录等。两台nginx作为Web Proxy,配置实现KeepAlived做主备;后端两台Apache,一台部署Apache+php,一台部署Apache+mysql。
Cobbler自动批量装机linux
cobbler是一个使用Python开发的开源项目,通过将部署系统所涉及的所有服务集中在一起,来提供一个全自动批量快速建立Linux系统的网络安装环境。
Cobbler还提供了DHCP管理、YUM源管理、电源管理等功能,初次之外还支持命令行管理、WEB界面管理,并且提供了API接口,方便进行二次开发
cobbler和pxe高效批量网络装机都是自动化安装,但是cobbler是pxe的二次封装,在使用上更加方便,集成多个软件进行实现。
软件名 | 作用 |
---|---|
cobbler | 用来快速建立linux网络安装环境 |
cobbler web | 网页页面管理 |
dhcp | 给空白主机自动分配IP地址 |
tftp-server | 提供引导镜像文件下载 |
pykickstart | 实现无人值守安装 |
httpd | 作为控制台程序运行 |
rsync | 远程同步管理,实现数据同步 |
xinetd | 提供访问控制、加强日志和资源管理功能 |
环境部署:
- Centos7服务器(NAT模式,IP:192.168.254.129)
- 扩展源软件包: 源软件包密码:16su
环境部署
1.安装epel扩展源软件包(cobbler相关软件包是由epel源提供的0
[[email protected] opt]# rpm -ivh epel-release-latest-7.noarch.rpm
2.加载yum源
[[email protected] ~]# yum list
3.安装cobbler、cobbler-web、dhcp、tftp-server、pykickstart、httpd、rsync、xinetd、软件包
[[email protected] opt]# yum install cobbler cobbler-web dhcp tftp-server pykickstart httpd rsync xinetd -y
4.修改cobbler的配置文件
[[email protected] ~]# vim /etc/cobbler/settings
修改以下内容
server: 192.168.254.129 #指定tftp服务器的地址
next_server: 192.168.254.129 #指定cobbler服务器地址
manage_dhcp: 1 # dhcp的管理服务(1:开启 0:关闭)
5.启动httpd和cobbler服务,关闭防火墙和selinux。
[[email protected] ~]# systemctl start cobblerd.service #开启cobbler服务
[[email protected] ~]# systemctl start httpd.service #开启httpd服务
[[email protected] ~]# systemctl stop firewalld.service #关闭防火墙
[[email protected] ~]# setenforce 0 #关闭增强功能
6.使用 cobbler check对cobbler做检查设置,哪些需要优化
[[email protected] ~]# cobbler check
----------需要优化的部分--------
7.开启tftp服务
[[email protected] opt]# vim /etc/xinetd.d/tftp
修改以下内容
disable = no (将yes改为no,开启tftp服务)
8.开启rsyncd服务
[[email protected] opt]# systemctl start rsyncd.service #开启服务
[[email protected] opt]# systemctl enable rsyncd.service #将服务添加系统服务管理
9.修改cobbler的管理员密码,使用以下命令生成盐值加密密码
[[email protected] opt]# openssl passwd -1 -salt ‘benet‘ ‘abc123‘ #此命令生成盐值加密密码
生成的盐值加密密码
$1$benet$2zR7T1EpGyJk/c1PGo5jy1
把盐值加密密码复制到cobbler的配置文件settings文件中
[[email protected] opt]# vim /etc/cobbler/settings
修改以下内容
default_password_crypted: "$1$benet$2zR7T1EpGyJk/c1PGo5jy1"
10.下载引导安装程序
[[email protected] opt]# cobbler get-loaders
11.重启cobbler和httpd服务。
[[email protected] opt]# systemctl restart cobblerd.service
[[email protected] opt]# systemctl restart httpd.service
重启服务后,我们可以再次使用cobbler check来查看优化后的情况,不显示说明优化成功,反之则优化未生效,下面的3条是可以忽略的。
12.编辑被cobbler所管理的dhcp模版
[[email protected] opt]# vim /etc/cobbler/dhcp.template
修改以下内容
subnet 192.168.254.0 netmask 255.255.255.0 { 修改254网段
option routers 192.168.254.1; #修改网关
option domain-name-servers 192.168.254.2; #修改DNS
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.254.120 192.168.254.150; #修改地址池
13.使用cobbler sync同步生成DHCP配置文件
[[email protected] opt]# cobbler sync
14.开启dhcp服务
[[email protected] opt]# systemctl start dhcpd.service
15.导入镜像文件
挂载镜像文件到/mnt目录下
[[email protected] opt]# mount /dev/sr0 /mnt
导入ISO镜像文件(文件较大,要等一会)
[[email protected] opt]# cobbler import --path=/mnt/ --name=CentOS-7-x86_64 --arch=x86_64
命令 | 注释 |
---|---|
path | 挂载目录 |
name | 系统名称(自定义) |
atch | 系统位数 |
重启所有的服务
[[email protected] CentOS-7-x86_64]# systemctl restart cobblerd.service
[[email protected] CentOS-7-x86_64]# systemctl restart dhcpd.service
[[email protected] CentOS-7-x86_64]# systemctl restart httpd.service
[[email protected] CentOS-7-x86_64]# systemctl restart xinetd.service
默认导入的存放位置(可以查看一下)
[[email protected] opt]# cd /var/www/cobbler/ks_mirror/CentOS-7-x86_64/
查看导入结果
[[email protected] CentOS-7-x86_64]# cobbler list
查看发行版本
[[email protected] CentOS-7-x86_64]# cobbler distro list
查看内核和初始化文件是否在tftp server中,用tree命令查看。(系统默认没有安装,可以用yum安装)
[[email protected] CentOS-7-x86_64]# yum install tree -y
查看内核和初始化文件在tftp server 共享目录
[[email protected] CentOS-7-x86_64]# tree /var/lib/tftpboot/images
ks默认文件存放位置
/var/lib/cobbler/kickstarts/sample_end.ks
客户端安装完成后只具备字符界面, 登录账户 root 密码abc123
选择完要安装的菜单后就等待安装完成吧.
cobbler web界面管理设置
[[email protected] CentOS-7-x86_64]# htdigest -c /etc/cobbler/users.digest Cobbler jack #给cobbler添加一个用户
输入两次确认密码 例如:123123
重启cobbler和httpd服务
[[email protected] CentOS-7-x86_64]# systemctl restart cobblerd.service
[[email protected] CentOS-7-x86_64]# systemctl restart httpd.service
总结:安装时在选择网络模式的时候要选择NAT模式,配置完成为了避免漏掉未开启的服务,所有服务重启开启一遍,安装完成后的系统时最小化安装,如需要图形化界面你可以手动安装。
以上是关于cobbler+pxe自动化装机&&ansible高可用的主要内容,如果未能解决你的问题,请参考以下文章