更多博文关注个人博客: 

cloudstack组成部分讲解:

Zone:Zone 对应于现实中的一个数据中心,它是 CloudStack 中最大的一个单元。

Pod:Pod 对应着一个机架。同一个 pod 中的机器在同一个子网(网段)中。

Cluster:Cluster 是多个主机组成的一个集群。同一个 cluster 中的主机有相同的硬件,相同的 Hypervisor,和共用同样的存储。同一个 cluster 中的虚拟机,可以实现无中断服务地从一个主机迁移到另外一个上。

Host:Host 就是运行虚拟机(VM)的主机。

即从包含关系上来说,一个 zone 包含多个 pod,一个 pod 包含多个 cluster,一个 cluster 包含多个 host。

CloudStack 中存在两种存储:

Primary storage:一级存储与 cluster 关联,它为该 cluster 中的主机的全部虚拟机提供磁盘卷。一个 cluster 至少有一个一级存储,且在部署时位置要临近主机以提供高性能。

Secondary storage:二级存储与 zone 关联,它存储模板文件,ISO 镜像和磁盘卷快照。

  • 模板:可以启动虚拟机的操作系统镜像,也包括了诸如已安装应用的其余配置信息。

  • ISO 镜像:包含操作系统数据或启动媒质的磁盘镜像。

  • 磁盘卷快照:虚拟机数据的已储存副本,能用于数据恢复或者创建新模板

环境准备

一个完整的 CloudStack 环境包括两部分:

  • 管理服务器(Management Server)

  • 虚拟机管理器 (Hypervisor)

  • Centos6.4

  • cloudstack4.2

  •  

1.配置yum,检测网络,hostname,安装ntp,安装manager[cloudstack]name=cloudstackbaseurl=http://cloudstack.apt-get.eu/rhel/4.2/enabled=1gpgcheck=0[root@cloudstack /]# hostname -fcloud-agent.test.com[root@cloudstack /]# ping -c 3 www.cloudstack.orgPING www.apache.org (192.87.106.229) 56(84) bytes of data.64 bytes from aurora-2012.apache.org (192.87.106.229): icmp_seq=1 ttl=45 time=396 ms64 bytes from aurora-2012.apache.org (192.87.106.229): icmp_seq=2 ttl=45 time=396 ms64 bytes from aurora-2012.apache.org (192.87.106.229): icmp_seq=3 ttl=45 time=396 ms--- www.apache.org ping statistics ---5 packets transmitted, 3 received, 40% packet loss, time 4644msrtt min/avg/max/mdev = 396.281/396.515/396.858/0.570 ms[root@cloudstack /]# yum -y install cloudstack-management2.安装配置mysql数据库[root@cloudstack /]# yum -y instal mysql-server[root@cloudstack /]# vi /etc/my.cnf添加以下参数innodb_rollback_on_timeout=1innodb_lock_wait_timeout=600max_connections=350log-bin=mysql-binbinlog-format = 'ROW'[root@cloudstack /]# /etc/init.d/mysqld start  #初始化mysql[root@cloudstack /]# mysql_secure_installation #加固mysql3.设置selinux[root@cloudstack /]# setenforce 0[root@cloudstack /]# getenforcePermissive[root@cloudstack /]# sed -i 's/SELINUX=*/SELINUX=Permissive/' /etc/sysconfig/selinux4.导入数据到mysql,启动manager[root@cloudstack /]#cloudstack-setup-databases cloud:
@localhost \  #设置cloud的dbpassword--deploy-as=root:
 \   #通过mysql的root用户去导入-e 
 \-m 
 \-k 
 \-i 
[root@cloudstack /]# cloudstack-setup-management #启动manager和设置iptbles等环境5.如果要初始化设置可以执行下列语句mysql> drop database cloud; drop database cloud_usage;然后在重新执行以上操作6. 创建主存储和二级存储[root@cloudstack /]# yum -y install nfs-utils[root@cloudstack /]# cat /etc/exports/export *(rw,async,no_root_squash)[root@cloudstack export]# exportfs -a #生效/etc/export[root@cloudstack export]# exportfs -v #查看导出目录/export       
(rw,async,wdelay,no_root_squash,no_subtree_check)[root@cloudstack /]# mkdir /export/{primary,secondary} -p  #创建目录[root@cloudstack /]# cat >> /etc/sysconfig/nfs <
 LOCKD_TCPPORT=32803> LOCKD_UDPPORT=32769> MOUNTD_PORT=892> RQUOTAD_PORT=875> STATD_PORT=662> STATD_OUTGOING_PORT=2020> ENF[root@cloudstack /]#vim /etc/sysconfig/iptables  #添加一下防火墙策略-A INPUT -s 
 -m state --state NEW -p udp --dport 111 -j ACCEPT-A INPUT -s 
 -m state --state NEW -p tcp --dport 111 -j ACCEPT-A INPUT -s 
 -m state --state NEW -p tcp --dport 2049 -j ACCEPT-A INPUT -s 
 -m state --state NEW -p tcp --dport 32803 -j ACCEPT-A INPUT -s 
 -m state --state NEW -p udp --dport 32769 -j ACCEPT-A INPUT -s 
 -m state --state NEW -p tcp --dport 892 -j ACCEPT-A INPUT -s 
 -m state --state NEW -p udp --dport 892 -j ACCEPT-A INPUT -s 
 -m state --state NEW -p tcp --dport 875 -j ACCEPT-A INPUT -s 
 -m state --state NEW -p udp --dport 875 -j ACCEPT-A INPUT -s 
 -m state --state NEW -p tcp --dport 662 -j ACCEPT-A INPUT -s 
 -m state --state NEW -p udp --dport 662 -j ACCEPT[root@cloudstack /]# /etc/init.d/nfs restart && /etc/init.d/mysqld restart /etc/init.d/iptables restart

5.通过http://hostname:8080/client  访问默认用户名:admin密码:password后期安装agent端已经先关配置