您的位置:首页 > 其它

U盘引导自动化部署convirt宿主机

2012-03-28 19:38 141 查看
一 制作U盘启动盘

有关U盘启动盘的制作请参考我前面的文章。

二 设置ks.cfg文件路径。

1.打开U盘在syslinux目录中找到syslinux.cfg文件并打开,在label linux栏下append 后加入 ks=hd:sdb1:/ks.cfg。则syslinux.cfg的内容变成如下内容

default linux
prompt 1
timeout 600
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
label linux
kernel vmlinuz
append ks=hd:sdb1:/ks.cfg initrd=initrd.img
…………………………………
…………………………………
………………………………….
………………………………….
2.将做好的ks.cfg文件放到U盘的根目录下即可。
需要特别注意的是,本文的服务器只有一块硬盘,因此sda是硬盘,sdb是U盘,若有多块硬盘,则U盘的盘符可能不是sdb,而是sdd,或sdg或是其他的等。这里U盘的盘符一定要写对,要不然系统找不到ks.cfg文件。

三 配置kickstart文件
1.在RHEL/CentOS安装好以后,系统会自动产生一个名为annaconda.cfg的文件,我们可以根据这个文件修改成我们想要部署的系统,也可以采用Kickstart Configurator图形化配置。在终端中输入system-config-kickstart打开Kickstart Configurator。

2.设置基本配置

3.设置安装方式,这里可以选择光盘安装,硬盘安装和网络安装方式。如采用光盘安装则在需要将ks.cfg文件放在光盘的根目录下,并且在设置ks.cfg路径时需要在append 后面加上 ks=cdrom:/ks.cfg。如采用硬盘安装则安装镜像文件需解压到硬盘的某个分区上。如采用ftp或http方式安装,则在ftp或http的根目录下能够直接访问iso镜像的内容,可以直接将iso镜像内容加压到根目录下。如采用nfs方式安装则iso镜像无需解压到nfs共享目录下,只要能访问到光盘内容就行。

4.设置启动选项,为了U盘引导时在分区的时候不发生错误,所以在这里配置完成后到生成的ks.cfg文件中 boot-loader 后 加入 --driveorder=sda,sdb,sdbc

5. 设置分区信息,在Kickstart Configurator中设置分区后,由于我们采用U盘引导系统,一般情况下U盘被识别成sdb,在制作成启动盘后U盘分区是sdb1,所以在之前设置ks.cfg路径时应当设置成ks=hd:sdb1:/ks.cfg,为了在U盘引导安装过程中只对已有硬盘进行分区,需要在这里配置后生成的ks.cfg文件中每个分区后面加上 --ondisk=sda,这样就不会出现安装过程中把U盘也重新分区的情况发生。这里测试的只是服务器有一块硬盘,所以分区只对sda进行分区。若出新多块硬盘,应当先确定U盘得盘符,然后设置相应的选项,保证U盘不被格式化。这个也是采用U盘安装的弊端。

6.设置网络配置。由于我们是采用逐步更换虚拟化平台的方案,在更换当前虚拟机平台时,不至于影响到其他运行的虚拟机平台,在IP地址的获取上不能采用DHCP的方式,我们在安装宿主机的时候将采用一个默认的静态IP地址,通过内网下载安装过程中需要的软件包。

7.设置认证方式。这里采用最基本的认证方式。

8..其他配置。将之前的配置保存为ks.cfg文件并编辑ks.cfg文件在%packages 下添加需要安装的软件包组件或单独的软件包,系统默认安装Base,Core软件包组件。在%post部分加入添加需要系统在安装完成后要运行的脚本程序,可以是bash,也可以是python,perl等脚本程序。

四 开始安装

1.插入U盘到当前需要替换虚拟化平台的服务器,查看当前系统的网络配置,IP,网关,子网掩码,DNS服务器IP。挂载U盘到系统的某个分区上,如/mnt,进入到/mnt目录下,编辑ks.cfg文件,找到网络配置栏将相应的IP地址,网关,子网掩码,DNS服务器IP改成当前系统的就行了。
2.重启系统,在BIOS里设置系统从U盘引导,系统引导后出现如下画面,敲回车键





















五 ks.cfg文件内容

#platform=x86, AMD64, or Intel EM64T
# System authorization information
auth  --useshadow  --enablemd5
# System bootloader configuration
bootloader --location=mbr  --driveorder=sda,sdb   设置系统启动顺序先从sda启动
# Partition clearing information
clearpart --drives=sda  --all --initlabel   只格式化sda
# Use text mode install
text  采用文本模式安装
# Firewall configuration
firewall --enabled --ssh
# Run the Setup Agent on first boot
firstboot --disable
# System keyboard
keyboard us
# System language
lang en_US
# Installation logging level
logging --level=info
# Use HTTP installation media
url --url http://10.1.14.153/mirror/centos56_amd64_part1/  采用网络安装
# Network information  设置静态IP地址,以方便连接到WEB服务器
#####################################################################################
#####################################################################################
network --bootproto=static --device=eth0 --gateway=10.1.14.1 --ip=10.1.14.228 --nameserver=10.1.20.10 --netmask=255.255.255.0 --onboot=on
#####################################################################################
#####################################################################################
# Reboot after installation
reboot
#Root password
rootpw --iscrypted $1$QQBcvMTx$PDw5du8L0ikM60Esprmo50

# SELinux configuration
selinux --enforcing
# Do not configure the X Window System
skipx
# System timezone
timezone --isUtc Asia/Shanghai
# Install OS instead of upgrade
install
# Disk partitioning information  分区要特别注意,这里采用在一块硬盘上自定义分区
part / --bytes-per-inode=4096 --fstype="ext3" --size=50000  --ondisk=sda
part swap --bytes-per-inode=4096 --fstype="swap" --recommended  --ondisk=sda
part /usr --bytes-per-inode=4096 --fstype="ext3" --size=20000   --ondisk=sda
part /var --bytes-per-inode=4096 --fstype="ext3" --grow --size=1  --ondisk=sda
%packages   安装必要的软件包
@base
@core
kvm
wget
dnsmasq
tunctl
tcp_wrappers
expect
pexpect

%post   执行后安装脚本,需要安装完后执行哪些操作。
cd /etc/yum.repos.d/
rm -f *.repo
echo "Downloading  CentOS.repo ..............."
wget http://10.1.14.153/mirror/ks/CentOS.repo  自己搭建的yum源文件
rpm -Uvh http://10.1.14.153/mirror/software/socat-1.6.0.1-1.el5.rf.x86_64.rpm cd /home  socat必须单独下载,centos的yum源里没有socat
echo "Downloading  ISO image ......"
wget http://10.1.14.153/mirror/software/win2003auto.iso  要安装的windows2003镜像,convirt支持从本地读取iso安装虚拟机
echo "Downloading  convirture-tool ............"  下载并解压convirt-tools
wget http://10.1.14.153/mirror/software/convirture-tools.tar.gz echo "Installing  convirture-tool ..................."
tar -zxvf convirture-tools.tar.gz
cd /root
wget http://10.1.14.153/mirror/ks/convirt-tool-install.sh sh convirt-tool-install.sh
convirt-tool-install里的内容上就是
cd  /home/convirture-tools/install/managed_server/scripts
./convirt-tool setup

因为在后安装脚本执行时总是不能执行./convirt-tool setup所以就只有安装完重启后单独执行操作

在安装过程中要注意几点:

1,本文是只有一块硬盘,并对一块硬盘进行分区。若安装时有多块硬盘,或要做软RAID,LVM等磁盘格式请按照红帽官方文档介绍进行分区,并且用U盘安装的过程中要确定好U盘得盘符。

2.网络问题,设置正确的IP地址,以使安装过程中能够访问到WEB服务器。

3.post-installation脚本是很头疼的一件事。如果用不好就不要用,里面的脚本只要有一处错误,安装过程就会卡住,影响安装进度。而且执行脚本时会出现莫名奇妙的问题,在本文中可以将后安装脚本放到安装完成以后再执行。在本文中,post-installation里始终不能执行./convirt-tool setup。刚开始以为是执行权限或是chroot的问题,但是还是不行。

4.本文写的不是最终方案。只作参考。

希望能够帮助到更多的人顺利部署

本文出自 “Linux SA John” 博客,请务必保留此出处http://john88wang.blog.51cto.com/2165294/819672
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: