cloudstack.docx
- 文档编号:24597900
- 上传时间:2023-05-29
- 格式:DOCX
- 页数:52
- 大小:2.87MB
cloudstack.docx
《cloudstack.docx》由会员分享,可在线阅读,更多相关《cloudstack.docx(52页珍藏版)》请在冰豆网上搜索。
cloudstack
安装部署CloudStack4.0企业私有云平台
安装部署CloudStack4.0企业私有云平台1
1.环境介绍1
2.什么是CloudStack1
3.宿主机的系统需求2
3.1.配置安装源3
配置本地安装源3
4.安装ManagementServer3
下载安装CloudStackManagementServer与vhd-util(可选)3
安装配置MySQL数据库4
5.参考资料49
环境介绍
OS:
UbuntuServer12.04.164-bit
Server:
172.18.0.7cloudstack-server-1
-CloudStackManagementServer
-CloudStackAgent
-NFSServer
-MySQLServer
注:
CloudStack支持很好的分布式架构,上面-代表的所有角色都可以部署在不同的机器上,但在测试环境中因为条件有限我全部都部署到了一台机器上。
什么是CloudStack
CloudStack是一个开源的具有高可用性及扩展性的云计算平台。
提到开源的云计算平台,相信大家首先想到的可能是OpenStack,目前国内的几家云计算平台如阿里云、盛大云以及新浪SAE貌似都基于OpenStack做了二次开发。
但使用过CloudStack之后,你会发现其实CloudStack更像是一个商业化过后的产品,有着非常好的用户界面,各个模块默认集成的很好,且安装与部署过程也相对容易一些。
事实上,CloudStack的前身是C,后来被思杰收购。
2011年7月,Citrix收购C,将CloudStack100%开源并交给Apache软件基金会管理。
同时,CloudStack已经有了许多商用客户,包括GoDaddy、英国电信、日本电报电话公司、塔塔集团、韩国电信等。
因此,CloudStack本身其实就是一个商业化过后的产品,然后在面对OpenStack等开源系统的巨大竞争压力的情况下选择了同样的开源。
目前Cloudstack支持管理大部分主流的hypervisors,如KVM,XenServer,VMware,OracleVM,Xen等。
CloudStack具有商业软件所拥有的完善的用户权限管理,可以让用户构建一个安全的多租户云计算环境。
同时兼容AmazonAWSAPI接口,可用来管理AWS的资源。
CloudStack的官方网址如下(目前还处于Apache基金会的孵化器中):
http:
//incubator.apache.org/cloudstack/
以下是CloudStack的系统架构,基本上与其他云计算平台相同:
宿主机的系统需求
由于CloudStack4.0限定了libvirt版本>0.9.4,并在社区宣称所支持的OS为CentOS/RHEL6.2以上或UbuntuServer12.04。
因此,这里我们选择UbuntuServer12.04.1作为我们的操作系统。
1)支持硬件虚拟化(Intel-VT或AMD-V)
2)64位的x86CPU
3)4G内存
4)30GB硬盘
5)1张网卡
配置安装源
配置本地安装源
#echo"debhttp:
//172.18.0.7tar/">/etc/apt/sources.list
#apt-getupdate
以下灰色可选
配置国内的网易镜像源
$sudosed-is//etc/apt/sources.list
#sed-is//etc/apt/sources.list
配置CloudStack官方源
#vim/etc/apt/sources.list.d/cloudstack.list
debhttp:
//cloudstack.apt-get.eu/ubuntuprecise4.0
debhttp:
//cloudstack.apt-get.eu/ubuntuprecise4.1
配置CloudStack官方源证书
#wget-O-http:
//cloudstack.apt-get.eu/release.asc|sudoapt-keyadd-
更新系统的安装源
#apt-getupdate
安装ManagementServer
准备好操作系统环境
查看主机名
$hostname--fqdn
cloudstack-server-1
$sudovim/etc/hosts
添加以下记录
172.18.0.7cloudstack-server-1
安装时间服务器
$sudoapt-getinstallopenntpd
下载安装CloudStackManagementServer与vhd-util(可选)
安装CloudStackManagementServer
#apt-getinstallcloud-client
将用户cloud加入到sudo用户组//CloudStack默认以cloud用户启动,但默认会通过sudo以root身份管理相关文件与目录
#addusercloudsudo
配置sudo用户组免密码切换//同样是为了解决和上面相同的权限问题
$sudovisudo
%sudoALL=(ALL:
ALL)NOPASSWD:
ALL
初始化root用户密码,如cloudstack//CloudStack默认需要root权限远程SSH连接到Agent
$sudo-i
#passwd
1
EnternewUNIXpassword:
2
RetypenewUNIXpassword:
3
passwd:
passwordupdatedsuccessfully
#chmod777/root//为了解决一个bug,即CloudStack默认以cloud用户启动,但却读取的是启动服务的用户的home目录用来存放一些临时文件,从而导致权限问题
$exit
下载vhd-util
$sudowget
$sudomvvhd-util/usr/lib/cloud/common/scripts/vm/hypervisor/xenserver/
安装配置MySQL数据库
#apt-getinstallmysql-server
在弹出的界面中输入密码,如:
123456
修改MySQL配置文件参数
#vim/etc/mysql/conf.d/f
重启MySQL
#servicemysqlrestart
初始化数据库cloud
#cloud-setup-databasescloud:
123456@localhost--deploy-as=root:
123456
配置NFS共享
CloudStack需要一个地方来存放Primar和SecondaryStorage,官方推荐使用NFS共享。
安装NFS
$sudoapt-getinstallnfs-commonnfs-kernel-server
创建目录
$sudomkdir-p/export/primary
$sudomkdir-p/export/secondary
编辑NFS配置文件
$sudovim/etc/exports
1
/export *(rw,async,no_root_squash,no_subtree_check)
刷新配置
$sudoexportfs-a
挂载测试NFS共享
$sudomkdir/mnt/primary
$sudomount-tnfs172.18.0.7:
/export/primary/mnt/primary
$sudomkdir/mnt/secondary
$sudomount-tnfs172.18.0.7:
/export/secondary/mnt/secondary
$df-h
准备SystemVMTemplate
我们选择KVM作为虚拟化引擎
#/usr/lib/cloud/common/scripts/storage/secondary/cloud-install-sys-tmplt-m/mnt/secondary/-uhttp:
//172.18.0.7/tar/acton-systemvm-02062012.qcow2.bz2-hkvm-F
安装配置KVM虚拟化Host主机
安装配置Agent
$sudoapt-getinstallcloud-agent
安装配置libvirt(可选)
$sudovim/etc/libvirt/libvirtd.conf
修改以下配置
1
listen_tls=0
2
listen_tcp=1
3
tcp_port= "16059"
4
auth_tcp= "none"
5
mdns_adv=0
查看配置
$cat/etc/libvirt/libvirtd.conf|grep-v'#'|grep-v"^$"
1
listen_tls=0
2
listen_tcp=1
3
tcp_port= "16509"
4
mdns_adv=0
5
unix_sock_group= "libvirtd"
6
unix_sock_rw_perms= "0770"
7
auth_unix_ro= "none"
8
auth_unix_rw= "none"
9
auth_tcp= "none"
$sudovim/etc/init/libvirt-bin.conf
修改以下参数
1
env libvirtd_opts="-d-l"
#sudovim/etc/libvirt/qemu.conf
修改以下参数
1
vnc_listen= "0.0.0.0"
重启服务
$sudoservicelibvirt-binrestart
配置安全策略
#dpkg--list"apparmor"
#ln-s/etc/apparmor.d/usr.sbin.libvirtd/etc/apparmor.d/disable/
#ln-s/etc/apparmor.d/usr.lib.libvirt.virt-aa-helper/etc/apparmor.d/disable/
#apparmor_parser-R/etc/apparmor.d/usr.sbin.libvirtd
#apparmor_parser-R/etc/apparmor.d/usr.lib.libvirt.virt-aa-helper
配置网桥
需要注意的是,官方文档给出的配置参数会导致网络不可用。
正确的配置是将物理网卡设置为manual,然后在虚拟网卡上设置IP并桥接到物理网卡上。
#vim/etc/network/interfaces
#Theloopbacknetworkinterface
autolo
ifaceloinetloopback
autoeth0
ifaceeth0inetmanual
#Publicnetwork
autocloudbr0
ifacecloudbr0inetstatic
address172.18.0.7
netmask255.255.0.0
gateway172.18.0.254
bridge_portseth0
bridge_fd5
bridge_stpoff
bridge_maxwait1
dns-nameservers10.6.255.25361.139.2.69
autocloudbr1
ifacecloudbr1inetmanual
bridge_portseth0
bridge_fd5
bridge_stpoff
bridge_maxwait1
#/etc/init.d/networkingrestart
配置防火墙
#ufwallowprototcpfromanytoanyport22
#ufwallowprototcpfromanytoanyport80
#ufwallowprototcpfromanytoanyport1798
#ufwallowprototcpfromanytoanyport16509
#ufwallowprototcpfromanytoanyport5900:
6100
#ufwallowprototcpfromanytoanyport49152:
49216
用户界面
禁用系统默认的tomcat服务
#/etc/init.d/tomcat6stop
启动cloud-management
#/etc/init.d/cloud-managementrestart
1
*StartingCloudStack-specificTomcatservletenginecloud-management[OK]
登陆用户界面
http:
//172.18.0.7:
8080/client/
默认账号密码
admin/password
可以看到如下图所示向导界面
选择左边的按钮"IhaveusedCloudStackbefore,skipthisguide"。
即进入如下图所示用户界面
配置ManagementServer
整个ManagementServer的架构如下
修改Web管理员默认密码
登陆http:
//172.18.0.7:
8080/client
进入Accounts-admin-ViewUsers-admin页面,点击ChangePassword
接着我们进入到Infrastructure界面,可以看到目前没有任何设置,所有数目都是0。
创建相关配置
在用户界面中通过向导,依次创建
"Zone"-"AddZone"-"PhysicalNetwork"-"Pod"-"GuestTraffic"-"StorageTraffic"-
"Cluster"-"Host"-"PrimaryStorage"-"SecondaryStorage"
如下列图片所示:
选择Basic安装向导
配置Zone
配置PhysicalNetwork
配置Pod,此处的网络设置主要用于CloudStack内部的管理通信
配置GuestTraffic,此处的网络设置用于给Instance分配IP
配置StorageTraffic,此处的网络设置用于存储系统
配置Cluster
配置Host,即Agent主机,虚拟机的宿主机,用户名密码与SSH相同
配置主存储空间,我选择了本地mount点,即mount过后的本地路径,分布式部署时可以选择NFS模式
配置附属存储空间,仅支持NFS模式
配置完成,点击"Launchzone"
可以看到整个创建过程,最后创建完成之后提示是否启用Zone,选择Yes
创建Instance类型
默认有SmallInstance和MediumInstance
我们再分别创建两个类型:
Large和xLarge,如下图所示:
创建LargeInstanceType
创建xLargeInstanceType
查看xLargeInstanceType属性
创建ISO安装源并创建Instance
在用户界面中配置
Template-Selectview:
ISO-RedisterISO
1
Name:
Ubuntu-10.10
2
Description:
UbuntuServer10.1064-bitx86
3
URL:
http:
//old-
4
Zone:
AllZones
5
Bootable:
Yes
6
OSType:
Ubuntu10.10(64-bit)
7
Extractable:
Yes
8
Public:
Yes
9
Featured:
Yes
如下图所示:
然后,等待ISO的Ready状态为Yes的时候,如下图所示
接着,就可以开始使用ISO创建Instance,并在后面跟将其制作成为Template了。
如果想下载的速度快一些,可以通过在主机上搭建一个HTTPServer
但需要登录到SecondaryStorageVM内部对防火墙规则进行一些修改,否则无法访问主机的80端口
具体步骤如下
$sudoapt-getinstallapache2
$sudonetstat-lntp|grep-w80
1
tcp 0 00.0.0.0:
80 0.0.0.0:
* LISTEN 6157/apache2
上传Ubuntu安装ISO到服务器的/var/www/iso,例如ubuntu-10.10-server-amd64.iso
$sudomkdir/var/www/iso
$sudochownwww-data:
www-data/var/www/iso
$sudochownwww-data:
www-data/var/www/iso/ubuntu-10.10-server-amd64.iso
获取SecondaryStorageVM的IP(169.254.x.x),如下图所示
登录SecondaryStorageVM修改防火墙规则
$sudo-i
#ssh-i.ssh/id_rsa.cloud-p3922169.254.1.99
root@s-30-VM:
~#iptables-DOUTPUT-oeth1-ptcp-mstate--stateNEW-mtcp--dport80-jREJECT--reject-withicmp-port-unreachable
将URL设置为http:
//172.18.0.7/iso/ubuntu-10.10-server-amd64.iso即可
创建并定制Template
创建初始Instance
通过刚刚安装的ISO文件来创建一个Instance
具体步骤如下
选择ISO
选择刚刚创建好的ISO
选择xLargeInstance,这里跟根据需要自己决定
选择硬盘
默认没有安全组,直接下一步
最后给Template命名,并点击"LaunchVM"创建
创建过程大概1分钟左右
创建成功以后Instance状态为Running
通过NICs页面可以查看到所绑定的IP地址
点击Details页面的"Viewconsole",打开本地终端界面
可以看到操作系统的安装界面,接下来就是常见的系统安装过程了
通过Viewconsole执行操作系统的安装过程
通过在创建好的Instance的属性页面上点击Viewconsole,即通过Web界面操作本地图形终端
执行操作系统的安装过程,安装好操作系统。
定制Template
操作系统安装完成以后,由于计划以该操作系统来制作Template,所以需要进行如下修改
安装opensshclient和server(通过Viewconsole)
ubuntu@Template-Instance:
~$sudoapt-getinstallssh
后面的步骤就可以通过SSH来完成了。
配置国内的网易镜像源
ubuntu@Template-Instance:
~$sudosed-is//etc/apt/sources.list
ubuntu@Template-Instance:
~$sudosed-is//etc/apt/sources.list
ubuntu@Template-Instance:
~$sudoapt-getupdate
配置sudo用户组免密码切换
ubuntu@Template-Instance:
~$sudovisudo
%sudoALL=(ALL:
ALL)NOPASSWD:
ALL
%adminALL=(ALL)NOPASSWD:
ALL
安装常用工具
ubuntu@Template-Instance:
~$sudoapt-getinstallvimlrzsz
去除主机名相关配置
这样做是为了后面利用该Template创建的Instance能够自动生成特有的主机名
ubuntu@Template-Instance:
~$sudovim/etc/hosts
注释或删除以下内容
#127.0.1.1Template-Instance.cs1cloud.internalTemplate-Instance
将/etc/hostname文件更名或删除
ubuntu@Template-Instance:
~$sudomv/etc/hostname/etc/hostname.template
关闭Instance
ubuntu@Template-Instance:
~$sudosync
ubuntu@Template-Instance:
~$sudopoweroff
创建Template
确认Instance已经关闭,如下图所示
然后卸下Instance上之前所挂载的ISO
然后选择Instance对应的Volumes,点击CreateTemplate
Name:
Ubunt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- cloudstack