• centos7PXE和cobbler自动部署装机


    安装程序启动过程
    MBR:isolinux/boot.cat
    stage2: isolinux/isolinux.bin
    配置文件:isolinux/isolinux.cfg
        每个对应的菜单选项:
        加载内核:isolinuz/vmlinuz
        向内核传递参数:append initrd=initrd.img ...
    装载根文件系统,并启动anaconda
    默认启动GUI接口,若是显式指定使用TUI接口:向内核传递text参数即可
    (1)按tab键,在后面增加text
    (2)按ESC键:boot: linux text
    anaconda工作过程
     Anaconda安装系统分成三个阶段:
     安装前配置阶段
        安装过程使用的语言
        键盘类型
        安装目标存储设备
        Basic Storage:本地磁盘
        特殊设备:iSCSI
        设定主机名
        配置网络接口
        时区
        管理员密码
        设定分区方式及MBR的安装位置
        创建一个普通用户
        选定要安装的程序包

    Cobbler:
    快速网络安装linux操作系统的服务,支持众多的Linux发行版:Red Hat、Fedora、CentOS、Debian、Ubuntu和SuSE,也可以支持网络安装windows

    PXE的二次封装,将多种安装参数封装到一个菜单
    Python编写
    提供了CLI和Web的管理形式

    Cobbler 工作流程:
    client裸机配置了从网络启动后,开机后会广播包请求DHCP服务器(cobbler server)发送其分配好的一个IP
    DHCP服务器(cobbler server)收到请求后发送responese,包括其ip地址
    client裸机拿到ip后再向cobbler server发送请求OS引导文件的请求
    cobbler server告诉裸机OS引导文件的名字和TFTP server的ip和port
    client裸机通过上面告知的TFTP server地址通信,下载引导文件
    client裸机执行执行该引导文件,确定加载信息,选择要安装的os,期间会再向cobbler server请求kickstart文件和os image
    cobbler server发送请求的kickstart和os iamge
    client裸机加载kickstart文件
    client裸机接收os image,安装该os image

    实验机器:  centos7.6服务器一台(IP地址:192.168.99.130)

    实验环境:需要用的服务: dhcp tftp-server cobbler httpd kickstart

    实验步骤:

    1、安装所需的软件:  yum install -y dhcp tftp-server cobbler httpd  system-config-kickstart

    2、先创建所需要使用的目录

     ①在网站根目录下创建

    ②把需要用到的centos6和7的光盘镜像挂载到对应的刚创建的目录下

    3、创建生成自动应答文件,运行system-config-kickstart打开kickstart进行配置

    ①基础配置,语言、root密码设置等

     ②安装方法,通过网络安装,路径写源的路径即可

     

    ③启动向导,如果想使用centos6的eth0传统网卡命名可以添加内核参数 net.ifname=0

     

    ④创建分区大小

     

    ⑤网卡配置

    ⑥selinux和防火墙可选择禁用

    ⑦包列表选择,如果没有配置本地光盘源的话此项是空的,需要配置后才可以使用

     yum源配置,[ ]  名称必须设置为development,否则找不着

     配置好后打开重新配置即可,根据自己需要选择相应的包

     

     ⑧可以自定义一个脚本当系统装完之后会自动运行,也可以不写

     

    保存文件到刚刚创建的ksdir目录下,并设置好权限

     注意权限: chmod 644 /var/www/html/ksdir/ks7.cfg

    4、配置dhcp服务

    vim /etc/dhcp/dhcpd.conf

     5、配置 tftp,准备相关的启动文件

    cd   /var/lib/tftpboot/

    mkdir pxelinux.cfg
    cp   /usr/share/syslinux/{pxelinux.0,menu.c32}     /var/lib/tftpboot/    #拷贝启动文件和文本菜单,pxelinux.0如果没有此项则需要安装,yum install -y syslinux 即可
    cp  /var/www/html/centso/7/images/pxeboot/{vmlinuz, initrd.img}    /var/lib/tftpboot/     #拷贝内核文件,驱动文件
    cp   /var/www/html/centso/7/isolinux/isolinux.cfg   /var/lib/tftpboot/pxelinux.cfg/default    #拷贝菜单项到pxelinux.cfg下并命名为default

    6、修改启动菜单项

    7、启动服务

    新建虚拟机,调试网卡模式,硬盘大小容量不能小于应答文件创建分区时的所设置的大小、内存大小等参数(注意:centos7最小内存必须1.5G以上否则无法安装)

    出现菜单项,选择需要部署的系统即可

     若安装centos7,内存低于1.5G就会报错,如图

     二、配置cobbler服务

    1、启动cobbler服务,然后执行cobbler check 让其进行环境的检查,出现以下提示,

     

    2、cobbler 报错提示和解决
    第一条: 修改/etc/cobbler/settings文件中的server参数的值为提供cobbler服务的主机相应的IP地址或主机名

    第二条:修改/etc/cobbler/settings文件中的next_server参数的值为提供PXE服务的主机相应的IP地址

    第三条:如果是centos6上则需要开启xinetd服务中的tftp服务,centos7不需要

    第四条:如果当前节点可以访问互联网,执行“cobbler get-loaders”命令即可;否则,需要安装syslinux程序包,而后复制/usr/share/syslinux/{pxelinux.0,memu.c32}等文件至/var/lib/cobbler/loaders/目录中
    第五条:修改/etc/cobbler/settings文件,manage_dhcp: 1,并修改下面文件 /etc/cobbler/dhcp.template
    第七条:执行“openssl passwd -1 生成密码,并用其替换/etc/cobbler/settings文件中default_password_crypted参数的值

    修改:

    ①先生成一个加密的秘钥,得到秘钥后编辑/etc/cobbler/settings文件,按上面的提示进行修改个别项

    101行,修改默认的密码,替换为刚刚得到的那一串加密的密码

    242行,默认值为0(0表示手工修改),修改为1,利用模板文件生成dhcp的配置

    272行,修改提供PXE服务的主机相应的IP地址

    384行,修改cobbler服务的主机相应的IP地址或主机名

     ② 第四条 当前我们的主机可以联网所以执行执行命令cobbler get-loaders,cobbler会自动的下载相应的启动加载的一些文件

     ③ 修改/etc/cobbler/dhcp.template  cobbler自带的模板文件

     

    ④ 重启dhcp服务和cobbler服务,在执行cobbler sync命令进行cobbler配置同步

     3、此时cobbler服务已经可以使用了,找个新机器重启,dhcp会分配ip地址和tftp服务器的地址,自动的去找到启动所需要的文件

    可以看到以下界面,因为我们还没有导入系统文件和生成菜单项

     

    4、下面开始导入镜像和生成启动菜单项

    distro是菜单项
    profile是管理cobbler的应答文件的

    这两个都是空的,下面开始导入

     

    ② 把6和7的两张光盘文件拷贝到cobbler里生成yum

    执行命令: cobbler import --path=/var/www/html/centos/6/   --name=Centos6.10-x86_64   --arch=x86_64

     

    导入完成后再次查看,刚刚导入了两套yum源所以生成了两套菜单distro

    5、导入完后启动菜单就生成了,此时的应答文件内容是自带的,不是我们自己制作的那两个应答文件

     

    6、下面我们进行修改,改成我们自己制作的应答文件

     ① 先修改一下文件,把url的路径修改为¥tree即可,此变量是cobbler自带的变量

    ② 把应答文件拷贝到cobbler的指定的应答文件文件目录里

     

    ③ 把yum源和菜单进行关联,要写绝对路径,否则找不着 

    ④ 导入完成后,查看一下菜单,可以把自带的两个删除,只留下我们新添加的两个

    cat /var/lib/tftpboot/pxelinux.cfg/default

     

    7、重启cobbler服务,此时cobbler的配置已完成,找个新机器开机启动即可,下面的两项就是刚刚创建的新菜单项,选择确认后就可以自动安装了

     

     以上就是Cobbler PEXkickstart,批量部署安装的详细步骤

    如果对你有帮助的话可以点赞关注哦,谢谢支持

  • 相关阅读:
    QK对中断的特殊处理
    程序控制的软件复位方法
    软件的按契约设计(DbC---Design by Contract)
    Arduino平台基于DbC的软件调试
    软件测试中的测不准原理
    关于嵌入式软件
    程序设计的SOLID原则
    CPS---(Cyber-Physical Sytem,信息物理融合系统)
    QP之QF原理
    QP之QEP原理
  • 原文地址:https://www.cnblogs.com/fengdejiyixx/p/11109431.html
Copyright © 2020-2023  润新知