设为首页收藏本站

LinuxTone | 运维专家网论坛 - 最棒的Linux运维与开源架构技术交流社区!

 找回密码
 注册

QQ登录

只需一步,快速开始

#公告#抱歉,网站将关闭,不再开放。由于PC时代已远逝 。在这个后移动互联网时代,我们继续携手前行,保持对技术的热情。共同构建linuxtone知识星球欢迎加入,一起讨论技术、招聘人才、分享资源。请新老linuxtone人 扫码移步到 知识星球:linuxtone

学习是一种信仰!分享是一种快乐!能力= 心态 * 沟通 * 知识 (你的每一天需要正能量!)

 网站的发展需要你贡献一份力量!希望你能每天坚持看贴1小时,并回答网友的问题!祝你在浏览论坛的过程中取得进步!谢谢!linuxtone加油!大家加油! 友情提示: 你今天学习了吗?你今天进步了吗?少一点抱怨!多一点进步!Life is short ! Why not linuxtone ?  

网站的发展、感谢每位坛友的努力!

查看: 6742|回复: 10

PXE+Kickstart安装ESX4.1 [复制链接]

Rank: 8Rank: 8

签到
177
注册时间
2011-4-6
最后登录
2015-11-13
在线时间
133 小时
阅读权限
90
积分
13213
帖子
49
主题
7
精华
0
UID
12696
发表于 2011-5-26 15:18:16 |显示全部楼层
本帖最后由 tianjing 于 2011-5-26 15:18 编辑

最近尝试了一下使用pxe+Kickstart自动化安装ESX4.1,具体实现过程如下:
1. 实验环境及用到的软件
    DHCP/TFTP 使用同一台物理主机,操作系统为RHEL5.5_x64,IP:192.168.224.131
    ESX4.1安装文件位置:http://192.168.224.131/ESX4.1
    VMware官方文档推荐使用gPXE,本文未涉及。
2. 配置DHCP
vim /etc/dhcpd.conf     
  1. ddns-update-style interim;
  2. ignore client-updates;
  3. allow booting;
  4. allow bootp;
  5. subnet 192.168.224.0 netmask 255.255.254.0 {

  6.         option routers                  192.168.225.254;     //网关
  7.         option subnet-mask              255.255.254.0;    //掩码

  8.         option domain-name-servers      192.168.80.1;  //DNS

  9.         option time-offset              -18000; # Eastern Standard Time

  10.         range dynamic-bootp 192.168.225.131 192.168.225.150;      //DHCP分配的IP段
  11.         default-lease-time 21600;
  12.         max-lease-time 43200;
  13.         next-server 192.168.224.131;     //TFTP服务器IP
  14.         filename "pxelinux.0";            //pxelinux loader文件的位置(相对于TFTP的根目录)
复制代码
   启动DHCP。
3.配置TFTP
   安装tftp:
  1. yum  install tftp*
复制代码
  打开tftp开机启动:
  1. chkconfig tftp on
  2. chkconfig --list | grep tftp
  3.           tftp:           on
复制代码
  使用xinetd管理tftp,修改xinetd配置文件
   Vim /etc/xinetd.d/tftp
  1. service tftp
  2. {
  3.         disable = no     //默认为YES,改为no
  4.         socket_type             = dgram
  5.         protocol                = udp
  6.         wait                    = yes
  7.         user                    = root
  8.         server                  = /usr/sbin/in.tftpd
  9.         server_args             = -s /tftpboot          //tftp的根目录
  10.         per_source              = 11
  11.         cps                     = 100 2
  12.         flags                   = IPv4
  13. }
复制代码
重启xinetd服务。
4.配置PXELinux需要的文件
(1)PXELINUX是由syslinux、isolinux派生出来的,支持PXE的bootloader,它可以实现远程通过PEX启动一台机器。把/usr/lib/syslinux/pxelinux.0拷到/tftpboot/目录下
(2)建立ESX的目录
  1. mkdir -p /tftpboot/esx
复制代码
(3)从ESX的iso文件中拷贝initrd.img和vmlinuz到/tftpboot/esx 目录
(4)cp /usr/lib/syslinux/menu.c32  /tftpboot/esx/
(5)配置tftp的default配置文件
         vim /tftpboot/pxelinux.cfg/default
  1. display msgs/boot.msg                             //定义启动页面显示的内容
  2. label Local                                             //从本地硬盘启动
  3.   localboot 0
  4. LABEL ESX4.1                                     //安装ESX4.1
  5.   menu label ESX auto install
  6.   kernel esx/vmlinuz                          //kernel位置
  7.   append initrd=esx/initrd.img debugLogToSerial=1 mem=512M ks=http://192.168.224.131/ESX4.1/ks.cfg ksdevice=eth0 quiet                       // ks配置文件,如果有多个网卡,ksdevice可以指定使用哪个网卡
复制代码
(6) 编辑msgs/boot.msg文件
        vim /tftpboot/pxelinux.cfg/default
  1. Welcome to Network Installer!

  2. Enter the shortname of the Operation System you wish to install:

  3. Local.      Local Machine

  4. ESX4.1.      ESX Server4.1 update01
复制代码
(7)配置ESX4.1的ks.cfg文件
  1. #Accept the VMware End User License Agreement
  2. accepteula

  3. keyboard us

  4. #root password
  5. rootpw --iscrypted $1$7V9yciy4$MAsxRDcPl6WtKqkyeOAvb/        //默认root密码

  6. auth

  7. #BootLoader
  8. bootloader --location=mbr

  9. timezone 'Asia/Shanghai'

  10. #Install
  11. install url http://192.168.224.131/ESX4.1

  12. network --addvmportgroup=true --device=vmnic0 --bootproto=dhcp

  13. # clear partitions
  14. clearpart --alldrives --overwritevmfs --initlabel

  15. # Partitioning                                                                                //默认分区表
  16. part '/boot'  --fstype=ext3 --size=1100  --onfirstdisk
  17. part 'none'  --fstype=vmkcore --size=110  --onfirstdisk
  18. part 'datastore1'  --fstype=vmfs3 --size=9004 --grow  --onfirstdisk

  19. virtualdisk 'esxconsole' --size=8004 --onvmfs='datastore1'

  20. part 'swap'  --fstype=swap --size=1000 --onvirtualdisk='esxconsole'
  21. part '/var/log'  --fstype=ext3 --size=2000 --onvirtualdisk='esxconsole'
  22. part '/'  --fstype=ext3 --size=5000 --grow --onvirtualdisk='esxconsole'

  23. reboot

  24. %post --interpreter=bash
复制代码
(8)测试
    一般按F12可以从PXE启动,在出现boot.msg的内容后输入ESX4.1即可开始安装。
    输入Local可以跳过PXE安装程序从本地硬盘启动。
5. ESX安装完成以后,因为使用了DHCP分配IP,而一般不建议ESX主机使用动态IP,所以需要把静态IP地址改为固定IP。ESX默认不允许root帐号远程ssh登录,所以需要先通过vSphere client新建一个普通帐号,远程登录以后把动态IP修改为静态IP,或者使用技术支持模式登录修改IP。
存在的问题:
1. 有些机型需要在安装的过程中导入第三方的驱动程序,还不清楚如何在Kickstart中导入第三方驱动
2. %post中如何开放root的ssh权限?
PXE安装多个操作系统可以参考:http://www.itianjing.com/2011/05/pxe-%E5%AE%89%E8%A3%85esx-server/

论坛元老

北京萍聚

Rank: 8Rank: 8

注册时间
2011-3-16
最后登录
2017-3-15
在线时间
1254 小时
阅读权限
90
积分
124098
帖子
1464
主题
79
精华
0
UID
12402
发表于 2011-5-26 15:48:41 |显示全部楼层
不错!沙发!
吴光科,京峰教育创始人,京峰教育Linux Python高薪实战培训,博爱、感恩,帮助真正想改变的人!http://www.jfedu.net

使用道具 举报

注册时间
2009-5-15
最后登录
2019-7-22
在线时间
1823 小时
阅读权限
0
积分
26865
帖子
1106
主题
1011
精华
0
UID
3082
发表于 2011-5-26 16:04:24 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

使用道具 举报

Rank: 8Rank: 8

注册时间
2009-7-25
最后登录
2013-12-5
在线时间
131 小时
阅读权限
90
积分
27781
帖子
17
主题
1
精华
0
UID
4419
发表于 2011-5-26 16:20:07 |显示全部楼层
   刚想找这个  兄弟真给力

使用道具 举报

Rank: 3Rank: 3

注册时间
2011-2-14
最后登录
2012-2-11
在线时间
19 小时
阅读权限
30
积分
398
帖子
72
主题
14
精华
0
UID
11993
发表于 2011-5-26 19:04:57 |显示全部楼层
和部署RHEL 5有什么不同吗?

使用道具 举报

Rank: 6Rank: 6

注册时间
2008-6-13
最后登录
2014-8-6
在线时间
219 小时
阅读权限
70
积分
8688
帖子
971
主题
181
精华
0
UID
74

LT粉丝

发表于 2011-5-26 21:51:31 |显示全部楼层
研究的挺深入!谢谢
工作太忙,不上QQ/MSN,但每天会上LinuxTone学习!

使用道具 举报

Rank: 8Rank: 8

注册时间
2011-4-6
最后登录
2015-11-13
在线时间
133 小时
阅读权限
90
积分
13213
帖子
49
主题
7
精华
0
UID
12696
发表于 2011-5-26 22:20:30 |显示全部楼层
回复 dinyuan 的帖子

大部分都一样,主要有2个地方有些区别:1.除了initrd.img和vmlinuz外,安装ESX比RHEL5多了一个/usr/lib/syslinux/menu.c32文件。
2.ESX中Kickstart的语法和RHEL不太一样。

使用道具 举报

Rank: 3Rank: 3

注册时间
2011-2-14
最后登录
2012-2-11
在线时间
19 小时
阅读权限
30
积分
398
帖子
72
主题
14
精华
0
UID
11993
发表于 2011-5-28 22:42:11 |显示全部楼层
回复 tianjing 的帖子

有c32这个文件,意味着和rhel6是一样的了!谢谢楼主分析啊!

使用道具 举报

Rank: 6Rank: 6

注册时间
2009-1-21
最后登录
2014-4-22
在线时间
95 小时
阅读权限
70
积分
2690
帖子
127
主题
14
精华
0
UID
1131
发表于 2011-7-7 23:45:01 |显示全部楼层
空了玩玩看下。

使用道具 举报

Rank: 8Rank: 8

注册时间
2011-4-23
最后登录
2017-5-23
在线时间
187 小时
阅读权限
90
积分
103449
帖子
173
主题
1
精华
0
UID
13336
发表于 2011-7-8 07:12:09 |显示全部楼层
不错,刚装完ESX4.1

使用道具 举报

Rank: 6Rank: 6

注册时间
2011-7-24
最后登录
2019-7-22
在线时间
2831 小时
阅读权限
70
积分
9940
帖子
1119
主题
1113
精华
0
UID
15112
发表于 2011-7-24 13:57:11 |显示全部楼层
%post --interpreter=bash

sed -i 's/PermitRootLogin no/PermitRootLogin yes/g' /etc/ssh/sshd_config

配置文件最后加一行即可开启ssh的root登录

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

IT运维专家网感谢您的支持

合作联系: QQ:67888954/MSN:cnseek@msn.com/mail:netseek@linuxtone.org

Archiver|手机版|感谢所有关心和支持过LinuxTone的朋友们 转载本站内容请注明原作者名及出处 ( 京ICP备08103151 )   |

GMT+8, 2020-4-1 13:14 , Processed in 0.027793 second(s), 14 queries , Apc On.

Powered by Discuz! X2 Licensed

© 2001-2011 Comsenz Inc.

回顶部