10.2. 常见问题

来源:互联网 发布:python解释器 编辑:程序博客网 时间:2024/05/17 00:11

是否所有的桉树组件完成了注册?

 

你可以使用euca_conf检查所有组件是否都正确注册。要完成这一检查,一定要在CLC的机器上运行(使用root用户)这些命令。

 

euca_conf --list-clusters euca_conf --list-scs euca_conf--list-walruses euca_conf --list-nodes

 

检查返回的IP地址与你的网络配置是否一致。例如,Walrus应该注册的一个公网IP,而不是本地地址(127.0.0.1)。

 

桉树能否运行?

 

你可以通过访问Web界面(https://<ip地址>:8443),快速确认CLC是否正在运行。一旦你确认CLC正在运行,请检查组件是否正确注册(见上文)。可以执行euca-describe-availability进行详细信息检查(使用管理员证书),此命令将显示出云平台安装的VMtype的最大容量(例如,m1.small,c1.medium,m1.large等)和每个VM type的当前可用性。下面的例子显示云平台和所有可用资源

 

AVAILABILITYZONE        cluster <hostname of your front-end>

AVAILABILITYZONE

|- vm types

free / max   cpu   ram  disk

AVAILABILITYZONE

|- m1.small

0128 / 0128   1    128    10

AVAILABILITYZONE

|- c1.medium

0128 / 0128

1

256

10

AVAILABILITYZONE

|- m1.large

0064 / 0064

2

512

10

AVAILABILITYZONE

|- m1.xlarge

0064 / 0064

2

1024

20

AVAILABILITYZONE

|- c1.xlarge

0032 / 0032

4

2048

20

 

 

 

 

CC是否运行正常?

 

首先,检查CC已经启动并且完成注册(如上面描述的)。下一步,检查CC机器上cc.log日志是否在不断变化(即CLC正在检测CC)。如果没有注册成功,可能的原因:不正确的密钥,错误的IP地址,防火墙等,你可能还需要检查的CC上的其他桉树日志文件来确定问题原因。

 

所有NC节点运行是否正常?

 

首先,检查CC运行是否正常(见上文)。下一步,检查NC已经正常启动,并正确注册在CC上(你有多个处于活动中的CC)。在CC上检查cc.log,以确认CC能够检测NC(如果不是这样,节点可能没有被正确注册);在NC上检查nc.log,以确认CC能够检测NC(如果没有,检查NC 上日志文件的错误信息。例如,错误的Key、无法访问虚拟管理系统、libvirt配置错误等)。

 

Libvirt是否正确配置?

 

关于正确配置libvirt的信息,请参阅附录B.3

 

euca-describe-availability-zonesverbose returns 000/000 ?

 

按照之前的故障排除解决方案步骤处理上面的问题:检查CC、NC和CLC是正确运行。下一步,检查NC上是否有足够的可用资源(例如磁盘空间)和用与访问的用户“eucalyptus”(例如可以访问的磁盘空间)。

 

无法分配动态IP?

 

首先,可以使用euca-describe-addresses命令,查看否有可用IP地址。如果没有检查你的配置,尤其是VNET_PUBLICIPS的值(见第8章:网络配置)。

 

如果所有的IP被使用了,你可能需要为桉树分配更多的IP地址。如果IP地址是可用的,但你仍然收到错误消息,你可能需要重新启动一下CC

 

euca-run-instances 返回没有足够的资源?

 

使用euca-describe-availability-zonesverbose命令来确认你具有的可用资源。如果你有可用资源,同样要检查你也有可用的公网IP地址(尝试分配和取消分配一个IP地址)。其次,检查root文件系统是否大于正在运行的实例所需要的大小。

 

怎样检查linux-based 实例完全引导?

如果用KVM,使用euca-get-console-output来获取实例的控制输出。如果用XEN并产生一个错误,使用root登陆NC机器并使用xm console命令来获取控制输出

现在,登录到实体控制台输出来确定实例是否被引导(实例显示内核信息,并且安装根文件系统没有错误)。

 

实例停留在“pending”状态,该怎么办?

 

如果你的镜像文件非常大,这可能需要很长的时间来引导。要检查准备的实例中的错误,需要用根用户登录到NC中,并检查nc.log中有关你的实例的信息。失败的原因可能包括:无法跟Walrus通信(输入$INSTANCE_PATH/<USER>/<instance ID>来检查内核/initrd和根用户是否正确);在准备镜像时错误(查看nc.log中相关信息);跟libvirt/ hypervisor通讯错误(再次检查nc.log和libvirt的日志等)。

 

不能用ssh登录实例,该怎么办?

 

确保实例使用的安全组允许你使用SSH(端口22)从客户端连接。检查该实例完全引导(如上所述)。检查网络模式的配置是正确的(特别是VNET_* INTERFACE的值)。

 

组件之间无法通讯,该怎么办?

 

检查组件彼此之间有无防火墙;检查配置过程中使用的IP地址是正确的;检查每台机器之间是连通的;这些机器在配置过程中组件使用指定的IP。

检查组件是否运行(如上所述);检查每台组件的机器是否运行NTP,并且机器的内部时钟是否是同步。

 

在walrus上需要有足够的磁盘空间吗?


Walrus可能处理非常大的镜像文件。可用磁盘空间的大小应至少三倍于你想要上传的镜像的大小。原因是,镜像需要上传,然后解密完成后再将它发送到NC,这本身就需要大约两倍的镜像的大小;此外,还需要创建临时文件。所以三倍的图像的大小时间是一个安全的储备量。

 

CPU(核)能过量使用吗?

 

默认情况下,每个虚拟核心,NC分配1个真正的核。也就是说,如果一个实例需要2个核,并且NC中只有2个核,那么该NC不能再分配更多的实例了。在eucalyptus.conf中通过修改MAX_CORES选项,NC的CPU可以过量使用。请注意,当修改这个值后,你必须重新启动NC(注意,当核过量使用时,性能可能会受到影响)。

 

内存能过量使用吗?

 

不能,不像CPU,内存不能过量使用。管理程序分配给虚拟机的内存总量不能超过节点上的物理内存总量。

 

怎样调试一个镜像?

 

要调试桉树的镜像:设置MANUAL_INSTANCES_CLEANUP为1。在这种情况下,当一个实例失败时,临时文件(例如根文件系统,内核等)都不会被删除。你可以在$INSTANCE_PATH/<USER>/<instanceId>路径下找到这些文件,连同 用于启动这个实例的libvirt.xml配置文件一块找到。然后,你可以修改libvirt.xml(网络的一部分,需要修改),并且用virsh创建手动启动该实例。

 

非常大的镜像不能启动,该怎么办?

 

在桉树的Web界面的“Configuration”页下的“Walrus configuration”,确定“space reserved forunbundlingimages”是足以容纳你的镜像,如果不能,在给定的域中增加预留空间的大小(注意,非常大的镜像,可能需要很长的时间来启动)。

 

euca-upload-bundle失败,怎么办?

 

如果你正试图上传到一个已经存在的存储桶,桉树将返回一个“409”的错误。这是一个已知的兼容性问题,当使用EC2工具时,就会出现这个问题。解决方法是,在上传到一个具有相同名称或使用一个不同名称的存储桶上之前,使用ec2-delete-bundle带--clear的选项来删除包和存储桶。注:如果你正在使用Euca2工具,就不必要这么做了。此外,使用ec2-upload-bundle时,确保在存储桶的名称后面没有“/”。

 

能创建EBS卷和快照,该怎么办?

 

确保你有足够的回滚设备(注意,当启动桉树组件时,你应该已经收到警告)。在大多数发行版中,回滚驱动程序作为一个模块来安装,以下为增加可用的回滚设备的数量的命令:

[root@clc]# rmmodloop ; modprobe loop max_loop=256

 

EBS卷不能附加(AoE),该怎么办?

 

AoE要求SC和NC在同一个物理子网。你可以查看和更改以太网设备所使用的SC来导出AoE卷,通过在”存储控制器”一节(桉树的Web界面Configuration页)中找到的修改“Storage Interface”域(注意,只有当托管SC的设备有多个以太网设备时,这个问题会出现)。AoE不会导出到同一台机器上,这意味着必须在单独的物理机器上分开托管SC和NC。

 

桉树无法启动DHCP服务,该怎么办?

 

实例正在运行时,除SYSTEM之外的所有网络模式,会启动一个DHCP服务。CC日志可能报告未能启动DHCP服务器。或者你可能会注意到在CC机器上,一启动实例,DHCP服务就会退出(你可以使用ps命令来检查DHCP服务是否存在)。此外,请确保你的二进制DHCP与ISC DHCP守护进程3.x兼容, 并且二进制用VNET_DHCPDAEMON来做详细说明。在httpd- cc_error_log中你可能会找到错误。

 

镜像不能被调用,该怎么办?

 

要检查你的桉树安装配置是否正确,建议先运行一个桉树镜像(在桉树Web界面上通过“image”标签可下载)。请检查你的实例能否被完全引导(如上所述);检查实例所使用的安全组允许从客户端建立连接,例如,如果使用ssh连接,端口22应该是开放的。你还需要检查在CC和NC机器上的eucalyptus.conf文件中的VNET_PRIVINTERFACE和VNET_BRIDGE值(当这两个值可用时),并且指定的以太网设备要在同一个物理子网内;检查是否DHCP服务器已经启动(如上所述)。

 

如果在的局域网上有一个DHCP服务,云控制器的DHCP服务不会为你的实例提供IP地址。由于所有的云实例有从d0:0d开始的MAC地址,你可能想让你的主DHCP服务忽略从这些MAC地址发送的请求。

 

实例报告公共和私有IP为0.0.0.0(只在SYSTEM模式下),该怎么办?

 

问题的解决方法是用你的虚拟机去ping CC。这样会在你的虚拟机网络层运行,并且会获得一个有效的IP地址。

 

界面丢失了地址,现在显示169.254.169.254。这是怎么回事?

 

你可以使用ifconfig命令来查看以太网设备的配置,这只能显示每一个界面的地址。请使用ip addr显示命令查看与界面相关联的所有地址。


原创粉丝点击