Cobbler自动化无人值守安装

Cobbler

1、介绍
一、Cobbler 能够用来快速创建 Linux 网络安装环境,它已将 Linux 网络安装的技术门槛,从大专以上文化水平,成功下降到初中如下,连补鞋匠都能学会。
二、Cobbler是较早前的kickstart的升级版,优势是比较容易配置,还自带web界面比较易于管理。
三、Cobbler是一个Linux服务器安装的服务,能够经过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还能够管理DHCP,DNS等。linux

2、Cobbler集成的服务
一、PXE服务支持
二、DHCP服务管理
三、DNS服务管理(可选bind,dnsmasq)
四、电源管理
五、Kickstart服务支持
六、YUM仓库管理
七、TFTP(PXE启动时须要)
八、Apache(提供kickstart的安装源,并提供定制化的kickstart配置)web

3、cobbler安装的必要组件vim

[root@localhost ~]# yum install epel-release -y    ##安装epel源
[root@localhost ~]# yum install  -y \
> cobbler \      ##安装cobbler\
> cobbler-web \    ##网页形式管理
> dhcp \                ##地址分配服务 
> tftp-server \       ##放压缩和引导文件
> pykickstart \      ##Python开发的kickstart
> httpd \               ##网络服务
> rsync \              ##远程同步管理
> xinetd               ##管理平台

4、修改cobbler的配置文件服务器

[root@localhost ~]# cd /etc/cobbler/
[root@localhost cobbler]# vim settings  ##修改配置文件

next_server: 192.168.13.140     ##修改服务地址为本地
server: 192.168.13.140
manage_dhcp: 1    ##dhcp开启

[root@localhost cobbler]# systemctl start httpd.service      ##开启http服务
[root@localhost cobbler]# systemctl start cobblerd.service ##开启cobbler服务
[root@localhost cobbler]# systemctl stop firewalld.service  ##关闭防火墙
[root@localhost cobbler]# setenforce 0     ##关闭加强功能

5、优化cobbler网络

[root@localhost cobbler]# cobbler check   ##cobbler检测须要优化项
##下面会列出须要优化的东西,根据优化项进项优化便可
[root@localhost cobbler]# vim /etc/xinetd.d/tftp  ##进行tftp优化

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
}

[root@localhost cobbler]# systemctl enable rsyncd.service  ##优化开启远程同步管理服务
[root@localhost cobbler]# openssl passwd -1 -salt 'abc123' 'abc123'  ##优化设置管理员密码

$1$abc123$9v8z2./E/PZihXrVcy3II0   ##复制此段是盐值加密事后的密文

[root@localhost cobbler]# vim /etc/cobbler/settings  ##修改配置文件
##查找default而后将加密的密文复制到此处
default_password_crypted: "$1$abc123$9v8z2./E/PZihXrVcy3II0"
[root@localhost cobbler]# systemctl start rsyncd.service   ##启动服务
[root@localhost cobbler]# systemctl restart xinetd.service

6、配置DHCP服务dom

[root@localhost cobbler]# vim /etc/cobbler/dhcp.template  ##修改配置文件

subnet 192.168.13.0 netmask 255.255.255.0 {     ##修改网段
         option routers             192.168.13.1;                 ##网关
         option domain-name-servers 192.168.13.2;     ##dns地址
         option subnet-mask         255.255.255.0;
         range dynamic-bootp        192.168.13.100 192.168.13.200;  ##地址池

[root@localhost cobbler]# cobbler sync  ##同步生成DHCP配置文件(/etc/dhcp/dhcpd.conf)
[root@localhost cobbler]# systemctl restart dhcpd.service   ##启动dhcp服务
[root@localhost cobbler]# systemctl start cobblerd.service  ##启动cobbler服务
[root@localhost cobbler]# systemctl start xinetd.service      ##启动管理平台服务

7、导入ISO镜像:先链接镜像文件,后挂载到mnt目录下。socket

[root@localhost cobbler]# mount /dev/cdrom /mnt   ##将镜像挂载到/mnt目录下
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost cobbler]# cd /mnt/   
[root@localhost mnt]# ls    ##查看镜像文件
CentOS_BuildTag  GPL       LiveOS    RPM-GPG-KEY-CentOS-7
EFI              images    Packages  RPM-GPG-KEY-CentOS-Testing-7
EULA             isolinux  repodata  TRANS.TBL

导入镜像文件ide

[root@localhost mnt]# cobbler import --path=/mnt/ --name=Centos-7-x86_64 --arch=x86_64
##导入镜像文件指明路径,生成名字
[root@localhost mnt]# cd /var/www/cobbler/ks_mirror/   ##切换到cobbler目录下
[root@localhost ks_mirror]# ls
Centos-7-x86_64  config
[root@localhost ks_mirror]# cobbler list    ##查看文件信息
distros:
     Centos-7-x86_64

profiles:
     Centos-7-x86_64

systems:

repos:

images:

mgmtclasses:

packages:

files:

查看压缩内核和引导文件工具

[root@localhost ks_mirror]# yum install tree -y   ##安装tree工具
[root@localhost ks_mirror]# tree /var/lib/tftpboot/images    ##查看压缩内核和引导文件
/var/lib/tftpboot/images
└── Centos-7-x86_64
        ├── initrd.img    ##引导文件
        └── vmlinuz      ##压缩内核

重启服务优化

[root@localhost ks_mirror]# systemctl restart cobblerd.service 
[root@localhost ks_mirror]# systemctl restart dhcpd.service 
[root@localhost ks_mirror]# systemctl restart xinetd.service 
[root@localhost ks_mirror]# systemctl restart httpd.service

8、接下来建立一台没有系统(建立虚拟机时选择稍后本身安装系统)的虚拟机,开启自动安装系统(字符界面,图形化安装在后面)
Cobbler自动化无人值守安装
填入管理员root和密码
Cobbler自动化无人值守安装
安装图形化界面

[root@localhost ~]#yum groupinstall "GNOME Desktop"
[root@localhost ~]# yum groupinstall 'KDE Plasma Workspaces" -y
[root@localhost ~]# yum groupinstall "X Window System" 或者"Graphical Administration Tools"

第一种管理方法:利用cobbler的web来进行管理

[root@localhost ks_mirror]# vim /etc/cobbler/modules.conf ##配置模块配置文件

module = authn_configfile  ##默认开启

[root@localhost ks_mirror]# htdigest -c /etc/cobbler/users.digest Cobbler adadmin ##建立用户密码
Adding password for adadmin in realm Cobbler.
New password:     ##输入密码
Re-type new password: 
[root@localhost ks_mirror]# systemctl restart cobblerd.service   ##重启cobbler服务
[root@localhost ks_mirror]# systemctl restart httpd.service         ##重启httpd服务

9、网页访问cobbler的web管理(宿主机来访问:https形式)
Cobbler自动化无人值守安装
Cobbler自动化无人值守安装

第二种管理方法:启用pam认证,身份登陆

[root@localhost ks_mirror]# vim /etc/cobbler/modules.conf   ##修改模块配置文件

[authentication]   
module = authn_pam    ##修改为pam认证模块

[authorization]
module = authz_ownership ##指定访问权限

[root@localhost ks_mirror]# useradd webuser  ##建立系统用户
[root@localhost ks_mirror]# passwd webuser   ##设置密码
更改用户 webuser 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
从新输入新的 密码:
passwd:全部的身份验证令牌已经成功更新。

[root@localhost ks_mirror]# vim /etc/cobbler/users.conf   ##修改cobbler下的users.conf文件

[admins]
admin = ""
cobbler = ""
webuser = ""    ##添加用户

[root@localhost ks_mirror]# systemctl restart httpd.service   ##重启服务
[root@localhost ks_mirror]# systemctl restart cobblerd.service

10、登陆web管理网页
Cobbler自动化无人值守安装
输入用户名和密码便可登录
Cobbler自动化无人值守安装