操作环境:windows

实验环境:vmware workstation

实验要求:配置一台workstation机器(ip地址192.168.96.100 gateway 192.168.96.2 dns1 8.8.8.8 netmask 255.255.255.0)

实现自动化安装server1/server2/database三台机器。

搭建整个自动化安装的流程:

pxe网络启动是核心。

配置DHCP自动获取ip地址-----使用tftp协议引导加载文件pxelinux0文件(相当于一个小型的操作系统,可以认为其为一个操作系统的底层,挂载光盘到主机workstation,挂载点/var/ftp/pub里面包含此文件)----启动内核加载模块vmlinuz(vmlinux的压缩文件,可以认为其为一个小型的内核模块)、initrd.img(可以不用更改内核文件,从而实现任何硬件系统与内核的兼容,可以自行加载各种硬件格式)---启动ks.cfg文件(放置光盘的位置,可以编写shell脚本,实现更多的功能)-----完成启动

开始部署环境:

以下配置均在workstation机器上面实现

1.基本配置

#更改主机名

#挂载光盘(包含p_w_picpaths文件)

mkdir -o loop -t iso9660 /dev/sr0 /var/ftp/pub

注意:一定要点击光盘,使其连接

mount -a

df -Th

#更新yum仓库

#下载所需要的安装包vim

#重启机器(使配置生效)

2.配置服务端的DHCP

#vim /etc/dhcp/dhcpd.conf

subnet 192.168.96.0 netmask 255.255.255.0 {

range dynamic-bootp 192.168.96.200 192.168.80.210;

option routers 192.168.96.2;

option domain name servers 8.8.8.8;

default-lease-time 21600;

max-lease-time 43200;

next-server 192.168.96.100;

filename "pxelinux0";

}

systemctl restart dhcpd

systemctl enable dhcpd

3.配置内核启动模块

下载xinetd(网络守护进程),tftp,tftp-server,syslinux-tftpboot包

#vim /etc/xinetd.d/tftp

更改disabled    =     no

cd /var/ftp/pub/p_w_picpaths/pxeboot

ls

cp initrd.img /var/lib/tftpboot/

cp vmlinuz /var/lib/tftpboot/

mkdir /var/lib/tftpboot/pxelinux.cfg

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

default linux

prompt 1

timeout 60

display boot.msg

label linux

kernel vmlinuz

append initrd=initrd.img text  ks=http:://192.168.96.100/ks/ks.cfg

systemctl start xinetd

systemctl enable xinetd

4.下载httpd服务,加载ks文件

yum –y install httpd

systemctl restart httpd

ls

mkdir /var/www/html/ks

cp anaconda-ks.fsg /var/www/html/ks/ks.cfg

vim /var/ww/html/ks/ks.cfg

添加一行#Use network installaton

url --url=ftp://192.168.96.100/pub(光盘存放位置)

Install

注释掉#cdrom

cd /var/ww/html/ks/

chmod +r ks.cfg

yum –y install vsftpd

systemctl restart vsftpd

systemctl enable vsftpd

5.所有配置完成之后。重新创建新的虚拟机server1,server2,database

自动化部署完成之后,配置剩余三台机器的网卡文件:

  • 设置为静态地址

  • 更改主机名

  • 加载yum源仓库

  • 采用scp方式添加epel源

  • 更新仓库(防止有bug出现)

  • 下载vim编辑器

  • 拍摄快照

pxe linux 0的更多相关文章

  1. [PXE] Linux(centos6)中PXE 服务器搭建,PXE安装、启动及PXE理论详解

    [PXE] Linux(centos6)中PXE 服务器搭建,PXE安装.启动及PXE理论详解 本篇blog主要讲述了[PXE] linux(centos)PXE无盘服务器搭建,安装,启动及pxe协议 ...

  2. x01.os.19: linux 0.0

    linux 0.0 是一个丢失的版本,但赵炯老师又在 linux 0.11 的基础上,使它起死回生.www.oldlinux.org 有大量资源可供下载,值得一看. 1.要编译运行,首先需安装:sud ...

  3. Linux 0.11下信号量的实现和应用

    Linux 011下信号量的实现和应用 生产者-消费者问题 实现信号量 信号量的代码实现 关于sem_wait和sem_post sem_wait和sem_post函数的代码实现 信号量的完整代码 实 ...

  4. Linux 0.12 内核管理存储器

    Linux 0.12 内核管理存储器 其分段,用分段的机制把进程间的虚拟地址分隔开. 每一个进程都有一张段表LDT.整个系统有一张GDT表.且整个系统仅仅有一个总页表. 其地址翻译过程为: 程序中给出 ...

  5. Linux 0.11中write实现

    看了一下Linux 0.11版本号write的实现,首先它在标准头文件unistd.h中有定义 int write(int fildes, const char * buf, off_t count) ...

  6. Bedrock Linux 0.7.3 发布

    Bedrock Linux是一种元分发,允许用户利用其他通常互斥的Linux发行版的功能,并让它们无缝地一起工作.该项目发布了其0.7.x系列,Bedrock Linux 0.7.3的更新. 新的更新 ...

  7. 《linux 内核全然剖析》编译linux 0.12 内核 Ubuntu 64bits 环境

    我×.. . 最终好了,大概3 4个小时吧...各种毛刺问题.终究还是闯过来了.. .. ubuntu2@ubuntu:~/Downloads/linux-0.00-050613/linux-0.00 ...

  8. 【从头到脚品读 Linux 0.11 源码】第一回 最开始的两行代码

    从这一篇开始,您就将跟着我一起进入这操作系统的梦幻之旅! 别担心,每一章的内容会非常的少,而且你也不要抱着很大的负担去学习,只需要像读小说一样,跟着我一章一章读下去就好. 话不多说,直奔主题.当你按下 ...

  9. Linux 0.11源码阅读笔记-总结

    总结 Linux 0.11主要包含文件管理和进程管理两个部分.进程管理包括内存管理.进程管理.进程间通信模块.文件管理包含磁盘文件系统,打开文件内存数据.磁盘文件系统包括空闲磁盘块管理,文件数据块的管 ...

随机推荐

  1. [javascript]原生js实现Ajax

    一.首先看JQuery提供的Ajax方法: $.ajax({ url: , type: '', dataType: '', data: { }, success: function(){ }, err ...

  2. SQL 语句使用关键字错误

    异常为SQL Error: 1064, SQLState: 42000 时 ADD ALL ALTER ANALYZE AND AS ASC ASENSITIVE BEFORE BETWEEN BIG ...

  3. 3、Concurrenthashmap实现原理(JDK版本1.7)

    (1)结构图: l  ConcurrentHashMap中的数据结构 ConcurrentHashMap是由Segment数组结构和HashEntry数组结构组成.Segment实际继承自可重入锁(R ...

  4. StringBuilder 去除最后一个多余的字符的方法

    public class StringBuilterTest { public static void main(String[] args) { //新增一个map Map<String, S ...

  5. S2-033、S2-037

    前言 S2-033漏洞和S2-032类似,也是由于开启了动态方法调用,action mapper中的执行的方法名可控,导致了ognl表达式注入. 正文 Rest插件中获取action mapper是用 ...

  6. python matplotlib拟合直线

    import numpy as np import matplotlib.pyplot as plt plt.rcParams['font.family'] = ['sans-serif'] plt. ...

  7. 【Day5】项目实战.CSDN热门文章爬取

    import urllib.request as ur import lxml.etree as le import user_agent keyword = input('请输入关键词:') pn_ ...

  8. 【2017-07-03】JS连续删除table中的选中的多行数据

    deleteRow() 连续删除多行 应用:删除表格选中的一行或多行.html代码如下: <table > <tr> <td >复选框</td> < ...

  9. cannot find -llapack + -lblas

    问题: cannot find -llapack + -lblas 解决: sudo apt-get install libblas-dev liblapack-dev 转:https://suppo ...

  10. idou老师教你学Istio 09: 如何用Istio实现K8S Ingress流量管理

    前言 在Istio的世界里,如果想把外部的请求流量引入网格,你需要认识并会学会配置Istio Ingress Gateway 什么是Ingress Gateway 由于Kubernetes  Ingr ...