Cobbler自动部署主机系统

简介:

Cobbler由python语言开发,是对PXE和 Kickstart以及DHCP的封装。融合很多特性,提供了CLI和Web的管理形式。更加方便的实行网络安装。同时,Cobbler也提供了API接口,使用其它语言也很容易做扩展。它不仅可以安装物理机,同时也支持kvm、xen虚拟化、Guest OS的安装。更多的是它还能结合Puppet等集中化管理软件,实现自动化的管理。

PXE 预启动执行环境(Preboot eXecution Environment,PXE,也被称为预执行环境)是让计算机通过网

卡独立地使用数据设备(如硬盘)或者安装操作系统。

Cobbler提供以下服务集成:

* PXE服务支持

* DHCP服务管理

* DNS服务管理

* 电源管理

* Kickstart服务支持

* yum仓库管理

1.安装cobbler

rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-X-Y.noarch.rpm

yum -y install httpd rsync tftp-server xinetd dhcp python-ctypes cman pykickstart

yum -y install cobbler* debmirror*

2.cobbler命令说明

cobbler check:检查cobbler配置

cobbler list:列出所有的cobbler元素

cobbler report:列出元素的详细信息

cobbler distro:查看导入的发行版系统信息

cobbler system:查看添加的系统信息

cobbler profile:查看配置信息

cobbler sync:同步cobbler配置

cobbler reposync:同步yum仓库

3.cobbler配置文件说明:

/etc/cobbler/seetings cobbler的主配置文件

/etc/cobbler/users.digest 用于web访问的用户名密码配置文件

/etc/cobbler/modules.conf 模块配置文件

/etc/cobbler/users.conf cobbler webui/web服务授权配置文件

/etc/cobbler/iso/ buildiso模板配置文件

/etc/cobbler/power 电源配置文件

/etc/cobbler/pxe pxeprofile配置模板

/etc/cobbler 此目录包含rsync,dhcp,dns,pxe,等服务的模板配置文件

4.系统镜像数据目录/var/www/cobbler

导入的系统发行版,repos镜像和kickstart文件都放置在/var/www/cobbler目录下

/var/www/cobbler/images存储所有导入发行版的kernel和initrd镜像用于远程网络启动

/var/www/cobbler/ks_mirror存储导入的发行版系统数据

/var/www/cobbler/repo_mirror 仓库存储目录

/var/log/cobbler cobbler日志文件

5.cobbler数据目录/var/lib/cobbler

/var/lib/cobbler/config/存放distros,repos,systems,和profile等信息配置文件,一般是json文件

/var/lib/cobbler/snippets存放ks文件可以导入的脚本小片段

/var/lib/cobbler/triggers存放用户定义的cobbler命令

/var/lib/cobbler/kickstarts/存放kictstart配置文件

6.配置cobbler

vim /etc/cobbler/setting

242 manage_dhcp: 1           ##启用cobbler管理DHCP功能

261 manage_rsync: 1          ##启用cobbler管理rsync功能

246 manage_dns: 0            ##启用cobbler管理dns,这里没有开启

272 next_server: 192.168.10.128    ##DHCP服务地址

292 pxe_just_once: 1          ##预防将机器中的安装循环配置为始终从网络引导

384 server: 192.168.10.128      ##cobbler服务器地址

7.配置tftp,rsync

vim /etc/xinetd.d/tftp

disable = no

vim /etc/xinetd.d/rsync

disable = no

8.启用wsgi模块:python应用程序或框架和web服务器之间的一种接口

cat  /etc/httpd/conf.d/wsgi.conf

LoadModule wsgi_module modules/mod_wsgi.so

9.生成cobbler安装系统root的初始密码  #  这里生成密钥和配置默认密钥,后面ks文件引用

openssl passwd -1 -salt 'random-phrase-here' 'password'

$1$random-p$sFftrCTxKKsDZ.Sdr8mDG0

vim /etc/cobbler/settings +101

101 default_password_crypted: "$1$random-p$sFftrCTxKKsDZ.Sdr8mDG0"

10.配置DHCP

vim /etc/cobbler/dhcp.template

subnet 192.168.32.0 netmask 255.255.255.0 {        # 分配所属网段

option routers             192.168.32.1;      # 默认网关

option domain-name-servers 192.168.32.200;      #dns ip

option subnet-mask         255.255.255.0;     #掩码

range dynamic-bootp        192.168.32.200 192.168.32.254;   # 分配地址段

filename                   "/pxelinux.0";   ##指定的网络引导程序

default-lease-time         21600;             #租约时间,秒

max-lease-time             43200;             #最大租约时间,秒

next-server                192.168.32.200;   #指定的TFTP服务器的地址

11。编辑dhcp配置文件,不然可能无法启动dhcp

vim /etc/dhcp/dhcpd.conf

ddns-update-style interim;

allow booting;

allow bootp;

ignore client-updates;

set vendorclass = option vendor-class-identifier;

option pxe-system-type code 93 = unsigned integer 16;

subnet 192.168.32.0 netmask 255.255.255.0{

option routers             192.168.30.200;

option domain-name-servers 192.168.30.200;

option subnet-mask         255.255.255.0;

range dynamic-bootp        192.168.30.200 192.168.32.254;

filename            "/pxelinux.0";

default-lease-time         21600;

max-lease-time             43200;

next-server                192.168.30.200;

}

启动服务:

/etc/init.d/xinetd start

/etc/init.d/dhcpd start

/etc/init.d/cobblerd start

/etc/init.d/httpd restart

12.管理cobbler

cobbler get-loaders

13.编辑debmiror

vim /etc/debmirror.conf

28 #@dists="sid";

30 #@arches="i386";

14.检查cobbler配置

cobbler check

15.运行cobbler sync命令使配置生效

16.挂载镜像

mount /dev/sr0 /media

17.导入安装文件

cobbler import --path/media/ --name=centos6.5x86_64 导出的文件在/var/www/下

18.列出导入后的配置

cobbler list  列出详细信息可以使用cobbler report

查看配置是否存在

cobbler profile find --distro=centos6.5X86_64-x86_64

19.定义ks文件

cd /var/lib/cobbler/kickstarts

cp sample.ks centos6.5X86_64-x86_64.cfg

cobbler profile edit --name=centos6.5X86_64-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos6.5x86_64.cfg

查看系统列表

cobbler distro list

20.同步Cobbler配置 ##建议先执行cobbler check进行配置检查再执行cobbler sync,修改cobbler配置后都需要执行此步骤

21.现在就可以装机了

22.现在用web界面管理cobbler服务

在浏览器输入:https://192.168.32.200/cobber_web

23.此时,编辑/etc/cobbler/module.conf,其中有一行:

module = authn_denyall   ,将这行改为module=authn_configfile,也可以改为authn_pam(这是基于系统用户进行认证)

我现在将其改为module=authn_pam

添加用户,并设置密码:useradd cobbleruser    echo "redhat" | passwd --stdin cobbleruser

然后编辑/etc/cobbler/user.conf,找到admin="",改为:admin="cobbleruser" // 这是我刚刚添加的用户

重启cobbler服务,登录web界面

Cobbler自动部署主机系统的更多相关文章

  1. Cobbler自动部署装机 轻松解决装机烦恼

    Cobbler自动部署装机一.实验准备二.搭建步骤1.导入epel源2.安装Cobbler以及其相关服务软件包3.修改Cobbler 主配置文件4.启动相关服务并关闭防火墙和selinux5.使用co ...

  2. centos7PXE和cobbler自动部署装机

    安装程序启动过程MBR:isolinux/boot.catstage2: isolinux/isolinux.bin配置文件:isolinux/isolinux.cfg 每个对应的菜单选项: 加 ...

  3. cobbler上部署centos系统修改网卡地址成eth0

    编辑cobbler的profile文件:   cobbler profile edit --name=CentOS-7.2-x86_64 --kopts='net.ifnames=0 biosdevn ...

  4. 使用Cobbler批量部署Linux和Windows:Windows系统批量安装(三)

    Tutorial: Installing Windows with cobbler (cobbler安装Windows) Windows系统的自动安装需要用到Win PE工具.流程如下: 定制Win ...

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

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

  6. 吻逗死(windows)系统下自动部署脚本(for java spring*)及linux命令行工具

    转载请注明出处:https://www.cnblogs.com/funnyzpc/p/10051647.html (^^)(^^)自動部署腳本原本在上個公司就在使用,由於近期同事需要手動部署一個Spr ...

  7. hexo自动部署到git、ftp(虚拟主机等)、云服务器的方式

    自动部署很有用,当你写完文章后,直接使用hexo d就可以自动更新你的网站了 部署到git 首先你需要在你的blog下安装git deployer插件:npm install hexo-deploye ...

  8. 企业实战|基于Cobbler实现多版本系统批量部署

    前言 运维自动化在生产环境中占据着举足轻重的地位,尤其是面对几百台,几千台甚至几万台的服务器时,仅仅是安装操作系统,如果不通过自动化来完成,根本是不可想象的.记得前面我们探究了基于PXE实现系统全自动 ...

  9. window、linux系统与linux服务器之间使用svn同步及自动部署代码的方法

    摘要: 在家用PC,在公司用办公电脑对一个项目的代码进行修改时,会遇到代码同步的问题.本文讲解了代码同步及自动部署的解决办法. 实现方法: 1.首先在linux服务器上和linux上安装svn(sud ...

随机推荐

  1. Redis 在线管理工具(phpRedisAdmin)介绍

    phpRedisAdmin is a simple web interface to manage Redis databases. phpRedisAdmin 在 Redis clients 的列表 ...

  2. 【大数据】MongoDB安装(转)

    https://note.youdao.com/share/?id=40be7f77434910e8860c5fd1ef5d24fe&type=note#/ MongoDB安装 环境 Cent ...

  3. C语言变长数组data[0]【总结】

    1.前言 今天在看代码中遇到一个结构中包含char data[0],第一次见到时感觉很奇怪,数组的长度怎么可以为零呢?于是上网搜索一下这样的用法的目的,发现在linux内核中,结构体中经常用到data ...

  4. 什么是BFC(Block Formatting Context)

    原文:https://segmentfault.com/a/1190000012221820 https://www.w3.org/TR/CSS2/visuren.html#block-formatt ...

  5. CSS3实现的苹果网站搜索框效果

    在线演示 本地下载 用CSS3相关属性生成的动态搜索框效果.

  6. HTTP协议综合

    1.用浏览器模拟各种User Agent 测试页面的时候经常需要不同的User Agent,Firefox.Chrome浏览器就可以完美的模拟出各种User Agent.User Agent Swit ...

  7. Linux shell中一些参数与变量简介

    linux中shell变量$#,$@,$0,$1,$2,$!,$$,$*,$-,$@......等很多个,很容易记错,这里再次整理一下,相关含义解释如下,并附上一个实践截图. 多看几次,多用几次,应该 ...

  8. 【转】Ant之build.xml详解

    关键字: ant build.xml Ant的概念 可能有些读者并不连接什么是Ant以及入可使用它,但只要使用通过Linux系统得读者,应该知道make这个命令.当编译Linux内核及一些软件的源程序 ...

  9. UART,SPI,IIC的一点理解

    转自:http://bbs.21ic.com/icview-253715-1-1.html UART通用异步收发器,UART是通用的异步传输模式,在它这种基础上加上其他接口或者解码器就衍生出多种异步传 ...

  10. Maven项目继承与聚合

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6628534.html  一:继承 在Java编程中,如果多个类都使用到了相同的内容.方法时,我们可以用继承的方 ...