Cobbler实现CentOS自动安装

大纲

  • 前言
  • Cobbler介绍
  • 实验拓扑
  • 实验步骤
  • 测试
  • 总结

前言

在生产环境中我们可能需要批量安装操作系统, 我们当然可以一台一台的安装, 但是运维工作应该标准化、流程化、自动化,降低对特定人员的依赖,节省专业人员的宝贵时间和精力,这样才能有更多的时间去学习新的知识和提升。 –转自: 陈明乾 的BLOG

那么我们就应该使用运维工具来帮助我们快速、批量的自动安装。 现在较为流行的解决方案有Cobbler, 这篇我们介绍了Cobbler实现批量自动安装CenOS 6.7的步骤

Cobbler介绍

Cobbler是一款实现自动构建和部署系统的软件, Cobbler通过自动化实现来简化管理员的操作, 并可以通过模板重复部署, Cobbler还能够实现虚拟化部署

Cobbler的工作组件

实验拓扑

实验步骤

安装配置dhcp和tftp

dhcp配置

[[email protected] ~]# yum install dhcp tftp-server -y
[[email protected] ~]# vim /etc/dhcp/dhcpd.conf option domain-name "anyisalin.com";
option domain-name-servers 172.16.1.1;
subnet 172.16.1.0 netmask 255.255.255.0 {
        range 172.16.1.10 172.16.1.20;
        option routers 172.16.1.1;
}
next-server 172.16.1.7;
filename="pxelinux.0";

tftp和sync配置

[[email protected] ~]# vim /etc/xinetd.d/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    #设置为no
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}

[[email protected] ~]# vim /etc/xinetd.d/rsync service rsync
{
        disable = no
        flags           = IPv6
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/bin/rsync
        server_args     = --daemon
        log_on_failure   = USERID
}

启动tftp、rsync和dhcp

[[email protected] ~]# service dhcpd startStarting dhcpd:                                            [  OK  ]

[[email protected] ~]# service xinetd startStarting xinetd:                                           [  OK  ]

安装Cobbler

我们需要epel源
[[email protected] ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo[[email protected] ~]# yum install cobbler cobbler-web pykickstart debmirror -y

启动并测试Cobbler

[[email protected] ~]# service cobblerd startStarting cobbler daemon:                                   [  OK  ]

[[email protected] ~]# pkill cobbler   #不知道为什么, 第一次启动要先kill掉进程
[[email protected] ~]# service cobblerd start  #重新启动Starting cobbler daemon:                                   [  OK  ]

修改cobbler配置文件

[[email protected] ~]# vim /etc/cobbler/settings   #修改以下两项
server: 172.16.1.7
next_server: 172.16.1.7
default_password_crypted: "$1$13b50228$tdXYYYr9hhXqkusGMIOVF/"  #指定默认的密码, 使用openssl passwd -1 -salt `openssl rand -hex 4`生成

下载PXE引导文件

[[email protected] ~]# cobbler get-loaders #如果不能连接互联网, 则先安装syslinux, 然后复制/usr/share/syslinux/{pxelinux.0,memu.c32}等文件至/var/lib/cobbler/loaders/目录中;
[[email protected] ~]# cp /var/lib/cobbler/loaders/* /var/lib/tftpboot/  #将loaders目录下的文件复制到tftproot

提供软件仓库

[[email protected] ~]# mount /dev/sr0 /mnt/    #挂载本地光盘 ;

提供ks文件

[[email protected] ~]# grep -v  \\\‘^[[:space:]]*#\\\‘ ks2.cfg   #按自己需要自行修改firewall --enabled --service=ssh
install
url --url=$treerootpw --iscrypted $1$PN/zByoq$p3JWVhjzfPwZ6la3k.LED.
auth  --useshadow  --passalgo=sha512
graphical
firstboot --disable
keyboard us
lang en_US
selinux --enforcing
logging --level=info

timezone  America/New_York
network  --bootproto=dhcp --device=eth0 --onboot=on
bootloader --append="crashkernel=auto rhgb quiet" --location=mbr --driveorder="sda"zerombr
clearpart --all --initlabel 
part /boot --fstype="ext4" --size=200part / --fstype="ext4" --grow --size=1%packages --nobase
@core

%end

添加distro和profile

[[email protected] ~]# cobbler import --name=centos-6.7 --path=/mnt/   #出现TASK COMPLETE代表成功了[[email protected] ~]# cobbler distro list  #可以查看到当前的distro
   centos-6.7-x86_64

[[email protected] ~]# cp ks2.cfg /var/lib/cobbler/kickstarts/  #将ks文件复制到指定目录
[[email protected] ~]# cobbler profile add --name cenos-6.5-minal --distro=centos-6.7-X86_64 --kickstart=/var/lib/cobbler/kickstarts/ks2.cfg  #添加profile
[[email protected] ~]# cobbler profile list   #查看profile
   cenos-6.5-minal
   centos-6.7-x86_64##由于centos7做法差不多, 所以就不演示了

测试

总结

使用Cobbler安装系统提高了我们运维工作的效率, 这样才能有更多的时间去学习新的知识和提升。

文章内容浅尝辄止, 大家有更好的见解可以提出
作者: AnyISaIln QQ: 1449472454
感谢: MageEdu

时间: 2024-11-06 07:18:02

Cobbler实现CentOS自动安装的相关文章

cobbler实现无人值守自动安装

Cobbler简介 使用cobbler,第一件事就是定义其distros 指的是定义一个特殊发行版的内核和init文件,这意味着我们要使用独立运行系统之外的独立引导内核来实现,也就是说要启动这个操作系统,首先加载的是init和内核文件,在我们真正启动系统之后initrd和内核则只要不重启则不会被使用,所以distros 主要是用来借助于外在的内核和initrd进行启动系统,而后通过其装置根进行部署 定义distros的方式有两种 ·自己准备外部的内核和initrd 用来引导一些特殊的映像文件 ·

Cobbler实现开机自动安装CentOS 7.1 X86_64

1.安装准备 [[email protected] ~]# yum install cobbler cobbler-web dhcp tftp-server pykickstart  httpd -y [[email protected] ~]# /etc/init.d/httpd restart 2.安装配置Cobbler [[email protected] ~]# /etc/init.d/cobblerd start [[email protected] ~]# cobbler check

linux cobbler 自动安装centos6与centos7系统

1.1 Cobbler介绍 Cobbler 是一个免费开源系统安装部署软件,用于自动化网络安装操作系统. Cobbler 集成了 DNS, DHCP, 软件包更新,带外管理以及配置管理,方便操作系统安装自动化. Cobbler 可以支持PXE启动, 操作系统重新安装,以及虚拟化客户机创建,包括Xen, KVM or VMware.  Cobbler 透过koan程序以支持虚拟化客户机安装. Cobbler 可以支持管理复杂网路环境,如建立在链路聚合以太网的桥接环境. 1.2 cobbler 服务

使用kickstart自动安装CentOS 6.6系统

1. anaconda centos系统安装是通过anaconda程序完成的.那anaconda是如何启动的呢?anaconda如果是运行在硬件上,bootloader直接将其加载就完事了.但如果是这样那anaconda就要具备内核的所有功能.所以anaconda只能是运行在操作系统上,但是此时操作系统还没有安装,那它怎么运行呢?我们一般使用光盘安装系统,光盘可以模拟成磁盘,里面也有0磁道0扇区以及bootloader. bootloader用于加载位于光盘某个目录下的已经编译好的内核,再加载r

cobbler自动安装操作系统

cobbler介绍 快速网络安装linux操作系统的服务,支持众多的Linux发行版: Red Hat, Fedora,CentOS,Debian,Ubuntu和SuSE 也可以支持网络安装windows PXE的二次封装,将多种安装参数封装到一个菜单 Python编写 提供了CLI和Web的管理形式 cobbler软件包来源于epel源中的软件包 cobbler 服务集成 cobbler可以和以下服务一起集成来对外提供服务  但是cobbler不能代替以下服务 PXE DHCP rsync H

基于 cobbler 实现自动安装 linux 系统

使用 cobbler 实现自动安装 centos 6.7系统 1.yum install cobbler -y 安装 cobbler ,有依赖关系,会自动把 TFTP .HTTP 服务安装上:cobbler 是基于 epel 源,需要连网 2.yum install dhcp -y 安装 DHCP 服务 3.systemctl start httpd tftp cobblerd 启动 HTTP .TFTP.cibbler ,DHCP 的配置文件不配置的话,是无法启动服务的 4.systemctl

cobbler自动安装

Cobbler无人值守 环境准备[[email protected] ~]# cat /etc/redhat-releaseCentOS release 6.9 (Final)[[email protected] ~]# uname -r2.6.32-696.el6.x86_64[[email protected] ~]# getenforceDisabled[[email protected] ~]# /etc/init.d/iptables statusiptables: Firewall

CentOS 7 DHCP+PXE+Apache+Kickstart 自动安装

关闭selinux,关闭防火墙,配置网络 getenforce setenforce 0 vi /etc/selinux/config systemctl stop firewalld.service systemctl disable firewalld.serivce 挂载光盘,备份文件,创建repo文件,清除和重建缓存 mkdir /mnt/cdrom mount /dev/cdrom /mnt/cdrom mkdir /etc/yum.repos.d/backup/ mv /etc/yu

Cobbler自动安装的Linux系统ssh无法进入

Linux ssh登陆老提示“permission denied,please try again” ,但是iptables已经关掉了 修改/etc/ssh/sshd_config文件.找如下的一句 #PermitRootLogin yes 改为如下的 PermitRootLogin yes 注意,要把前面的#号去掉. 重启sshd服务器 # service sshd restart Cobbler自动安装的Linux系统ssh无法进入,布布扣,bubuko.com