阅读:4523回复:6
[CloudStack] 4.4 入门文档
开始之前,先了解下什么是CloudStack ,下文内容来自第一次进入 CloudStack MS 首页.
什么是 CloudStack™? CloudStack™ 是一个软件平台,可将计算资源集中在一起以构建公共、私有和混合基础设施即服务(IaaS)云。CloudStack™ 负责管理组成云基础架构的网络、存储和计算节点。使用 CloudStack™ 可以部署、管理和配置云计算环境。 CloudStack™ 通过扩展商用硬件上运行的每个虚拟机映像的范围,提供了一个实时可用的云基础架构软件堆栈用于以服务方式交付虚拟数据中心,即交付构建、部署和管理多层次和多租户云应用程序必需的所有组件。开源版本和 Premium 版本都已可用,且提供的功能几乎完全相同。 维基百科认为IaaS是云计算的代名词,它给的定义是”通过计算机网络按需供给计算资源”.CloudStack只是提供软件而不包含硬件,所以对于CloudStack来讲定义成IMaaS或IAaaS(基础设施管理即服务)更为合适. CloudStack 历史 CloudStack的前身是Cloud.com,后被思杰收购。英特尔、阿尔卡特-朗迅、瞻博网络、博科等都已宣布支持CloudStack。 2011年7月,Citrix收购Cloud.com,并将CloudStack 100%开源。2012年4月5日,Citrix又宣布将其拥有的CloudStack开源软件交给Apache软件基金会管理。CloudStack已经有了许多商用客户,包括GoDaddy、英国电信、日本电报电话公司、塔塔集团、韩国电信等。 #XenServer 运维群 学习 cloudstack 与 xenserver 的童鞋请加此群: 137042113 群认证: citrix # |
|
最新喜欢:![]() |
沙发#
发布于:2014-08-28 10:22
环境与准备工作
1 拓扑update 20150319:1个管理节点, 1个一级存储节点(iscsi),1个二级存储节点(nfs) 图片:cloudstack-device.png ![]() 2 网络配置 网络类型为 CloudStack 基本网络,也就是 guest 与 MS/存储/主机 都在同一个网络. 网段:172.27.244.0/24 网关:172.27.244.254 管理VM 172.27.244.40 - 172.27.244.60 来宾VM 172.27.244.61 - 172.27.244.160 3 主机名 Cloudstack要求正确设置主机名,如果安装操作系统(CentOS)时您接受了默认选项,主机名为localhost.localdomain 编辑 vim /etc/hosts添加类似下内容 172.27.244.30 ms-30.hst.cloud 重启网络服务 /etc/init.d/network restart 通过hostname 命令重新检查主机名,并确认返回了正确的FQDN hostname --fqdnms-30.hst.cloud 4 SELinux 当前的CloudStack需要将SELinux设置为permissive才能正常工作,您需要改变当前配置,同时将该配置持久化,使其在主机重启后仍然生效。 编辑 vim /etc/selinux/config确保是以下字符串 SELINUX=permissive重启主机 sync && init 6 5 NTP 为了同步云平台中主机的时间,需要配置NTP,但NTP默认没有安装。因此需要先安装NTP,然后进行配置。 通过以下命令进行安装: yum -y install ntp实际上默认配置项即可满足的需求,仅需启用NTP并设置为开机启动,如下所示: chkconfig ntpd on /etc/init.d/ntpd start 6 配置ClouStack 软件库 创建repo文件 vim /etc/yum.repos.d/cloudstack.repo并添加如下信息 [cloudstack] name=cloudstack baseurl=http://cloudstack.apt-get.eu/rhel/4.4/ enabled=1 gpgcheck=0 本楼URL http://ywwd.net/read-710-1#765 # |
|
板凳#
发布于:2014-08-28 10:40
部署存储服务器
使用一台NFS服务器 同时做为主存储和二级存储,需配置两个NFS共享目录.mkdir -p /data/{primary,secondary} 1 硬件配置 磁盘: 300GB SAS 15K * 6块 Raid: Dell Perc6i /256MB Cache/级别 5/条带 1MB/Write Back CPU : XEON E5405 * 2颗,共8核心 内存: 16GB 网络: BCM 5708(GB) * 2块,双网卡绑定,模式0 操作系统: CentOS 6.5 amd64 软件:NFSv4 磁盘带宽测试请参考 2 以太网卡绑定 请参考 http://ywwd.net/read-166 3 配置 NFS NFSv4 CentOS 6.x 版本默认使用NFSv4,NFSv4要求所有客户端的域设置匹配,本例为 hst.cloud,请确保文件/etc/idmapd.conf中的域设置没有被注释掉,并设置为以下内容: grep -E '^Domain' /etc/idmapd.confDomain = hst.cloud 3.1 编辑 vim /etc/exports添加如下内容 /data/primary 172.27.244.0/24(rw,sync,no_root_squash,no_subtree_check) /data/secondary 172.27.244.0/24(rw,sync,no_root_squash,no_subtree_check)3.2 编辑 vim /etc/sysconfig/nfs文件中取消如下选项的注释: LOCKD_TCPPORT=32803 LOCKD_UDPPORT=32769 MOUNTD_PORT=892 RQUOTAD_PORT=875 STATD_PORT=662 STATD_OUTGOING_PORT=2020 3.3 启动NFS /etc/init.d/rpcbind start /etc/init.d/nfs start 3.4 开机启动 chkconfig nfs on chkconfig rpcbind on 3.5 防火墙 本例中nfs 没有启动iptables防火墙,如果启用iptables ,那么需要打开以下端口 iptables -A INPUT -s 172.27.244.0/24 -m state --state NEW -p udp --dport 111 -j ACCEPT iptables -A INPUT -s 172.27.244.0/24 -m state --state NEW -p tcp --dport 111 -j ACCEPT iptables -A INPUT -s 172.27.244.0/24 -m state --state NEW -p tcp --dport 2049 -j ACCEPT iptables -A INPUT -s 172.27.244.0/24 -m state --state NEW -p tcp --dport 32803 -j ACCEPT iptables -A INPUT -s 172.27.244.0/24 -m state --state NEW -p udp --dport 32769 -j ACCEPT iptables -A INPUT -s 172.27.244.0/24 -m state --state NEW -p tcp --dport 892 -j ACCEPT iptables -A INPUT -s 172.27.244.0/24 -m state --state NEW -p udp --dport 892 -j ACCEPT iptables -A INPUT -s 172.27.244.0/24 -m state --state NEW -p tcp --dport 875 -j ACCEPT iptables -A INPUT -s 172.27.244.0/24 -m state --state NEW -p udp --dport 875 -j ACCEPT iptables -A INPUT -s 172.27.244.0/24 -m state --state NEW -p tcp --dport 662 -j ACCEPT iptables -A INPUT -s 172.27.244.0/24 -m state --state NEW -p udp --dport 662 -j ACCEPT 强烈建议生产环境限制只允许XenServer/MC/SSVM 访问存储服务器. 3.6 客户端测试 查看挂载信息 showmount -e 172.27.244.28Export list for 172.27.244.28: /data/secondary 172.27.244.0/24 /data/primary 172.27.244.0/24 挂载 mount -t nfs 172.27.244.28:/data/primary /mnt/nfs/ IO吞吐量测试,客户端千兆以太网卡是瓶颈 ethtool eth0 | grep SpeedSpeed: 1000Mb/s 顺序写 dd if=/dev/zero of=/mnt/nfs/testbw bs=1M count=81928192+0 records in 8192+0 records out 8589934592 bytes (8.6 GB) copied, 78.0106 s, 110 MB/s 顺序读 dd if=/mnt/nfs/testbw of=/dev/null bs=1M8192+0 records in 8192+0 records out 8589934592 bytes (8.6 GB) copied, 76.3768 s, 112 MB/s 本楼URL http://ywwd.net/read-710-1#766 # |
|
地板#
发布于:2014-08-28 11:14
选择 Hypervisor
Hypervisor 选择了XenServer ,CloudStack 支持多种Hypervisor ,例如 VMware vSphere ESXi / Hyper-V / KVM 等等主流虚拟化技术,为什么这里选择XenServer , 因为工作环境有多台XenServer ,考虑兼容等多方面问题,最终选择XenServer , 但是随着深入学习 CloudStack 与 XenServer 后发现,将 XenServer 现有的虚拟机迁入CloudStack 灰常灰常难,一方面CloudStack 并没有现成的迁移方案,另一方面 XenServer 默认LVM SR 格式的虚拟机导致待迁移的VM 数据巨大无比,如果是新人学习 CloudStack ,我个人建议 Hypervisor 选择 KVM .1 安装 http://ywwd.net/read-699-1 2 使用XenCenter 管理 XenServer http://ywwd.net/read-699-1#746 3 更改XenServer 网络堆栈类型 http://ywwd.net/read-696 4 XenServer 网络之网卡绑定 http://ywwd.net/read-702 5 创建"标准" 主机资源池 或者 创建 "异类" 主机资源池 http://ywwd.net/read-704-1#755 http://ywwd.net/read-704-1#756 6 从资源池移除 主机注意事项 http://ywwd.net/read-704-1#757 更多资料XenServer 相关资料请参考 http://ywwd.net/thread-52 强烈建议先了解 XenServer 下的网络/存储/主机资源池等概念后,再去部署CloudStack ,这样会少走些弯路. 本楼URL http://ywwd.net/read-710-e#767 # |
|
4楼#
发布于:2014-08-28 11:45
部署 cloudstack 管理服务器
cloudstack 管理服务器 简称MSMS 服务器,使用vSphere ESXi 上的一台虚拟机, 这里我也强烈推荐新人使用虚拟机部署CloudStack ,为什么? 这是因为,新人在使用CloudStack 的时候会遇到各种各样的问题导致需要重新初始化操作系统,如果每次都需要重新安装操作系统估计会疯掉,比如我前后一共用了 50多次才将CloudStack MS部署完毕,操作系统安装完毕后建立第1个快照,部署MS 之后建立第2个快照,最重要的 使用CloudStack 之前建立第3个快照,这样根据不同需求还原即可,如果担心性能神马之类的问题,可以在熟练使用CloudStack 之后转到物理机上就可以了. 1 配置 磁盘: 100GB CPU : 2vCPU 内存: 4GB 网络: 2vNIC 操作系统: CentOS 6.5 amd64 2 配置操作系统 按照环境准备 中的要求配置以下项目: 主机名 SELinux NTP 配置ClouStack软件库 本例中关闭iptables 3 安装 yum install cloudstack-management mysql-server ntp 按照提示 cd /usr/share/cloudstack-common/scripts/vm/hypervisor/xenserver wget http://download.cloud.com.s3.amazonaws.com/tools/vhd-util对于XenServer 这一步至关重要,我在这里浪费两天时间. 4 配置 mysql 数据库 编辑 vim /etc/my.cnf查找[mysqld] 添加如下内容: #add for cloudstack innodb_rollback_on_timeout=1 innodb_lock_wait_timeout=600 max_connections=350 log-bin=mysql-bin binlog-format = 'ROW' 启动 ntp 与 mysql 服务 /etc/init.d/ntpd start /etc/init.d/mysqld start 运行 mysql_secure_installation 给 mysql 设置密码 mysql_secure_installation 设置开机启动 chkconfig ntpd on chkconfig mysqld on 5 初始化 CloudStack 数据库 cloudstack-setup-databases cloud:ywwd.net@localhost --deploy-as=root:dongnan 插入一条sql mysql -uroot -pdongnan -e "INSERT INTO cloud.configuration(category,instance,component,name,value,description) VALUES ('Advanced', 'DEFAULT', 'management-server', 'xen.check.hvm', 'false', 'Shoud we allow only the XenServers support HVM');" cloud是将要创建用户名,ywwd.net是其密码 --deploy-as 参数 填写root用户与密码 此命令创建了以下数据库 mysql -ucloud -pywwd.net -e "show databases;"+--------------------+ | Database | +--------------------+ | information_schema | | cloud | | cloud_usage | | cloudbridge | +--------------------+ 6 初始化 CloudStack 管理服务器 cloudstack-setup-management此命令添加sudoer用户 grep -i cloud /etc/sudoerscloud ALL =NOPASSWD : /bin/chmod, /bin/cp, /bin/mkdir, /bin/mount, /bin/umount 此命令添加以下防火墙端口 iptables -L -nvChain INPUT (policy ACCEPT 1207 packets, 257K bytes) pkts bytes target prot opt in out source destination 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:9090 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:8250 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:7080 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:8080 Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 1192 packets, 257K bytes) 7 上传虚拟机模板 CloudStack通过一系列系统虚拟机提供功能,如访问虚拟机控制台,如提供各类网络服务,以及管理辅助存储的中的各类资源。该步骤会获取系统虚拟机模板,用于云平台引导后系统虚拟机的部署。 可以先将模板下载到本地http服务器上,这样安装速度更快. 模板下载地址 http://cloudstack.apt-get.eu/ 7.1 模板类型 不同的模板文件对应不同的hyperisor , 例如: xen.vhd.bz2 对应 XenServer kvm.qcow2.bz2 对应 KVM vmware.ova 对应 VMware(ESXi) 7.2 HTTP服务器 本例中将下载好的模板,存放到本地的http服务器,这样更方便快捷. pwd/usr/share/nginx/html/template IP : 172.27.233.41 7.3 挂载二级存储 mkdir -p /mnt/secondary mount -t nfs 172.27.244.30:/data/secondary /mnt/secondary 7.4 安装模板 #for XenServer /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -u http://172.27.233.41/template/systemvm64template-4.4.0-6-xen.vhd.bz2 -h xenserver -F #for KVM /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -u http://172.27.233.41/template/systemvm64template-4.4.0-6-kvm.qcow2.bz2 -h kvm -F 卸载二级储存 umount /mnt/secondary/ 现在万事俱备,只欠东风了.. 本楼 http://ywwd.net/read-710-e#768 # |
|
5楼#
发布于:2014-08-28 14:43
配置 CloudStack
MS 服务器安装完成并启动后,就可以通过 Web 方式配置 CloudStackCloudStack 默认信息 用户名:admin 密码:password 1 登陆 CloudStack 使用 Web浏览器输入 CloudStack MS 的IP地址 http://CloudStack-Server-IP:8080/client 图片:cloud2.png ![]() 2 首次登录会有一个安装向导,我们建议选择"我以前使用过CloudStack,跳过此指南" 图片:cloud3.png ![]() 3 进入主界面后,请点击"全局设置",然后搜索"secs",找到secstorage.allowed.internal.sites这个选项,把值写入172.27.244.0/24,这表示允许子网为172.27.244.x的ip访问二级存储, 图片:cloud4.png ![]() 4 修改后需要重启服务 /etc/init.d/cloudstack-management restart 5 接下来,我们将分别创建Zone,Pod,Cluster等,首先点击"基础架构",默认所有都为0 图片:cloud5.png ![]() 点击区域的"查看全部" 图片:cloud6.png ![]() 点击"添加区域" 图片:cloud6-1.png ![]() 区域类型选择"基本" 图片:cloud6-2.png ![]() 设置区域基本信息,这里虚拟机管理程序为xenserver 图片:cloud6-3.png ![]() 网络设置,保持默认 图片:cloud6-4.png ![]() 设置提供点(Pod)信息,这里填写"管理VM"预留的IP信息 图片:cloud6-5.png ![]() 来宾通信,这里填写"来宾VM"预留的IP信息 图片:cloud6-6.png ![]() 添加XenServer 群集 图片:cloud6-7.png ![]() 添加主机,注意如果配置了 XenServer 资源池,直接填写Pool Master 的IP 地址即可,CloudStack 将自动添加池内的其它主机. 图片:cloud6-8.png ![]() 添加主存储,这里我们使用NFS 图片:cloud6-9.png ![]() 添加辅助存储 图片:cloud6-10.png ![]() 点击"Launch"启动区域,如前面的配置都正确,则该区域会正常启动,如不能启动,则系统会要求重新核实前面的信息 图片:cloud6-11.png ![]() 等待大约5-10分钟,将会发现两个系统VM已启动,系统VM运行在我们所添加的群集里面的主机之上. 图片:cloud7.png ![]() 图片:cloud8.png ![]() 接下来就可以创建VM实例了. 本楼 http://ywwd.net/read-710-e#769 # |
|
6楼#
发布于:2014-08-28 15:03
创建一个VM实例
CloudStack 自带两个系统VM模板,其中一个可以用来创建VM 实例,在使用模板或者ISO 镜像之前需要先检查状态,确保状态为"就绪",系统VM 模板需要在互联网下载速度可能较慢,需要耐心等待.图片:cloud10.png ![]() 模板或者ISO镜像就绪后就可以创建VM实例了 实例 -> 添加实例 如下图 图片:cloud11.png ![]() 选择模板 图片:cloud11-1.png ![]() 实例类型 图片:cloud11-2.png ![]() 磁盘大小 图片:cloud11-3.png ![]() 网络 图片:cloud11-4.png ![]() 核对 图片:cloud11-5.png ![]() 完成 图片:cloud11-6.png ![]() 使用web 控制台登录虚拟机 图片:cloud11-7.png ![]() 当VM创建完毕后,会发现多了一个系统VM - 虚拟路由器 图片:cloud-e.png ![]() 本楼 http://ywwd.net/read-710-1#770 #END |
|