• 运维自动化之系统安装


    PXE工作原理
     Client向PXE Server上的DHCP发送IP地址请求消息,DHCP检测Client是
    否合法(主要是检测Client的网卡MAC地址),如果合法则返回Client的
    IP地址,同时将启动文件pxelinux.0的位置信息一并传送给Client
     Client向PXE Server上的TFTP发送获取pxelinux.0请求消息,TFTP接收
    到消息之后再向Client发送pxelinux.0大小信息,试探Client是否满意,当
    TFTP收到Client发回的同意大小信息之后,正式向Client发送pxelinux.0
     Client执行接收到的pxelinux.0文件
     Client向TFTP Server发送针对本机的配置信息文件(在TFTP 服务的
    pxelinux.cfg目录下),TFTP将配置文件发回Client,继而Client根据配
    置文件执行后续操作。
     Client向TFTP发送Linux内核请求信息,TFTP接收到消息之后将内核文件
    发送给Client
     Client向TFTP发送根文件请求信息,TFTP接收到消息之后返回Linux根文件系统
     Client启动Linux内核
     Client下载安装源文件,读取自动化安装脚本

    PXE自动化安装CentOS 7
     安装前准备:关闭防火墙和SELINUX,DHCP服务器静态IP
     安装软件包
    httpd tftp-server dhcp syslinux system-config-kickstart
     配置文件共享服务:
    systemctl enable httpd
    systemctl start httpd
    mkdir /var/www/html/centos/7
    mount /dev/sr0 /var/www/html/centos/7
     准备kickstart文件
    /var/www/html/ks/centos7.cfg 注意:权限
     配置tftp服务
    systemctl enable tftp.socket
    systemctl start tftp.socket

    PXE自动化安装CentOS 7
     配置DHCP服务
    vim /etc/dhcp/dhcpd.conf
    option domain-name "example.com";
    default-lease-time 600;
    max-lease-time 7200;
    subnet 192.168.100.0 netmask 255.255.255.0 {
    range 192.168.100.1 192.168.100.200;

    filename "pxelinux.0";
    next-server 192.168.100.100}

    systemctl enabled dhcpd

    systemctl start dhcpd

    PXE自动化安装CentOS 7
     准备相关文件
    mkdir /var/lib/tftpboot/pxelinux.cfg/
    cp /usr/share/syslinux/{pxelinux.0,menu.c32} /var/lib/tftpboot/
    cp /misc/cd/isolinux/{vmlinuz,initrd.img} /var/lib/tftpboot/

    cp /misc/cd/isolinux/isolinux.cfg
    /var/lib/tftpboot/pxelinux.cfg/default

    文件列表如下:
    /var/lib/tftpboot/
    ├ ├── initrd.img
    ├ ├── menu.c32
    ├ ├── pxelinux.0
    ├ ├── pxelinux.cfg
    │ └── default
    └── vmlinuz

    PXE自动化安装CentOS 7
     准备启动菜单
    Vim /var/lib/tftpboot/pxelinux.cfg/default
    default menu.c32
    timeout 600
    menu title PXE INSTALL MENU
    label auto
    menu label Auto Install CentOS 7
    kernel vmlinuz
    append initrd=initrd.img ks=http://192.168.100.100/ks/centos7.cfg
    label manual
    menu label Manual Install CentOS 7
    kernel vmlinuz
    append initrd=initrd.img inst.repo=http://192.168.100.100/centos/7

    label local
    menu default
    menu label ^Boot from local drive
    localboot 0xffff

  • 相关阅读:
    [转载]Netmsg 局域网聊天程序
    [转载] VC6 STLport5.1.4 /STLport4.6.2 编译,安装
    Project Euler Problem 17
    [转载]Singleton的一个基类实现
    [翻译]进化游戏的层次结构 用组件来重构你的游戏实体
    [转载]使用 WSAAsyncSelect 的 Winsock 编程模型
    一种简单定义FourCC常量的方法 (C/C++)
    Permissions 0755 for '/data/user/lxb/.ssh/id_rsa' are too open.
    外键约束之Mysql
    parted
  • 原文地址:https://www.cnblogs.com/momenglin/p/8287550.html
Copyright © 2020-2023  润新知