设为首页 收藏本站
查看: 1301|回复: 0

[经验分享] CloudStack 4.1.0 安装详解 – 2、KVM

[复制链接]
发表于 2015-4-11 08:17:37 | 显示全部楼层 |阅读模式
  KVM(kernel-based Virtual Machine)是一个开源的系统虚拟化平台,自Linux 2.6.20之后已集成到Linux内核中,因它使用Linux自身的调度器进行管理,所以相对于的虚拟化解决方案而言,其核心源码很少也更加的稳定。
  CloudStack支持与多种虚拟化解决方案的集成。
  CloudStack+KVM是最佳的黄金组合!他们都功能强大且免费,你可以毫无顾忌地随意部署安装而不必害怕有人找你要授权费。KVM一直以来没有好的免费的集群管理工具,现在加上CloudStack后,如虎添翼,比起VCenter、XenCenter这类强力商业软件来讲也毫不逊色。
  今天我们来主要介绍CloudStack受控端为KVM节点时的安装方法。鉴于网上文章一大抄,很多内容都是装来装去一大堆东西,看观们一会就晕了,根本不了解为什么装这些程序,装来是干什么的。这回呢,我会把每一步说明尽可能详细一些,外加我多次重装后得到的经验和教训,希望能让后来者可以少走些弯路。
  
  KVM虚拟化需要硬件的支持,因此首先需要检查下你的服务器是否可以支持它,如果这步都过不去的话,那么下面的内容就不必再看了。
  检查方法:

egrep '^flags.*(vmx|svm)' /proc/cpuinfo
  如果执行后能显示出东西,那么恭喜你,可以跟我继续啦。Let’s go!
  
  CentOS直接提供KVM程序源,直接安装就是了。

yum install kvm kmod-kvm qemu kvm-qemu-img virt-viewer virt-manager libvirt vconfig
  得益于Linux内核的支持,KVM相关包都不大,这步应该可以很快完成。
  装好后为保证管理节点可以正常调用,还需要开放相关端口。
  vi /etc/libvirt/libvirtd.conf 去掉如下内容的注释:

listen_tls = 0
listen_tcp = 1
tcp_port = "16059"
auth_tcp = "none"
mdns_adv = 0
  vi /etc/sysconfig/libvirtd

LIBVIRTD_ARGS="--listen"
  vi /etc/libvirt/qemu.conf

vnc_listen = 0.0.0.0
  现在,可以启动虚拟机服务啦:

service libvirtd restart
  测试一下是否成功:

lsmod | grep kvm
  
  管理节点会通过各种协议与受控节点通讯,为了确保安全,受控节点接到命令后会进行一系列的校验,如果两机的时间不同步的话,会导致命令拒绝执行。因此,最简单的办法就是所有的机器都安装 NTP服务,自动完成时间同步。
  当然,如果你可以保证两机时间相差不大的情况下,此步可以忽略。
  安装方法

yum install ntp
  
  CloudStack管理节点添加主机时要获取受控端本机名称,如无法正确获取会导致无法正常添加,Agent启动时也会报一大堆的错。
  运行以下命令检查:

hostname --fqdn
  如无正常返回,请编辑 /etc/hosts 文件,添加主机ip对应的名称。如:
  192.168.19.160 kvm1.cloudstack.com
  编辑完后立即生效。如果还不成的话,重启下服务器应该就会好了。
  注意:在CloudStack中添加受控机时,会自动将名称代入。因此千万别偷懒,一定要为每台机器设置不同的名称,否则你将会在管理后台面对一堆同名主机列表而感到无奈~~~
  
  默认情况下,CentOS的软件源中没有收录最新版本CloudStack,为了能顺利安装,我们需要手工指定软件源。
  新建 /etc/yum.repos.d/cloudstack.repo 文件,内容为:

[cloudstack]
name=cloudstack
baseurl=http://cloudstack.apt-get.eu/rhel/4.1/
enabled=1
gpgcheck=0
  
  KVM不像XenServer、VCenter等已经内置了强大的管理功能,因此必须安装一个CloudStack代理来完成主控端发来的指令。
  直接通过仓库安装:

yum install cloud-agent
  这个安装包比较大,如果你的网络是小水管的话,那么你现在可以去泡杯茶、抽根烟休息一下啦。
  注意:安装完 cloud-agent 后无需启动,等管理节点中添加主机时会自动启动。
        默认的安装目录:/etc/cloudstack/agent
  CloudStack是通过log4j来输出日志的,因此你可以通过修改 log4j-cloud.xml 文件来调整日志的输出结构。
  
  默认的SELinux安全策略会限制CloudStack操作,因此需要调整:
  vi /etc/selinux/config

SELINUX=permissive
  以上修改需重启服务器才能生效,为使设置立即生效可使用下边的命令

setenforce permissive
  另需要在 iptables 中把一些端口打开:

iptables -I INPUT -p tcp -m tcp --dport 22 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 1798 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 16509 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 5900:6100 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 49152:49216 -j ACCEPT

iptables-save > /etc/sysconfig/iptables
  
  好了,到目前为止,你的准备工作已经完成了。
  如果创建的是简单网络域的话,你现在就可以在管理节点的WEBUI中顺利添加这台受控主机啦。这步的操作方法非常简单,CloudStack中有一个非常友好的向导,应该可以帮助你正确完成添加。另外,网上也有一大堆的文章介绍,我就不详细说了,等将来有机会时我再给大家介绍下CloudStack高级网络域的相关功能及添加方法。
  
  

1、在管理节点中添加主机失败
  如果很不幸,添加主机时失败,请不要慌张,这个问题应该不难解决,先看下日志。
  管理节点日志在
/var/log/cloudstack/management/catalina.out
  受控节点日志在:
/var/log/cloudstack/agent/cloudstack-agent.out
  认真反复分析日志,你会找到答案,然后水平提到升华~~~
  

2、Unable to start agent: Failed to get private nic name
  如果你是初学,在设置网络时千万别乱选。尤其是别随便指定流量标签。
  在CloudStack中,流量标签是同受控主机的网桥相关的,如果设置了流量标签,则受控机必须设置相应的网桥。
  cloudstack4.1的agent在启动时,默认会自动创建cloudbr0和cloudbr1两个网桥。
  如果想修改成其他名字,那么需要在配置文件里面指定:
  vi /etc/cloudstack/agent/agent.properties
  修改下面两个参数

private.network.device
public.network.devic
  如果网桥指定错误的话,那么就会出现上面的错误。
  

3、Failed to create vnet
  如果你再尝试创建高级网络,出现的如上的错误,那是因为你没有安装vconfig程序。

yum install vconfig
  
声明:OSCHINA 博客文章版权属于作者,受法律保护。未经作者同意不得转载。

  
No tags for this post.

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-55875-1-1.html 上篇帖子: [转载]KVM虚拟机代码揭秘——QEMU的PCI总线与设备(下) 下篇帖子: kvm安装win2012
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表