Cloudstack 之 单节点安装概念验证
admin
2023-04-07 05:41:15
0

Cloudstack  之 单节点安装概念验证 Cloudstack  之 单节点安装概念验证

 上面左边是我的个人微 信,如需进一步沟通,请加微 信。  右边是我的公众号“Openstack私有云”,如有兴趣,请关注。

    新的单位使用了cloudstack作为云平台的基础架构,老规矩,通过动手搭建一个实验环境熟悉一下cloudstack的基本的组件。

    找到官网的官方安装手册,网址如下:

    http://docs.cloudstack.apache.org/en/4.11.2.0/quickinstallationguide/qig.html

    可以看到cloudstack的版本更新应该是挺慢的,截止到现在(2019年3月)的最新版本是4.11.2.0 ,使用的基础OS是Centos6.8 ,首先下载Centos6.8 ,网址如下:

    http://mirrors.kernel.org/centos/6/isos/x86_64/

    根据要求,下载的是minimal 版本。

    首先不要着急动手,先通读一遍上面的安装手册,基本的思路还是首先安装基本的OS,然后进行selinux、ntp、nfs等基础配置,配置Cloudstack的安装源开始安装Cloudstack组件,安装mariadb数据库,下载管理镜像,然后开始配置Cloudstack 。总体感觉安装部署方面应该比Openstack要简单一些,因为Cloudstack的相关组件是直接通过下载标准模板镜像,通过虚拟机完成的,我个人感觉这种方式是很好的,类似于Openstack的Kolla ,容器化安装,简化了安装,并提高了整个系统的灵活性。

    开始的时候使用自己的工作笔记本,使用VMWare workstation14 ,虚拟机配置4C,4G内存,1个网卡,1块200G的硬盘,但是装完之后发现启动卡住不动了,算了,还是使用PVE来弄,同样的虚拟机配置,配置4C,4G内存,1个网卡,1块200G的硬盘 。

    安装过程不赘述,详见上面那个官网的安装手册,记录一下碰到的坑和需要注意的地方。

    1、官网里面最新版本是4.11 ,对应的操作系统版本是centos6.8 ,文章里面对应的centos下载链接是centos6.10 ;

    2、安装到 cloudstack-management  这条命令的时候,报错找不到一个安装包的位置:

# yum -y install cloudstack-management
http://download.cloudstack.org/centos/6/4.11/repodata/c696ac24f6d36ebf0ea76e44d12f519601521b6cc659d225f472a9e4fbd3c820-filelists.sqlite.bz2: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
Trying other mirror.

    通过更改repo软件源版本为4.12 ,  /etc/yum.repos.d/cloudstack.repo  中的baseurl改为:

baseurl=http://download.cloudstack.org/centos/6/4.12/

    3、安装cloudstack-management 的时候,速度很慢,使用了自己搭建的科学上网代理。参考“linux客户端科学上网(k8s安装联网问题)” ;

    4、主机名需要设置长主机名,注意修改 /etc/sysconfig/network 以及 /etc/hosts 文件中的主机名为长主机名,否则 在执行 cloudstack-setup-management 命令的时候会报错。

    5、由于要使用到kvm模块,pve虚拟机需要设置支持cpu虚拟化,设置方法如下:(如果不是使用proxmoxVE,这一块可以略过)

物理机pve上执行:
root@pve:~# qm showcmd 110
/usr/bin/kvm -id 110 -name pve-1 -chardev 'socket,id=qmp,path=/var/run/qemu-server/111.qmp,server,nowait' -mon 'chardev=qmp,mode=control' -pidfile /var/run/qemu-server/111.pid -daemonize -smbios 'type=1,uuid=d9eb0729-f0ee-4176-836d-308b70d13754' -smp '3,sockets=1,cores=3,maxcpus=3' -nodefaults -boot 'menu=on,strict=on,reboot-timeout=1000,splash=/usr/share/qemu-server/bootsplash.jpg' -vga std -vnc unix:/var/run/qemu-server/111.vnc,x509,password -cpu kvm64,+lahf_lm,+sep,+kvm_pv_unhalt,+kvm_pv_eoi,enforce -m 12000 -device 'pci-bridge,id=pci.1,chassis_nr=1,bus=pci.0,addr=0x1e' -device 'pci-bridge,id=pci.2,chassis_nr=2,bus=pci.0,addr=0x1f' -device 'piix3-usb-uhci,id=uhci,bus=pci.0,addr=0x1.0x2' -device 'usb-tablet,id=tablet,bus=uhci.0,port=1' -device 'virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3' -iscsi 'initiator-name=iqn.1993-08.org.debian:01:b48afece2d1' -drive 'file=/var/lib/vz/template/iso/proxmox-ve_5.2-1.iso,if=none,id=drive-ide2,media=cdrom,aio=threads' -device 'ide-cd,bus=ide.1,unit=0,drive=drive-ide2,id=ide2,bootindex=200' -device 'virtio-scsi-pci,id=scsihw0,bus=pci.0,addr=0x5' -drive 'file=/dev/pvevg2/vm-111-disk-7,if=none,id=drive-scsi0,format=raw,cache=none,aio=native,detect-zeroes=on' -device 'scsi-hd,bus=scsihw0.0,channel=0,scsi-id=0,lun=0,drive=drive-scsi0,id=scsi0,bootindex=100' -drive 'file=/dev/pvevg2/vm-111-disk-2,if=none,id=drive-scsi1,format=raw,cache=none,aio=native,detect-zeroes=on' -device 'scsi-hd,bus=scsihw0.0,channel=0,scsi-id=0,lun=1,drive=drive-scsi1,id=scsi1' -drive 'file=/dev/pvevg2/vm-111-disk-3,if=none,id=drive-scsi2,format=raw,cache=none,aio=native,detect-zeroes=on' -device 'scsi-hd,bus=scsihw0.0,channel=0,scsi-id=0,lun=2,drive=drive-scsi2,id=scsi2' -drive 'file=/dev/pvevg2/vm-111-disk-6,if=none,id=drive-scsi3,format=raw,cache=none,aio=native,detect-zeroes=on' -device 'scsi-hd,bus=scsihw0.0,channel=0,scsi-id=0,lun=3,drive=drive-scsi3,id=scsi3' -netdev 'type=tap,id=net0,ifname=tap111i0,script=/var/lib/qemu-server/pve-bridge,downscript=/var/lib/qemu-server/pve-bridgedown,vhost=on' -device 'virtio-net-pci,mac=76:60:17:9D:6A:FF,netdev=net0,bus=pci.0,addr=0x12,id=net0,bootindex=300' -netdev 'type=tap,id=net1,ifname=tap111i1,script=/var/lib/qemu-server/pve-bridge,downscript=/var/lib/qemu-server/pve-bridgedown,vhost=on' -device 'virtio-net-pci,mac=6A:93:EB:0E:A8:84,netdev=net1,bus=pci.0,addr=0x13,id=net1,bootindex=301'
找到“-cpu kvm64,+lahf_lm,+sep,+kvm_pv_unhalt,+kvm_pv_eoi,enforce”这部分,在enforce前面加“+vmx,”参数如下:
-cpu kvm64,+lahf_lm,+sep,+kvm_pv_unhalt,+kvm_pv_eoi,+vmx,enforce
将修改后的命令保存到一个脚本110.sh ,并且 chmod +x 110.sh 
执行:qm stop 110 停止虚拟机后,再执行上面修改后的命令  ./110.sh  。
虚拟机启动后,ssh进入,执行 grep vmx /proc/cpuinfo 查看是不是有输出,如下:
root@pve-1:~# grep vmx /proc/cpuinfo flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx lm constant_tsc nopl xtopology cpuid pni vmx cx16 x2apic hypervisor lahf_lm cpuid_fault pti tpr_shadow vnmi flexpriority ept vpid
flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx lm constant_tsc nopl xtopology cpuid pni vmx cx16 x2apic hypervisor lahf_lm cpuid_fault pti tpr_shadow vnmi flexpriority ept vpid
flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx lm constant_tsc nopl xtopology cpuid pni vmx cx16 x2apic hypervisor lahf_lm cpuid_fault pti tpr_shadow vnmi flexpriority ept vpid
表示已经支持虚拟嵌套。



安装完cloudstack-management 和 cloudstack-agent ,并且设置完kvm 之后,开始配置cloudstack:

Cloudstack  之 单节点安装概念验证

使用账号admin ,密码 password 登录,登录进去之后会提示修改这个密码,比如改为  cloudstack   ,之后根据提示分别设置zone、pod、cluster、host的信息,之后,系统会自动开始进行初始化操作,如下:

Cloudstack  之 单节点安装概念验证


Cloudstack  之 单节点安装概念验证可以看到,初始化过程中要生成的2个虚拟机都没有成功,估计是和下载的模板版本不匹配导致,官网安装步骤里面下载的模板还是4.6版本,安装的是4.12版本,重新下载最新的4.11.1.2版本的模板:

/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /export/secondary -u http://download.cloudstack.org/systemvm/4.11/systemvmtemplate-4.11.2-kvm.qcow2.bz2 -h kvm -F


注:上面下载的模板存放在/export/secondary 目录下。

通过web界面将二级存储删除重建,关闭防火墙,同时重新启动 cloudstack-management 服务 。之后,等待系统重建console proxy VM 和Secondary Storage VM 两个系统虚拟机 。之后正常,如下:

Cloudstack  之 单节点安装概念验证


创建虚拟机:

Cloudstack  之 单节点安装概念验证


控制台:

Cloudstack  之 单节点安装概念验证


4c 4G内存资源用完了:

Cloudstack  之 单节点安装概念验证


关闭,重新分配了8核CPU 8G内存 ,再重启,资源没那么紧张了。


总结:

    整个安装过程比预想的还简单,概念清晰,感觉比openstack更友好。虚拟机的使用和管理也要比openstack要方便,存储管理很灵活,网络管理还没来得及测试。总之,整体比openstack要好用,但是好像还没看到相关PAAS层的东西,比如类似openstack的大数据组件sahara、对象存储组件swift、文件系统manila等,也正常,cloudstack官网本身也说是提供IAAS层的。

    但如果纯粹作为iaas层虚拟来使用的话,感觉还是不如proxmoxVE好用。对于各个虚拟化的纳管来说,可能相对于proxmoxVE更强一些,比如对于同时有VMWare虚拟化、kvm虚拟化以及xen虚拟机的环境来说,cloudstack可以同时进行纳管,这一块还没有经过实际测试,使用起来不知道是不是方便 。

    多一个选择总是好的,都是好东西,看不同的场景,可以有不同的选择。





相关内容

热门资讯

交付巴基斯坦的“麒麟”级潜艇战... ‍‍近日,在国防部举行的例行消息发布中有媒体提到,中方为巴基斯坦建造的“麒麟”级常规动力潜艇首艇已经...
伊朗官员:伊美就浓缩铀处置方式... 当地时间11日,总台记者获悉,一名伊朗官员称,伊朗与美国之间的谈判在浓缩铀的处置、暂停铀浓缩活动期限...
沈阳添新地标!超级IP“巨虎东... 万众期待,神兽归沈! 5月10日,沈阳专属超级文旅IP“巨虎东东”圆满完成交付唤醒仪式,正式启程奔赴...
虹软科技:暗光增强等算法已应用... 来源:市场投研资讯 (来源:财闻) 公司前瞻把握AI眼镜作为新一代AI交互入口的战略机遇,凭借深厚的...
全球脑机接口企业已突破800家... 从冰冷的科技设备变为有温度的生命助手 脑机接口“黄金时代”正在到来 5月10日,全国脑机接口科技与...
总面积超2000平方米,上海张... IT之家 5 月 11 日消息,据央视财经,上海张江 AI 应用商店今起正式开门迎客,从能教你弹吉他...
伊朗议长:伊武装部队已做好准备... 当地时间11日,伊朗议会议长卡利巴夫在社交平台上发布消息称,伊朗武装部队已做好准备应对任何侵略行为。...
特朗普声称考虑让委内瑞拉成为美... 据英国《独立报》5月11日报道,美国总统特朗普在接受福克斯新闻采访时表示,正认真考虑采取行动,将委内...
长沙全球研发中心城市建设成型起... 长沙全力建设全球研发中心城市,在全球创新坐标系中稳步进位。 2025年,长沙跃居全球科技集群百强榜第...
【微特稿】AI会取代哪些职业?... 【新华社微特稿】当前,人们日益担忧人工智能(AI)将影响就业市场。美国近期一项研究显示,多个人工智能...