centos 7 下 cobbler 安装

一、cobbler 介绍;

 

Cobbler 是一个系统启动服务(boot server),可以通过网络启动(PXE)的方式用来快速安装、重装物理服务器和虚拟机,支持安装不同的 Linux 发行版和 Windows。该工具使用python开发,小巧轻便(才15k行代码),使用简单的命令即可完成PXE网络安装环境的配置,同时还可以管理 DHCP,DNS,以及yum包镜像。

Linux学习,http:// linux.it.net.cn

Cobbler 使用命令行方式管理,也提供了基于 Web 的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发使用。 IT网,http://www.it.net.cn

Cobbler提供以下服务集成:
PXE服务支持
DHCP服务管理
DNS服务管理(可选bind,dnsmasq)
电源管理
Kickstart服务支持
yum仓库管理
TFTP (PXE启动时需要) Linux学习,http:// linux.it.net.cn
Apache(提供kickstart 的安装源,并提供定制化的kickstart配置) IT网,http://www.it.net.cn

同时,它和apache做了深度整合。通过 cobbler,可以实现对RedHat/Centos/Fedora系统的快速部署,同时也支持Suse 和Debian(Ubuntu)系统。 Linux学习,http:// linux.it.net.cn

cobbler装机系统是较早前kickstart的升级版,优点比较容易配置,还自带web界面比较易于管理,不足在于中文资料较少。和 Kickstart不同的是,使用cobbler不会因为在局域网中启动了dhcp而导致有些机器因为默认从pxe启动在重启服务器后加载tftp内容导 致启动终止。 IT网,http://www.it.net.cn

通过配置cobbler自动部署DHCP、TFTP、HTTP,在安装过程中加载kiskstart无人值守安装应答文件实现无人值守。从客户端使用PXE引导启动安装。

二、新系统初始化:

  1、修改主机名:

    # vi /etc/hostname

  2、关闭防火墙,selinxu:

    #systemctl stop firewalld    (centos 7 默认防火墙 firewall)

    #systemctl disable firewalld

  3、安装常用工具:

     #yum -y install wget vim lrzsz

  4、更新yum 源,  在本地源中没有cobbler

    #yum -y install epel-release

 三、安装配置cobbler:

  1、安装cobbler 依赖包和相关服务

    #yum -y install cobbler    

    #yum -y install cobbler-web

    #yum -y install fence-agents        (实现电源管理)

    #yum -y install dhcp        

    #yum -y install pykickstart           (kickstart 软件,系统无人值守安装

    #yum -y install xinetd        (tftp 服务 使用)

    #yum -y install tftp-server

    #yum -y install system-config-kickstart     (如果不通过图形化界面 创建ks 文件,可以不用安装)

  2、开启服务:

    # systemctl start httpd

    # systemctl start cobblerd

    # systemctl enable httpd

    # systemctl enable cobblerd

  3、配置cobbler ,检查配置:

    # cobbler check

     

    按提示依次解决相关报错:

    1-2:编辑cobbler配置文件/etc/cobbler/settings 修改一下几项

    # vim /etc/cobbler/settings 

      bind_master: 可用的dns服务器IP 

      next_server: cobbler服务器IP  (选项 next_server 用在 DHCP 配置文件中,向机器告知提供引导文件的服务器地址。选项 server 在机器安装期间用于引用 Cobbler 服务器地址)

      server: cobbler服务器IP 

       manage_dhcp: 1     (0:表示有独立的*服务器, 1:表示服务由cobbler 托管)

       manage_dns: 0

      manage_tftpd: 1

      restart_dns: 1

      restart_dhcp: 1

      pxe_just_once:1    (选项 pxe_just_once 预防将机器中的安装循环配置为始终从网络引导。激活此选项时,机器告诉 Cobbler 安装已完成。Cobbler 将系统对象的 netboot 标志更改为 false,这会强制机器从本地磁盘引导。)

    3:上述dhcp 服务器和 tftp 服务器均由cobbler 托管,需要配置cobbler的dhcp服务配置和tftp服务配置,配置完成后服务由cobbler sync 托管启动。

      3-1、编辑tftp配置文件:

        # vim /etc/cobbler/tftpd.template

          disable  = no    “yes改为no”

      3-2、编辑dhcp配置文件

        # vim /etc/cobbler/dhcp.template

      

    4:执行cobbler get-loaders 下载部分缺失的网络boot-loaders 引导文件

      # cobbler get-loaders

    5:启动rsyncd

      # systemctl start rsyncd

      # systemctl enable rsyncd

    6:debian安装用,不需要可以不管

    7:"openssl passwd -1 -salt ‘random-phrase-here‘ ‘your-password-here‘"   其中random-phrase-here  为任意字符、your-password-here  是cobbler 服务器的密码

      # openssl passwd -1 -salt ‘123456789‘ ‘111111‘   生成的密码替换/etc/cobbler/settings文件里面default_password_crypted:的密码

  4、http 配置:

    由于默认distro文件存放目录为/var/www/cobbler/ks_mirrors 而http默认站点根目录为/var/www/html,所以安装系统的时候会报错找不到/var/www/cobbler/ks_mirror/centos7.2-x86_64/LiveOS/squashfs.img 所以在这里需要更改http服务默认站点根目录然后重启服务

    # vim /etc/http/conf/httpd.conf

      DocumentRoot “/var/www/html”   ––> DocumentRoot “/var/www”

    # systemctl restart httpd

     # systemctl restart cobblerd

     # cobbler sync     (cobbler 配置刷新,检查有没有配置或依赖服务有问题)

  5、定义distro

    挂在iso镜像:

      # mkdir /mnt/iso

      # mount -o loop /date/CentOS-7-x86_64-DVD-1611.iso /mnt/iso      (iso 文件已下载至 /data 目录下)

    导入distro:

      # cobbler import --arch=x86_64 --path=/mnt/iso --name=Centos-7-x86_64    (需要一段时间)

    命令格式:cobbler import --path=镜像路径 -- name=安装引导名 --arch=32位或64位

    参数说明:
      --name :为安装源定义一个名字
      --arch :指定安装源是32位还是64位、ia64, 目前支持的选项有: x86│x86_64│ia64
      注意:这个安装源的唯一标示 就是根据这两个参数来定义

    导入成功后,安装源的唯一标示就是:centos-7-x86_64,如果重复,系统会提示导入失败,其它命令可通过cobbler -help来进行查看.如果需要更多的参数定制,也可以查看官方文档:man cobbler,然后查找 import 的配置,可以使用另外一个命令:cobbler distro. cobbler会将镜像中的所有安装文件拷贝到本地一份,放在/var/www/cobbler/ks_mirrors/下的centos-7-x86_64目录下,同时会创建一个名字为centos-7--x86_64的一个发布版本,以及一个名字为centos-7-x86_64的profile文件,此profile文件指定/var/lib/cobbler/kickstarts/simple_end.ks为默认ks文件

  6、制作ks文件 (无人值守脚本) 

# kickstart template for Fedora 8 and later.
# (includes %end blocks)
# do not use with earlier distros

#platform=x86, AMD64, or Intel EM64T
# System authorization information
auth  --useshadow  --enablemd5
# System bootloader configuration
bootloader --location=mbr
# Use text mode install
text
# Firewall configuration
firewall --enabled
# Run the Setup Agent on first boot
firstboot --disable
# System keyboard
keyboard us
# System language
lang en_US
# Use network installation
url --url=$tree
# If any cobbler repo definitions were referenced in the kickstart profile, include them here.
$yum_repo_stanza
# Network information
$SNIPPET(‘network_config‘)
# Reboot after installation
reboot

#Root password
rootpw --iscrypted $default_password_crypted
# SELinux configuration
selinux --disabled
# Do not configure the X Window System
skipx
# System timezone
timezone  Asia/Shanghai
# Install OS instead of upgrade
install
# Clear the Master Boot Record
zerombr
# Allow anaconda to partition the system as needed
#autopart
# Partition clearing information
clearpart --all --initlabel
# Disk partitioning information
part /boot --fstype="xfs" --size=1024
part swap --fstype="swap" --size=2048
part / --fstype="xfs" --grow --size=1

%pre
$SNIPPET(‘log_ks_pre‘)
$SNIPPET(‘kickstart_start‘)
$SNIPPET(‘pre_install_network_config‘)
# Enable installation monitoring
$SNIPPET(‘pre_anamon‘)
%end

%packages
$SNIPPET(‘func_install_if_enabled‘)
%end

%post --nochroot
$SNIPPET(‘log_ks_post_nochroot‘)
%end

%post
$SNIPPET(‘log_ks_post‘)
# Start yum configuration
$yum_config_stanza
# End yum configuration
$SNIPPET(‘post_install_kernel_options‘)
$SNIPPET(‘post_install_network_config‘)
$SNIPPET(‘func_register_if_enabled‘)
$SNIPPET(‘download_config_files‘)
$SNIPPET(‘koan_environment‘)
$SNIPPET(‘redhat_register‘)
$SNIPPET(‘cobbler_register‘)
# Enable post-install boot notification
$SNIPPET(‘post_anamon‘)
# Start final steps
$SNIPPET(‘kickstart_done‘)
# End final steps
%end

    也可以使用图形化工具生成ks文件

      # system-config-kickstart        #需要在图形化界面运行,需要安装桌面包,然后按提示一步一步生成ks.cfg文件)   VNC配置:http://www.cnblogs.com/weijie0717/p/6746508.html

  7、创建ks文件 ,保存到/var/lib/cobbler/kickstarts/目录内 ,导入系统distro时,系统指定的默认ks文件为/var/lib/cobbler/kickstarts/sample_end.ks,在这里我们需要重新指定ks文件

    # cobbler profile report --name Centos-7-x86_64     ( 查看profile 设置)

    # cobbler distro report --name Centos-7-x86_64  (查看安装镜像文件信息)

    # cobbler profile add --name=Centos-7-x86_64 --distro=Centos-7-x86_64 --kickstart=/var/lib/cobbler/kickstarts/Centos-7.ks    (绑定 profile 和 distro )

    # cobbler profile edit --name=Centos-7-x86_64 --distro=Centos-7-x86_64 --kickstart=/var/lib/cobbler/kickstarts/Centos-7.ks    (编辑 profile 和 distro )

  8、再次执行 cobbler check   看看之前的报错是否的一一解决。

  9、 如果没有任何问题,刷新cobbler 配置:

    # cobbler sync

  10、从起服务器,安装系统:

    

四、cobbler  web配置

时间: 2024-12-30 03:09:45

centos 7 下 cobbler 安装的相关文章

Centos 7下如何安装bzip2

Centos 7下如何安装bzip2 时间:2016-02-26 01:01来源:linux.it.net.cn 作者:IT centos7 下好多软件都不带,当然也没有bzip2,于是我们只能下载 安装了,两种方法 1.yum安装,不多说 yum search bzip2  //查询安装包 yum -y install bzip2-x86_64 2.源码安装 下载bzip2   下载地址:http://www.bzip.org/downloads.html 1>格式是*.tar.gz  解压文

CentOS 6 下升级安装Mysql 5.5 完整步骤

使用系统CentOS 6.2本来已经系统自带安装了mysql 5.1,但是奈何5.1不支持utf8mb4字符集(详见:http://blog.csdn.net/shootyou/article/details/8236024 ),只能想办法将Mysql升级到5.5. 这果然是一次蛋疼的升级过程. 完整步骤: 1.首先备份数据,虽说成功的升级数据不会丢失,但是保险起见备份下. mysqldump -u xxx -h xxx -P 3306 -p --all-databases > database

centos 7 下nagios 安装和配置

        centos 7 下nagios 安装和配置 一.yum -y install httpd gcc glibc glibc-common *gd* php php-mysql mysql mysql-server mysql-devel php-snmp net-snmp net-snmp-libs net-snmp-utils php-pdo perl-DBD-MySQL rrd-tool   perl-rrdtool             rrdtool-devel  ma

centos/linux下的安装Maven

1.保证该项目安装了JDK 请在系统中输入java -version查看该命令是否存在 如果没有安装JDK请移步到Centos/linux下的JDK安装 2.下载Maven wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.5.0/binaries/apache-maven-3.5.0-bin.tar.gz 2.解压maven 文件 将该文件解压到dev文件夹下 如果解压到当前目录请将 -C ../dev 删除 tar

centos/linux下的安装Tomcat

1.启动tomcat时候需要JDK依赖 如果没有安装的请移步到该链接Centos/linux下的JDK安装 2.从官网上下载tomcat压缩包 wget -c http://apache.fayea.com/tomcat/tomcat-7/v7.0.79/bin/apache-tomcat-7.0.79.tar.gz 3.解压该tomcat压缩包 tar -zxvf apache-tomcat-7.0.79.tar.gz 查看是否解压成功 4.配置CATALINA_HOME 后面的 export

CentOS环境下yum安装LAMP(Linux+Apache+Mysql+php)

CentOS下使用yum命令 安装LAMP详细过程.我们使用的软件是CentOS的最新版本CentOS 6.3,其他版本的也基本类似. 第一步:更新系统内核(如果不想更新可以跳过本步). 首先更新系统内核到最新,因为最新版的CentOS 6.3的php版本为 5.3,早起版本的CentOS的php版本也比较低. 执行命令: yum -y update 注意:如果执行失败报错,可以执行修复命令: rpm –import /etc/pki/rpm-gpg/RPM-GPG-KEY* 第二步: 安装Ap

CentOS 6下编译安装MySQL 5.6

一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e --nodeps mysql // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除 二:安装MySQL 安装编译代码需要的包 yum -y install make gcc-c++ cmake bison-devel ncurses-devel 下载MyS

CentOS 7下Samba安装配置

最近新学Linux,本来想用RedHat Linux来做学习平台,但是发现RedHat Linux ISO文件实在是太难下载了.因为CentOS和RedHat Linux极其相似,所以选择下载CentOS Linux 7 DVD ISO. 这个镜像4个多GB,但是下载只用了30多分钟. 网络上大量配置samba的文章,但是发现没有一篇照着做是可以实现的.所以我决定写一篇完整的配置.虽然安全性不能保证,但是功能可以实现,安全性以后再研究了. 安装 安装的过程我不再具体写,百度一下有大把文档,稍微有

CentOS Linux下编译安装MySQL

本文参考张宴的Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器(第6版)[原创]完成.所有操作命令都在CentOS 6.4 64位操作系统下实践成功. 1.移除CentOS自带的mysql yum remove mysql mysql-server compat-mysql51 rpm -e --nodeps mysql-libs-5.1.* 2.安装编译依赖包 yum -y install cmake yum -y install bis