首页 > 代码库 > 烂泥:KVM、kickstart与nginx集成

烂泥:KVM、kickstart与nginx集成

本文首发于烂泥行天下

前几篇文章介绍了FTP、NFS与KVM、kickstart集成的案例,从这篇文章开始,我们来介绍HTTP方式与KVM、kickstart集成。

HTTP方式,我们先来使用nginx进行集成。既然是使用nginx,那么我们就先安装nginx,有关nginx的安装,可以参考这篇文章《烂泥:CentOS上nginx与tengine web服务器

本篇文章我们使用的是淘宝定制的nginx,下载安装包如下:

wget http://tengine.taobao.org/download/tengine-2.0.3.tar.gz

clip_image001

下载完毕后,进行解压及安装,如下:

tar -xf tengine-2.0.3.tar.gz

clip_image002

./configure

make && make install

安装完毕后,然后启动nginx,如下:

/usr/local/nginx/sbin/nginx –c /usr/local/nginx/conf/nginx.conf

netstat -tunlp|grep ":80"

clip_image003

因为我们最后的通过http所访问的形式是:http://ip/dir形式。所以我们要做两点,第一个是要配置nginx的二级目录访问,第二个是开启nginx目录的索引功能,nginx索引默认是关闭的。

我们先创建两个目录用于存储kickstart的配置文件和系统的安装文件,如下:

clip_image004

然后把相关的文件复制到相应的目录。然后我们再来配置nginx。

打开nginx配置文件,在server段中加入如下代码,其他的不做修改。如下:

vi /usr/local/nginx/con/nginx.conf

location /ks/ { alias /ks/;

autoindex on;

charset utf-8;

}

location /centos/ { alias /centos/;

autoindex on;

charset utf-8;

}

clip_image005

测试下该配置文件是否有问题如下:

/usr/local/nginx/sbin/nginx -t

clip_image006

测试没有问题,我们再重新启动nginx,如下:

/usr/local/nginx/sbin/nginx –s reload

clip_image007

现在我们来测试下,该二级目录是否可以浏览。如下:

clip_image008

clip_image009

通过上述两张截图,我们可以清晰的看到。我们在nginx中配置的目录已经可以正常浏览。

以上是有关nginx的配置,下面我们开始在KVM中安装VM。使用如下命令:

virt-install -n kickstart -r 2048 --vcpus=1 --os-type=linux -l http://192.168.1.102/centos -f /dev/vg1/kickstart --bridge=br0 -m 00:16:3E:12:D7:5D --nographics -x "console=ttyS0 --device=eth0 ip=192.168.1.220 netmask=255.255.255.0 gateway=192.168.1.1 ks=http://192.168.1.102/ks/ks.cfg ksdevice=eth0"

注意命令中红色标记出来的部分。

其中-l http://192.168.1.102/centos就是nginx作为KVM安装虚拟机的镜像源来使用的。

在这我们可以看出http的连接形式为:http://ip_addr/path,其中/path为http的web访问路径。

ks.cfg文件我们也使用http进行连接,如下:

more /ks/ks.cfg

clip_image010

注意其中配置的http的URL连接如下:

url --url=“http://192.168.1.102/centos”

下面开始正式安装VM,如下:

clip_image011

clip_image012

到此nginx与KVM、kickstart配合使用算是完成。

本文出自 “烂泥行天下” 博客,请务必保留此出处http://ilanni.blog.51cto.com/526870/1555142

烂泥:KVM、kickstart与nginx集成