CloudStack 是一个开源的具有高可用性及扩展性的云计算平台。
目前Cloudstack支持管理大部分主流的hypervisors,如KVM,XenServer,VMware,Oracle VM,Xen等。同时CloudStack是一个开源云计算解决方案。可以加速高伸缩性的公共和私有云(IaaS)的部署、管理、配置。使用CloudStack作为基础,数据中心操作者可以快速方便的通过现存基础架构创建云服务。
我们国内用cloudstack还真的不少,现在大家都在做cloudstack api的二次开发。。。
有朋友问我cloudstack怎么操作迁移,这就详细的描述下我的过程。
下次咱们在用cloudstack api 构建和管理主机。。。。
centos6.3 cloudstack 安装文档
http://cloudstack.apache.org/docs/en-US/Apache_CloudStack/4.0.0-incubating/html-single/Installation_Guide/
api 文档地址
src http://download.cloud.com/releases/3.0.3/api_3.0.3/TOC_Root_Admin.html
他可爱的logo ~
让我们看看他支持什么 ? 下面的他虚拟系统都支持的。
下面这图很好的让我们理解,他的网络框架。
概念介绍:
Zone(区域): 是 CloudStack 部署中最大的组织单位。一个区域通常会对应到一个单一的数据中心,虽然它是允许有一个数据中心的多个区域。将基础设施组织进区域的好处是提供物理隔离
和冗余。例如,每个区域都可以有自己的电源和网络上行,区域可以被广泛的被地理分离(尽
管这不是必需的)Zone 包含一个或者多个 Pods,每个 Pod 包含一个或者多个主机组成的多个集
群,以及一个或者多个一级存储服务器。区域中被所有 pods 进行共享的二级存储
Pod: 一般代表一个机架,同一 pod 中的主机处于同一子网内
Cluster: 就是集群,由多个主机组成的集群
Host: 一个主机,集群中的主机,此处可以理解成一台装有 xenserver或KVM 的物理机器
mysql cloud db: 用于存放相关数据信息,诸如网络地址等等,可以通过 mysql 客户端登入查看相关表以及相关属性。
centos 下安装 cloudstack 管理端和受控端 ~
安装就不详细说了,大家可以看官网的介绍,说的很详细的。
我这里遇见一个奇葩的问题,就是受控端启动不了
[root@102~]# tail /var/log/cloudstack/agent/agent.log 2013-07-05 22:41:53,691 INFO [cloud.agent.AgentShell] (main:null) Agent started 2013-07-05 22:41:53,693 INFO [cloud.agent.AgentShell] (main:null) Implementation Version is 4.1.0 2013-07-05 22:41:53,694 INFO [cloud.agent.AgentShell] (main:null) agent.properties found at /etc/cloudstack/agent/agent.properties 2013-07-05 22:41:53,696 INFO [cloud.agent.AgentShell] (main:null) Defaulting to using properties file for storage 2013-07-05 22:41:53,698 INFO [cloud.agent.AgentShell] (main:null) Defaulting to the constant time backoff algorithm 2013-07-05 22:41:53,777 INFO [cloud.agent.Agent] (main:null) id is 2013-07-05 22:41:53,781 ERROR [cloud.resource.ServerResourceBase] (main:null) Nics are not configured! 2013-07-05 22:41:53,787 INFO [cloud.resource.ServerResourceBase] (main:null) Designating private to be nic cloudbr0 2013-07-05 22:41:53,799 INFO [resource.virtualnetwork.VirtualRoutingResource] (main:null) VirtualRoutingResource _scriptDir to use: scripts/network/domr/kvm 2013-07-05 22:41:54,017 ERROR [cloud.agent.AgentShell] (main:null) Unable to start agent: NO HVM support on this machine, please make sure: 1. VT/SVM is supported by your CPU, or is enabled in BIOS. 2. kvm modules are loaded (kvm, kvm_amd|kvm_intel)
确定自己是否完成的安装cloudstack 受控端。
yum remove cloudstack-agent -y yum install kvm libvirt python-virtinst qemu-kvm -y yum install cloudstack-agent -y service libvirtd start service libvirtd status service cloudstack-agent start
我这里用的是 cloudstack 4.1 大家可以用用cloudstack 4.2
下图是我的资源:
我们测试下 动态迁移哈,也就是不中断业务的情况下。。。
我这边暂时用4台R510做的集群和私有云测试 。
源地址 http://rfyiamcool.blog.51cto.com/1030776/1303052
好,我们就迁移这一台吧~
这台服务器是在102上,我们可以用virsh list --all 看到他的情况。
选择迁移到的服务器 ~
先一直ping着要迁移的那台vm主机
大家看,已经以前过来了吧~
通过cloudstack看到的情况 !
在这里建议大家管理这些主机的时候,最好用一些个集群管理 比如 puppet,saltsatck,chef之类的工具。 大家后期可能要配置网络的安全组,要是配置不好的话,会总成ssh连接不上。。。 反正蛋疼的要命。。。当然前期是我的配置没有配置好造成的这样的原因。。。
关于模板的制作,大家可以用vsphere,kvm,xen里面现成的虚拟机的硬盘文件,打包到模板里面。
还有最主要的一点,大家线上使用前一定要做大量的测试,尽量不要顺着来,要乱七八糟的测试,锻炼自己出错的时候,该如何的解决问题。 说实话,现在做运维的哥们好多都变得浮躁起来了,包括我自己也这个德行。 会点啥玩意,就想很快的再线上用,出事了就SB了。
cloudstack 功能做的差不多了,该有的都有了,但是可玩性,要比openstack要低点。 操作和学习难度都还不错。不管怎么说,还是推荐大家看这个私有云。
在国内,像中国电信这类大型企业,还有一些中小型企业,都在迅速的使用 CloudStack 来构建它们的公共云或私有云、混合云平台。在这些用户的实践中,CloudStack 对丰富种类的 Hypervisor、存储类型的支持、强大的伸缩能力和网络功能、良好的安全设计、灵活的 API 调用都令人留下深刻印象。
与 OpenStack 的竞争会是接下来几年 CloudStack 无法回避的问题,相对于对手的后发优势,CloudStack 更强调成熟的产品应用。但随着自身的开源,将来的 IaaS 市场也许会在求同方面走的更远。