前言
在上一篇博文《cobbler批量安装系统使用详解-技术流ken》中已经详细讲解了cobbler的使用以及安装,本篇博文将会使用单台cobbler实现自动化批量安装不同版本的操作系统。
pxe+kickstart单台服务器只能安装一个版本的操作系统,这就造成了实际工作中的局限性。
系统环境准备
- 一台安装好cobbler的服务器
- 准备centos7.3版本的镜像
添加centos7镜像
关掉虚拟机,在虚拟机CD/DVD选项中选择准备好的centos6镜像。
挂载光盘
把centos7的光盘挂载到/mnt下,并检查是否挂载成功。
[root@ken ~]# mount /dev/cdrom /mnt
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@ken ~]# ls /mnt
CentOS_BuildTag EULA images LiveOS repodata RPM-GPG-KEY-CentOS-Testing-7
EFI GPL isolinux Packages RPM-GPG-KEY-CentOS-7 TRANS.TBL
cobbler导入镜像
复制过程会有点慢,大概三四分钟左右,等待完成即可。
[root@ken ~]# cobbler import --path=/mnt --name=centos7.3
导入完成,进行同步。
[root@ken ~]# cobbler sync
制作ks文件
不同版本的系统要求的ks文件内容都是不同的,下面这个7.3版本系统的ks文件是我根据7.5修改的
大家如果需要一个ks文件。可以事先使用该镜像下载一个系统出来,获取到该ks文件。
[root@ken ~]# cat /var/lib/cobbler/kickstarts/ks.cfg
#version=DEVEL
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
url --url=http://192.168.182.152/cobbler/ks_mirror/centos7.3/ #这里需要修改成与上面centos7.3定义的名称一致
# Use graphical install
graphical
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=sda
# Keyboard layouts
keyboard --vckeymap=us --xlayouts='us'
# System language
lang en_US.UTF- # Network information
network --bootproto=dhcp --device=ens33 --ipv6=auto #这里的--no-active需要删掉
network --hostname=localhost.localdomain # Root password
rootpw --iscrypted $$7zu1wIUDgBGEFV1Y$KsLVeaGmyN92.QHr1fqKdTqPu8PDmd8K9V/s3Ru8NxE53NZz4gQKsmP6K0udcXVvDtponekICYUwBD7tYZJqU/
# System services
services --disabled="chronyd"
# System timezone
timezone Asia/Shanghai --isUtc --nontp
# System bootloader configuration
bootloader --location=mbr --boot-drive=sda
autopart --type=lvm
# Partition clearing information
clearpart --none --initlabel %packages
@^minimal
@core %end %addon com_redhat_kdump --disable --reserve-mb='auto' %end #%anaconda #从这里开始下面注释掉
#pwpolicy root --minlen= --minquality= --notstrict --nochanges --notempty
#pwpolicy user --minlen= --minquality= --notstrict --nochanges --emptyok
#pwpolicy luks --minlen= --minquality= --notstrict --nochanges --notempty
#%end
CentOS 6.x 的一个kickstart配置文件示例:
# Kickstart file automatically generated by anaconda. #version=RHEL6.
install
url --url=http://mirrors.ustc.edu.cn/centos/6.7/os/x86_64
#url --url=http://mirrors.163.com/centos/6.7/os/x86_64
#url --url=http://mirrors.aliyun.com/centos/6.7/os/x86_64 lang en_US.UTF-
keyboard us
network --device eth0 --bootproto dhcp --noipv6
#network --device eth0 --bootproto dhcp --ipv6 dhcp
rootpw --iscrypted $$45lFuCoyFZwpy3Gn$kvCuoEVXyK0q6ow7qBmo9vaEyajunJ62LR5HlmAKRAOpK/Z2ZyrSSbaPsSHnhZU2P1MF5e.QDu2wkOOo661It.
zerombr
clearpart --all --initlabel
autopart
firewall --service=ssh
authconfig --enableshadow --passalgo=sha512 --enablefingerprint
selinux --enforcing
timezone --utc America/New_York
bootloader --location=partition --driveorder=sda --append="rhgb quiet"
skipx
text
cmdline
poweroff %packages @base
nfs-utils
NetworkManager
%end
自定义制作profile
自定义profile,指定kickstart文件。
[root@ken ~]# cobbler profile add --distro=centos7.-x86_64 --kickstart=/var/lib/cobbler/kickstarts/ks.cfg --name=centos7.3_ken
制作完成,进行同步。
[root@ken ~]# cobbler sync
查看所有的profile
[root@ken ~]# cobbler profile list
centos7.-x86_64
centos7.3_ken
centos7.5_ken
可以发现,我们现在已经有了不同版本的系统了。
删除没有ks文件的profile
[root@ken ~]# cobbler profile remove --name=centos7.-x86_64
[root@ken ~]# cobbler profile list
centos7.3_ken
centos7.5_ken
新建虚拟机测试
现在我们可以根据工作需要可以选择不同版本的系统了。
我们选择我们刚才创建的第1个centos7.3系统进行测试安装。
开始安装软件包
安装完成。
故障排除
在安装的时候如果出现了这个错误,需要把内存加到两个G以上即可。
进阶!基于CentOS7系统使用cobbler实现单台服务器批量自动化安装不同版本系统(week3_day5_part2)-技术流ken的更多相关文章
-
cobbler单台服务器实现批量自动化安装不同版本系统-技术流ken
前言 在上一篇博文<cobbler批量安装系统使用详解-技术流ken>中已经详细讲解了cobbler的使用以及安装,本篇博文将会使用单台cobbler实现自动化批量安装不同版本的操作系统. ...
-
解放双手—Cobbler批量自动化部署多版本系统
1 Cobbler 介绍 Cobbler 是一个 Linux 服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装.重装物理服务器和虚拟机,同时还可以管理 DHCP,DNS 等.Cobble ...
-
实战!基于lamp安装Discuz论坛-技术流ken
简介 我前面的博客已经详细介绍了lamp采用yum安装以及编译安装的方式,这篇博客将基于yum安装的lamp架构来实战安装Discuz论坛,你可以任选其一来完成. 系统环境 centos7.5 服务器 ...
-
高性能网络编程(一):单台服务器并发TCP连接数到底可以有多少
高性能网络编程(一):单台服务器并发TCP连接数到底可以有多少 阅读(81374) | 评论(9)收藏16 淘帖1 赞3 JackJiang Lv.9 1 年前 | 前言 曾几何时我 ...
-
【 Linux 】单台服务器上并发TCP连接数
单台服务器上并发TCP连接数 问题:一台服务器到底能够支持多少TCP并发连接呢? 1. 文件描述符限制: 对于服务器来说,每一个TCP连接都要占用一个文件描述符,一旦文件描述符使用完,新的 ...
-
【 Linux 】单台服务器上并发TCP连接数(转)
单台服务器上并发TCP连接数 问题:一台服务器到底能够支持多少TCP并发连接呢? 1. 文件描述符限制: 对于服务器来说,每一个TCP连接都要占用一个文件描述符,一旦文件描述符使用完,新的 ...
-
网络编程释疑之:单台服务器上的并发TCP连接数可以有多少
曾几何时我们还在寻求网络编程中C10K问题的解决方案,但是现在从硬件和操作系统支持来看单台服务器支持上万并发连接已经没有多少挑战性了.我们先假设单台服务器最多只能支持万级并发连接,其实对绝大多数应用来 ...
-
Memcached解决单台服务器故障问题
<beitmemcached> <add key="name1" value="server1:port" /> <add key ...
-
单台服务器最大tcp连接
如果对服务器进行压力测试,常常出现这种情况 tcp连接数过多 netstat -an windows查看tcp连接数 那么怎么增加单台服务器的最大连接数呢? 最简单的办法,增加内 ...
随机推荐
-
c++保留小数问题,如有不足或错误,欢迎指出
#include<iostream> #include <iomanip> using namespace std; int main() { double a; cin> ...
-
被称为同步神器的 BTSync,你可以怎么用?
在这高速运作的信息化时代,使用云端来衔接工作和生活的点滴已是寻常事.可你是否曾扪心自问过:用各大云端备份自己的信息资料,真的安全放心吗? 毫不夸张的说,其实恶意代码和漏洞早已和你如影随形.你甚至都不用 ...
-
并行编程之多线程共享非volatile变量,会不会可能导致线程while死循环
背景 大家都知道线程之间共享变量要用volatilekeyword.可是,假设不用volatile来标识,会不会导致线程死循环?比方以下的伪代码: static int flag = -1; void ...
-
Java学习之对象实例化
一个对象实例化过程:Person p = new Person();1,JVM会读取指定的路径下的Person.class文件,并加载进内存,并会先加载Person的父类(如果有直接的父类的情况下). ...
-
选课 树形DP+多叉树转二叉树+dfs求解答案
问题 A: 选课 时间限制: 1 Sec 内存限制: 128 MB 题目描述 大 学里实行学分.每门课程都有一定的学分,学生只要选修了这门课并考核通过就能获得相应的学分.学生最后的学分是他选修的各门 ...
-
python request Payload 数据处理
普通的http的post请求的请求content-type类型是:Content-Type:text/html; charset=UTF-8, 而另外一种形式request payload,其Cont ...
-
ORB-SLAM2(3) ROS下实时跑ORB_SLAM2
Step1 : 运行内核 roscore Step2 : 启动相机 cd catkin_ws/src/usb_cam/launch #进入usb_cam驱动的安装目录 roslaunch my_cam ...
-
SqlServer基础语句练习(一)
学了不少东西,感觉自己的sql语句还是很不好,从基础学起吧. 来一段sql脚本: create database tongji go use tongji go create table studen ...
-
Linux 系统内核的调试
http://www.ibm.com/developerworks/cn/linux/l-kdb/index.html 本文将首先介绍 Linux 内核上的一些内核代码监视和错误跟踪技术,这些调试和跟 ...
-
The way to Go(5): 文件名、关键字与标识符
Reference: Github: Go Github: The way to Go 文件名 1.后缀名:.go 2.小写字母 3._分割名称 4.不包含空格或其他特殊字符 标识符 有效的标识符必须 ...