Cobbler无人值守安装linux系统
简介
Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等。
Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发使用。
Cobbler是较早前的kickstart的升级版,优点是比较容易配置,还自带web界面比较易于管理。
Cobbler内置了一个轻量级配置管理系统,但它也支持和其它配置管理系统集成,如Puppet,暂时不支持SaltStack。
kickstart基本原理拓扑图


cobbler和kickstart原理是一致的,只是个人认为cobbler比较好用
搭建
直接给命令了,红字(不包括前边的#,#只是代表命令行)
环境准备
系统版本CentOS7.2
# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
关闭selinux
# getenforce
Disabled
关闭防火墙
# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
# hostname -I #本机IP地址
192.168.110.18
yum源
# curl -o /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7.repo
# curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
使用yum安装cobbler
# yum -y install cobbler cobbler-web dhcp tftp-serverpykickstart httpd
启动http和cobbler
# systemctl start httpd.service
# systemctl start cobblerd.service
进行语法检查
# cobbler check
出现8个错,英文的让你修改配置
解决报错
# cp /etc/cobbler/settings{,.ori}
# sed -i 's/server: 127.0.0.1/server: 192.168.110.18/'/etc/cobbler/settings
# sed -i 's/next_server: 127.0.0.1/next_server: 192.168.110.18/'/etc/cobbler/settings
# sed -i 's/manage_dhcp: 0/manage_dhcp: 1/'/etc/cobbler/settings #防止重装
# sed -i 's/pxe_just_once: 0/pxe_just_once: 1/'/etc/cobbler/settings #修改dhcp模板
# sed -ri "/default_password_crypted/s#(.*:).*#\1\" `openssl passwd -1 -salt cobbler '123456'` \"#"/etc/cobbler/settings ###123456是root密码
# sed -i 's#yes#no#' /etc/xinetd.d/tftp
配置dhcp 照着改吧
# vim /etc/cobbler/dhcp.template
subnet 192.168.110.0 netmask 255.255.255.0 {
optionrouters 192.168.110.1; #网关
optionsubnet-mask 255.255.255.0; #子网掩码
rangedynamic-bootp 192.168.110.33 192.168.110.99; ##自动分配的ip段
default-lease-time 21600;
max-lease-time 43200;
:wq #改完了保存退出
重启
# systemctl restart rsyncd tftp.socket cobblerd
# systemctl enable rsyncd tftp.socket cobblerd
启动rsync服务
# systemctl start rsyncd.service
# systemctl enable rsyncd.service
同步 (每次改完配置都要同步)
# cobbler sync
下载包所需的软件包(cobbler下载自己所需要的文件)
# cobbler get-loaders
# ls /var/lib/cobbler/loaders
COPYING.elilo elilo-ia64.efi menu.c32 yaboot
COPYING.syslinux grub-x86_64.efi pxelinux.0
COPYING.yaboot grub-x86.efi README
debian相关无需修改(不用debian就不需要管了)
再次检查
# cobbler check
The following are potential configurationitems that you may want to fix:
1 : debmirror package is not installed, itwill be required to manage debian deployments and repositories
2 : fencing tools were not found, and arerequired to use the (optional) power management features. install cman orfence-agents to use them
Restart cobblerd and then run 'cobblersync' to apply changes.
重启所有服务
systemctl restart httpd cobblerd dhcpd rsyncdtftp.socket
cobbler安装完成,下面进行web界面的操作。
cobbler的web及界面操作
浏览器访问https://192.168.110.18/cobbler_web
注意CentOS7中cobbler只支持https访问。
账号密码默认均为cobbler

操作说明--导入镜像
在虚拟机上添加上镜像
vmware:

挂载上镜像
# mount /dev/cdrom /mnt/
mount: /dev/sr0 is write-protected,mounting read-only
# df -h |grep mnt
/dev/sr0 4.3G 4.3G 0 100% /mnt
进行导入镜像
选择ImportDVD 输入Prefix(命名),Arch(架构),Breed(版本),Path(镜像的路径)

# ls /var/www/cobbler/ks_mirror/
CentOS7x86_64 config
导入过程使用rsync进行导入,三个进程消失表示导入完毕
# ps -ef |greprsync

创建一台空白虚拟机,进行测试网路安装
注意:虚拟机的内存不能小于2G,网卡的配置要保证网络互通
启动虚拟机
启动虚拟机即可发现会有cobbler的选择界面

此界面修改
# more /etc/cobbler/pxe/pxedefault.template
DEFAULT menu
PROMPT 0
MENU TITLE Cobbler | http://cobbler.github.io/
TIMEOUT 100
TOTALTIMEOUT 6000
ONTIMEOUT $pxe_timeout_profile
MENU DEFAULT
$pxe_menu_items
LABEL local
MENU LABEL(local)
LOCALBOOT -1
MENU end
定制化安装操作系统
添加内核参数
查看导入的镜像,点击edit

在内核参数中添加net.ifnames=0biosdevname=0
能够让显示的网卡变为eth0 ,而不是CentOS7中的ens33

编写ks文件

参考
install
url --url=$tree
text
lang en_US.UTF-8
keyboard us
zerombr
bootloader --location=mbr --driveorder=sda--append="crashkernel=auto rhgb quiet"
#Network information
$SNIPPET('network_config')
#network --bootproto=dhcp --device=eth0--onboot=yes --noipv6 --hostname=CentOS7
timezone --utc Asia/Shanghai
authconfig --enableshadow --passalgo=sha512
rootpw --iscrypted $default_password_crypted
clearpart --all --initlabel
part /boot --fstype xfs --size 1024
part swap --size 2048
part / --fstype xfs --size 1 --grow
firstboot --disable
selinux --disabled
firewall --disabled
logging --level=info
reboot
%pre
$SNIPPET('log_ks_pre')
$SNIPPET('kickstart_start')
$SNIPPET('pre_install_network_config')
# Enable installation monitoring
$SNIPPET('pre_anamon')
%end
%packages
@^minimal
@compat-libraries
@core
@debugging
@development
bash-completion
chrony
dos2unix
kexec-tools
lrzsz
nmap
sysstat
telnet
tree
vim
wget
lsof
net-tools
%end
%post
systemctl disable postfix.service
%end
路径为/var/lib/cobbler/kickstarts/
小技巧:如果想定义开机执行命令在倒数第二行添加
设置profile

选择刚才创建的cfg文件
自定义安装系统
选择systems 创建一个新的系统




以上的所有配置完成后,点击Save进行保存



开启虚拟机

回车~

一键装机到此结束
Cobbler无人值守安装linux系统的更多相关文章
- 如何无人值守安装linux系统(上)
如何开始 Linux 的无人值守安装 一.预备知识: I.什么是PXE PXE并不是一种安装方式,而是一种引导方式.进行PXE安装的必要条件是要安装的计算机中包含一个PXE支持的网卡(NIC),即网卡 ...
- 无人值守安装linux系统
需要使用到的服务:PXE + DHCP+TFTP+ Kickstart+ FTP KickStart是一种无人职守安装方式 执行 PXE + KickStart安装需要准备内容: • DHCP 服务 ...
- (转)Cobbler无人值守批量安装Linux系统
本文目录: 1.1 pxe安装系统 1.2 cobbler基本介绍 1.3 安装和配置cobbler 1.3.1 安装cobbler 1.3.2 配置dhcp和tftp 1.4 cobbler从本地光 ...
- CentOS7.x安装cobbler无人值守安装系统
CentOS7.x cobbler无人值守安装 cobbler介绍 自打若干年前 Red Hat,推出了 Kickstart,不再需要刻了光盘一台一台地安装 Linux,只要搞定 PXE.DHCP.T ...
- 其他综合-Cobbler无人值守安装系统 CentOS 7
Cobbler 无人值守安装系统 CentOS 7 1.实验描述 1.1 概述 作为运维,在公司经常遇到一些机械性重复工作要做,例如:为新机器装系统,一台两台机器装系统,可以用光盘.U盘等介质安装,1 ...
- Vmware部署Linux无人值守安装Centos7系统
Linux - 无人值守安装服务 # 需求分析 - 使用光盘镜像来安装 Linux 系统的方式; 坦白讲, 该方法适用于只安装少量 Linux 系统的情况, 如果生产环境中有数百台服务器都需安装系统, ...
- (转)COBBLER无人值守安装
COBBLER无人值守安装 说在最前面的话 在看Cobbler之前请大家先看一下Kickstart无人值守安装,了解一下Cobbler的实现原理.但是Cobbler是独立的,不需要先安装Kicksta ...
- Linux:U盘安装Linux系统
前天一个同学找我帮忙安装Linux系统,没有光盘,也不想在虚拟机里安装,在此情况下,我就采用U盘方式来安装Linux系统了.又想到还有其他人可能也不会 使用U盘安装系统,这里就作一个简单的介绍. 1. ...
- 虚拟机安装Linux系统图文教程
虚拟机安装Linux系统图文教程 | 浏览:523 | 更新:2014-09-16 15:31 1 2 3 4 5 6 7 分步阅读 Linux系统的安装 工具/原料 VMware 9.0 虚拟机 L ...
随机推荐
- Oracle EBS不能正常启动的解决方案 > Jinitiator 乱码
问题1:使用IE浏览器(IE6 IE7 IE8)可以登录EBS,但在打开EBS的WIN Form界面里,IE自动关闭或报错,或是卡住不动 原因1: oracle EBS自带安装的JInitiator ...
- Android-GsonUtil工具类
JSON解析封装相关工具类 public class GsonUtil { private static Gson gson = null; static { if (gson == null) { ...
- selenium 元素可以定位到,但是无法点击问题
报错1: selenium.common.exceptions.WebDriverException: Message: Element is not clickable at point (82, ...
- MSP430 G2553 基本时钟模块+ (Basic Clock Module+)
一.时钟源 MSP430的Basic Clock Module+支持的时钟源有: DCOCLK:内部数字控制振荡器,Internal digitally contrlled oscillator.所有 ...
- 基于docker创建的Jenkins,settings.xml文件放在哪里
如果运行容器时挂载目录如下 启动容器 docker run -itd -p 8080:8080 -p 50000:50000 --name jenkins --privileged=true --r ...
- ASP.NET Core 2.0 in Docker on Windows Containers
安装Docker for Windows https://store.docker.com/editions/community/docker-ce-desktop-windows 要想将一个ASP. ...
- WPF带小箭头的按钮
XAML代码: <ControlTemplate x:Key="btnTpl" TargetType="RadioButton"> <Stac ...
- LOJ#6047. 「雅礼集训 2017 Day10」决斗(set)
题面 传送门 题解 这么简单一道题我考试的时候居然只打了\(40\)分暴力? 如果我们把每个点的\(a_i\)记为\(deg_i-1\),其中\(deg_i\)表示有\(deg_i\)个数的\(A_i ...
- ROS(机器人URDF模型优化)
URDF模型 xacro优化后的URDF模型 1.精简模型代码(创建宏定义,文件包含) 2.提供可编程接口(常量,变量,数学计算,条件语句) 常量定义: name:base_length的值value ...
- docker设置引用国内镜像加速
设置步骤: 1 先到daocloud.io网站注册一个账号 过程略,注册成功后,进入控制台 2 点击控制台上的加速器 拉到中间部分,有一个『主机监控程序』的文字链接,见下图: 然后选择主机类型,我用的 ...