Cloudstack+XenServer配置和管理一个简单的云平台
2015-11-19 17:05
423 查看
Cloudstack+XenServer配置和管理一个简单的云平台
基本配置:Cloudstack4.3,XenServer6.2操作系统:centos6.6-mini-x64
基本介绍:Cloudstack是一个开源的Iaas平台,XenServer则是一个成熟的服务器端虚拟化软件,此二者能够完美结合。早在Cloudstack开源之前,它就与XenServer配合的很好。因为Hypervisor采用XenServer,配置简单,不比像管理KVM节点那样需要安装Agent;功能全面,不必像管理vSphere节点那样,既离不开vCenter,又因为vCenter的API没有完全开放而实现全部功能。本文在此只是简单的介绍如何安装和配置Cloudstack,其余应用,会在后续文章中再谈到。
有几个基本概念需要明白:
1.Cloudstack分为管理节点和安装节点。管理节点即我们安装Cloudstack-management管理工具的机子,它负责管理整个服务器集群。
2.计算节点即我们安装XenServer的机子,它是实际上的物理机,为VM提供资源。
3.Cloudstack的管理和数据都是存在于MySql数据库之中的,因此若有什么问题可以查看MySql数据库。
4.Cloudstack的存储分为一级存储和二级存储。二级存储主要用来存储用户所上传的模板,ISO和快照文件,一级存储则是用来存放虚拟机文件的。
下面这张图很清楚的展示了Cloudstack的整个架构。
在此对这张图简单做个介绍。Management Server级即管理节点,后端由MySql控制。Zone是Cloudstack中最大的一个区域,通常我们将它理解为机房,其次是Pod,称之为提供点,再往下是Cluster,通常我们将其理解为一个机柜,而Cluster里面的Host,则是我刚刚提到的计算节点,也就是机柜里的一台主机。可以从图中很清楚的看到,一个Cluster里面的所有主机是共享一级存储的,而一个区域里的所有主机是共享二级存储的。
介绍完基本概念,下来开始介绍如何安装和配置。
一.安装管理节点
1.安装一台虚拟机作为管理节点,最好使用mini版的,因为在后续的安装中可能会和系统自带的包冲突。在这里,我安装的是centos6.6-mini-x64,并保证该台机子能够联网。我该台机子的IP为192.168.1.50.
2.配置域名。运行hostname --fqdn,查看其域名。通常情况下。默认是Localhost,这时候,我们需要修改其域名。分别修改/etc/hosts,加上
接着,修改/etc/sysconfig/network,加上
修改完毕这两个文件后,再次输入hostname --fqdn,
可以看到,此时主机域名已被修改过来。如果不行,先logout,然后重新登录。或者使用service network restart这个指令,重启服务,应该就可以了。
3.关闭SELinux组件。首先检查CentOs中的配置,使用sestatus,可以看到
这时候,我们需要修改/etc/selinux/config文件,将selinux=enforcing改为selinux=permissive,并重启主机,或者使用指令setenforce permissive使其立即生效。可以看到,已经修改过来
4.配置Yum源。有两种方法获取yum源,一是通过网络直接下载,而是指定本地或内网的源。在本次安装中,我使用了第一种方法,即直接从网络下载。cd 到/etc/yum.repos.d/目录下,新建cloudstack.repo文件,并在其中写入如下内容:
注意,我这里的版本号是4.3,仅供参考,写完之后保存退出。然后执行yum update指令。
接下来使用yum install cloudstack-management,安装好管理节点的相关软件包。
5.安装NTP服务。使用yum install ntp。在安装之前,也可先检查系统是否已经安装,用service ntpd status。安装完成之后,输入chkconfig ntpd on,设置为开机自动启动。可用chkconfig --list|grep ntpd来检查是否设置成功。安装NTP时间同步服务是为了管理节点和计算节点的时间同步,以方便管理。管理节点的NTP作为Server。在配置文件/etc/ntp.conf中,添加一行内容,允许一下网段的NTP Client端与管理节点通信。
restrict 192.168.0.0 mask 255.255.0.0 nomodify。
这几行是否要注释,取决于你是否需要使用网络时间。如果需要,则将注释去掉,如果不需要,则保留注释,并使用本地时钟。
关闭防火墙。这里暂且为了实验方便,先关闭防火墙,Service iptables stop。当然,比较安全的做法是在防火墙中添加相应的策略。至此,NTP服务安装完毕。
6.安装MySql数据库。首先安装MySql数据库,yum install mysql-server。修改mysql配置文件/etc/my.cnf,加入如下几行:
其中max_connection=350*物理服务器个数。
同样,启动mysql服务,service mysqld start。
设置开机自动启动服务,chkconfig mysqld on。
第一次访问mysql的时候,数据库默认是不带密码的。为了安全起见,我们需要给mysql设置登录密码,执行如下命令:
mysqladmin -u root password ‘123456’
初始化登录密码成功。下次在登录,只需输入mysql -u root -p,根据提示输入密码即可。
接下来运行cloudstack自带脚本,使其自动配置数据库,输入如下指令:
cloudstack-setup-databases cloud:cloud@localhost --deploy-as=root:123456
即表示以 root 用户身份来生成数据库,该数据库属于新建的 cloud 用户(密码 cloud)。
还有一点,Mysql数据库默认只允许本地访问。所以,如果希望通过IP地址或这几名来访问Mysql,就需要添加MySql访问权限。使用root用户登录数据库,执行以下命令:
mysql>GRANT ALL PRIVILEGES ON *.* TO ‘root’@’Cloudstack.ouc.edu’ IDENTIFIED BY ’123456’ WITH GRANT OPTION;
7.启动Cloudstack。执行指令:
Cloudstack-setup-management.
运行完该脚本程序之后,打开浏览器,输入http://192.168.1.50:8080/client。若看到以下界面,这说明CLoudstack管理节点安装成功。默认的用户名:admin,密码:password。
二.安装计算节点
计算节点的安装,只需要根据安装步骤一步步往下进行即可,唯一需要注意的是以下几点:
1.本次实验亲测成功,但XenServer版本是6.2的,其他版本会导致不兼容。比如,我第一次安装CLoudStack4.4+XenServer6.5失败,即是因为版本问题。
2.计算节点作为NTP服务的CLient节点,需要和Server节点同步。因此,在安装步骤中,有一步是选择NTP服务,在此填入Server节点的IP地址即可。当然,也可安装完毕之后,从Xen的shell进行配置,不过那样不如这样省事。
3.很多安装教程说计算节点需要配置主机名,其实这一步无所谓,并不一定要做。
4.给每台XenServer分配一个静态的IP。
三.配置存储
前已述及,Cloudstack的存储系统分为一级存储和二级存储,支持多种文件系统,但通常情况下,我们采用NFS文件系统。一级存储存放VM文件,二级存储存放ISO,镜像,快照文件。
由于我们机房有一个独立的NAS,因此只需要在NAS上稍加配置即可,将其文件格式配置为NFS就可以使用了。
那对于没有独立存储设备的情况,按照网络上的教程,大多是把管理节点的磁盘作为存储。
步骤如下:
1.安装NFS服务:
yum install nfs-utils
修改配置文件/etc/sysconfig/nfs,取消如下注释:
LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
MOUNTD_PORT=892
RQUOTAD_PORT=875
STATD_PORT=662
STATD_OUTGOING_PORT=2020
开启NFS服务:
service rpcbind start
service nfs start
设置为开机自启动:
# chkconfig nfs on
# chkconfig rpcbind on
2.在管理节点的/的目录下新建两个文件夹,分别命名为/export/primary,/export/secondary作为一级存储和二级存储的目录。
mkdir -p /export/primary
mkdir -p /export/secondary
3.编辑文件/etc/exports:
/export *(rw,async,no_root_squash,no_subtree_check)
4.导出export目录
exportfs -a
5.将/export/secondary目录挂载到管理节点上,测试NFS是否可用:
mkdir /mnt/secondary
mount -t nfs 192.168.1.50:/export/primary /mnt/secondary
可以用Showmount -e来查看本机挂载情况
6.挂载系统模板到二级存储:
首先下载XenServer的系统模板。Cloudstack4.3的模板我是在这个地址下载的
http://www.cloudstack-china.org/2014/04/3272.html
可以用Winscp工具将其保存到/opt/cloudstack上
我们需要通过系统虚拟机模板下载的脚本,将其上传到二级存储上。
脚本的路径比较长,我们可以通过如下指令找到脚本路径:
Find / -name *sys-tmpl*,搜索结果应该是:
/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt
找到路径后,使用如下指令:
/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt
-m /mnt -f /opt/cloudstack/systemvm64template-2014-01-14-master-xen.vhd.bz2 -h xenserver -F
这可能需要一段时间,系统虚拟机的模板就会上传到二级存储上了。
上传成功之后,可以查看/mnt/secondary目录下是否有文件。
至此,Cloudstack的安装过程就已经完成。后续的配置会在之后的文章中贴出。
相关文章推荐
- Centos6 编译安装Python
- 简单易懂云计算(转自天涯感谢原楼主iamsatisfied)
- 硬盘安装CentOS 6.2以及添加GRUB启动菜单
- CentOS 6.2实战部署Nginx+MySQL+PHP
- 2011云计算知识库:盘点千奇百怪的云名称
- CentOS 7系统配置上的变化解析
- CentOS下DB2数据库安装过程详解
- CentOS 6.3下编译安装Ruby 2.0笔记
- 在Centos 5.5 上编译安装mysql 5.5.9
- CentOS 6.5源码安装Erlang教程
- 在CenOS系统下安装和配置Redis数据库的教程
- centos 5.6 升级php到5.3的方法
- CentOS mysql安装系统方法
- centos下安装mysql服务器的方法
- CentOS 5.1 4.6最新官方下载地址列表
- Centos搭建GTK+Codeblock完整版
- CentOS 5.1下跑Mono和Asp.net的实现方法
- centos 安装免费控制面板kloxo步骤