cobbler是一个可以实现批量安装系统的Linux应用程序。它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本。

一、系统环境准备及其下载cobbler

1、系统环境
  开启两个网卡。一个仅主机模式,一个桥接模式,主机模式对内提供cobbler服务。
  内网IP:192.168.182.128/24 #用来对内通信,提供cobbler服务
  外网IP:192.168.4.190/24 #连接外网
2、关闭安全服务
  #关闭防火墙
  #关闭selinux
3、下载cobbler及其所需服务程序

yum安装cobbler需要使用下面两个源,大家可以复制下面的代码到自己的yum仓库保存即可

[epel]
name=epel
enabled=
gpgcheck=
baseurl=https://mirrors.aliyun.com/epel/7/x86_64/ [centos]
name=centos base
enabled=
gpgcheck=
baseurl=http://mirrors.163.com/centos/7/os/x86_64/
# yum clean all #清理缓存
# yum makecache #建立缓存
# yum install cobbler dhcp tftp-server xinetd syslinux httpd -y

syslinux: 提供pxelinux.0这个文件 ,pxelinux.0引导文件引导vmlinux和initrd两个启动文件

二、配置相关服务

第一步:配置DHCP服务

# cat /etc/dhcp/dhcpd.conf
subnet 192.168.182.0 netmask 255.255.255.0 {
range 192.168.182.150 192.168.182.155;
default-lease-time ;
max-lease-time ;
filename "pxelinux.0";
}

# systemctl restart dhcpd

# systemctl enable dhcpd #(开机自启)

第二步:配置tftp
# cat /etc/xinetd.d/tftp

service tftp
{
disable = no #yes 改为no
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -B -v -s /var/lib/tftpboot
per_source =
cps =
flags = IPv4
}

第三步:启动cobbler

# systemctl start cobblerd
第四步:启动httpd
# systemctl restart httpd
第五步:检查cobbler配置
# cobbler check

同步的时候可能会报8或者9个问题,对于这些问题的解决方法如下,个别问题可以不影响cobbleer使用

修改配置文件/etc/cobbler/settings
问题一:
  cobbler文件默认是127.0.0.1本地回环地址,需要更改为提供cobbler服务的ip地址 192.168.182.128,在384行

server: 192.168.182.128

问题二:
  netx_server也是默认本地127.0.0.1回环地址,需要修改为提供cobbler服务的ip地址 192.163.182,128,在272行出

next_server: 192.168.182.128

问题三:
可以忽略

问题四:
启动rsync即可
# systemctl restart rsyncd
# systemctl enable rsyncd

问题五:
可以忽略
问题六:
更改密码
# openssl passwd -1 -salt "123" "123456"
$1$123$7mft0jKnzzvAdU4t0unTG1

并把新生成的加密数据填写进/etc/cobbler/settings
default_password_crypted: "$1$123$7mft0jKnzzvAdU4t0unTG1"

问题七:
  可以忽略

还有个别问题只需要执行报错内容引号里面的命令即可解决

以上问题解决之后,需要同步和重启

# systemctl restart cobblerd
# cobbler sync

再次检查是否已经更改完成
# cobbler check

第六步:挂载光盘并进行数据导入
1、挂载光盘
# mount /dev/cdrom /mnt/
2、数据导入(需要一些时间)
cobbler import --path=/mnt --name="centos7.5"
3、查看distro
# cobbler distro list
4、查看profile
# cobbler profile list
distro : 发行版, 就是我们安装什么版本的linux操作系统的名称 一会我们会导入一个 distro.
profile : 类似于一个 配置文件,类似于你的 bash_profile, 里面包含你可以添加 kernel 参数,对应的kickstart 文件 以及 此profile 对应的 distro 等等.
第七步:准备kickstart文件
在root目录下找到ks文件,并移动到/var/lib/cobbler/kickstarts/到目录下改名为ks.cfg
1、# cp anaconda-ks.cfg /var/lib/cobbler/kickstarts/ks.cfg/

2、# vim /var/lib/cobbler/kickstarts/ks.cfg

#只需要更改一行内容

#version=DEVEL
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
url --url=http://192.168.83.133/cobbler/ks_mirror/centos7.5/ #这里需要更改为repodata所在的http地址
# Use graphical install
graphical
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=sda
# Keyboard layouts
keyboard --vckeymap=cn --xlayouts='cn'
# System language
lang zh_CN.UTF- # Network information
network --bootproto=dhcp --device=ens33 --onboot=off --ipv6=auto --no-activate
network --hostname=localhost.localdomain

第八步:自定义profile
# cobbler profile add --distro=centos7.0-x86_64 --name=centos7.0_ken --kickstart=/var/lib/cobbler/kickstarts/ks.cfg
# cobbler sync进行同步

第九步:查看profile
# cobbler profile list
第十步:删除不包含ks文件的profile(也可以不删除)
# cobbler profile remove --name=centos7.5-x86_64
# cobbler profile list

三、cobbler自动化安装测试

新建一个虚拟机,需要和cobbler服务器所在同一个虚拟网络中即与我们上面设置的cobbler服务器的主机模式。内存需要3个G以上。

注:如果需要安装不同版本的系统只需要重新插入其他版本的镜像并进行挂载,即从第六步重新开始执行以下的操作,只是ks文件的内容不同需要重新更改ks文件

cobbler一键批量安装系统的更多相关文章

  1. 基于CentOS7系统部署cobbler批量安装系统(week3_day5_part1)-技术流ken

    前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 系统环境准备及其下载cobbler ...

  2. 末学者笔记--Centos7系统部署cobbler批量安装系统

      [前言]: cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 系统环境准备及其下载cob ...

  3. cobbler批量安装系统使用详解-技术流ken

    前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 系统环境准备及其下载cobbler ...

  4. Cobbler全自动批量安装部署Linux系统

    说明: Cobbler服务器系统:CentOS 5.10 64位 IP地址:192.168.21.128 需要安装部署的Linux系统: eth0(第一块网卡,用于外网)IP地址段:192.168.2 ...

  5. 基于Centos7系统部署cobbler批量安装系统

    前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本 系统环境的准备及下载cobbler 一 ...

  6. cobbler批量安装系统

    cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 1.系统环境准备及其下载cobbler 1 ...

  7. kvm cobbler无人值守批量安装操作系统

    kvm cobbler无人值守批量安装操作系统 cobbler:一个自动网络安装系统的工具,集成PEX.dhcp.dns.tftpd.sync等服务.可以供大家管理安装操作系统 kvm:Linux系统 ...

  8. pxe+kickstart自动化批量安装系统详解-技术流ken

    前言 pxe+kickstart是一款可以实现自动化批量安装系统的服务,比较经典,下面将详细介绍此服务的安装和使用. 系统环境准备 系统版本:CentOS release 6.7 (Final) 内网 ...

  9. (转)Cobbler无人值守批量安装Linux系统

    本文目录: 1.1 pxe安装系统 1.2 cobbler基本介绍 1.3 安装和配置cobbler 1.3.1 安装cobbler 1.3.2 配置dhcp和tftp 1.4 cobbler从本地光 ...

随机推荐

  1. 二叉树(BT)相关

    1.same tree /** * Definition for binary tree * public class TreeNode { * int val; * TreeNode left; * ...

  2. 20155324《网络对抗》Exp06 信息搜集与漏洞扫描

    20155324<网络对抗>Exp06 信息搜集与漏洞扫描 实践内容 各种搜索技巧的应用 DNS IP注册信息的查询 基本的扫描技术:主机发现.端口扫描.OS及服务版本探测.具体服务的查点 ...

  3. 微信小程序中使用 <web-view> 内嵌 H5 时,登录问题的处理方法

    在微信小程序的开发中,经常遇到需要使用 <web-view></web-view> 内嵌 H5 的需求.在这种需求中比较棘手的问题应该就是登录状态的判断了,小程序中的登录状态怎 ...

  4. 提交变更(git commit)

    当所有的变更都进入暂存区,就可以使用git commit进行提交了 $ git commit 执行这句话后,会弹出文本编辑区(自己配置的或默认的),文本编辑器可能会显示如下内容 # Please en ...

  5. kafka单机安装和启动

    1.下载并解压到/usr/local/src目录下 2.运行kafka需要使用Zookeeper,先启动Zookeeper,如果没有Zookeeper,可以使用kafka自带打包和配置好的Zookee ...

  6. 使用freemarker模板引擎生成word文档的开发步骤

    1.准备模板文档,如果word文档中有表格,只保留表头和第一行数据:2.定义变量,将word文档中的变量用${var_name}替换:3.生成xml文件,将替换变量符后的word文档另存为xml文件: ...

  7. 统计信息不准导致sql性能下降

    某局的预生产系统一条sql语句20分钟执行完,上线以后2个小时没执行出来,在预生产执行计划是hash join在生产是nested loop,通过awr基表wri$_optstat_tab_histo ...

  8. c编译步骤

    这几天查编译问题时,在头文件中加入某些错误信息,却发现没有编译报错.想了一下可能是,还未进行到语法分析阶段. 这里再了解一下编译过程. 一般而言代码编译包含了四个阶段的处理,即预处理(也称预编译,Pr ...

  9. jmeter beanshell遍历接口返回的json数组

    import java.util.LinkedHashMap; import com.jayway.jsonpath.JsonPath; import com.jayway.jsonpath.Pred ...

  10. 题解 P5315 【头像上传】

    本题就是按照题目模拟, 只是要注意一些细节问题. 看代码注释 #include<bits/stdc++.h> using namespace std; int n,l,g,i; int m ...