文档章节

OpenStack 常见问题及解决方法

Sophia_tj
 Sophia_tj
发布于 2016/01/24 18:08
字数 1887
阅读 751
收藏 4

OpenStack 常见问题及解决方法  


执行命令

sudo service nova-api restart

返回结果

restart: Unknown instance

有些读者可能刚开始接触Linux操作系统,对于这些简单的命令的运用还不熟悉,不知道如何解决。这个时候需要看明白错误提示,明白出错的原因,比较好的方法是使用搜索引擎搜索错误提示,明白出错的原因。

上面的问题原因是nova-api服务进程原本就没有启动,如果发出”service nova-api restart”命令重启nova-api服务进程,就会出现”未知进程”的错误提示了。

解决方法:

service nova-api start


如下面的问题:

启动rabbitmq-server服务进程

/etc/init.d/rabbimq-server restart

返回结果

Starting rabbitmq-server: FAILED - check /var/log/rabbitmq/startup_log, _err

rabbitmq-server.

从 错误提示可知,rabbitmq-server启动失败,但是没有具体的原因。这个时候可以查看rabbitmq-server服务的日志记录。结果中也 提示了“check /var/log/rabbitmq/start_log,_err”,意思为检查日志记录文件。

利用搜索引擎搜索日志记录文件中的错误记录,可能会找到解决的方法。

原因1

服务器的hostname修改过,重启之后rabbimq-server就可能不能启动了。

解决的办法:

编辑rabbitmq.conf配置文件


vi /etc/rabbitmq/rabbitmq.conf 

NODENAME=rabbitmq@hostname

NODE_IP_ADDRESS=172.0.0.1

NODENAME指定使用rabbimq-server进程的用户,hostname是服务器的hostname,NODE_IP_ADDRESS指定了服务器的IP地址。

重新启动rabbitmq-server

原因2:

重启服务器后,rabbitmq-server数据库绑定旧数据

解决办法:

删除rabbitmq-server的数据库

rm –rf /var/lib/rabbitmq/mnesia


下面给出OpenStack云平台涉及到的相关服务进程的日志记录的默认存放地址:

服务进程路径或文件

nova 服务(nova-api, nova-scheduler, nova-objectstore,nova-network,nova- compute,nova-volume)/var/log/nova(每项服务有对应的日志文件,请对应日志文件的文件名进行日志观察)

glance服务(glance-api,glance-regisry)/var/log/glance(每项服务有对应的日志文件,请对应日志文件的文件名进行日志观察)

keystone服务     /var/log/keystone/keystone.log,/var/log/syslog

rabbitmq服务     /var/log/rabbitmq

mysql服务         /var/log/mysql

libvirt服务          /var/log/libvirt

swift服务          /var/log/syslog

memcached服务    /var/log/memcached.log


?网络求助

当 碰上一些无法找到错误原因的问题,通过搜索引擎搜索问题的解决办法,又或者通过登录lauchpad.net进行问题的查询。在该网站上先查询确定是否有 同样的问题已经被解决。如果问题恰好已经被解决,可以参考问题的解决方法进行解决;如果是新的问题出现,可以发帖进行问题提问。

服务进程网站求助地址

novahttps://answers.launchpad.net/nova

glancehttps://answers.launchpad.net/glance

keystonehttps://answers.launchpad.net/keystone

swifthttps://answers.launchpad.net/swift


常见错误问题类型

1.输入的命令错误

执行创建网络命令

 nova-manage network create 192.168.0.0/24 1 255

返回结果

Command failed, please check log for more info

结果提示命令错误,但是旧版的官方文档是这样操作的。这种问题出现的原因就是参考了过时的安装文档导致安装失败。所以在安装部署OpenStack的时候记录安装的软件包的版本,这样在求助中说明更可以快速定位问题的原因。

解决方法:

正确的nova-manage network create命令要指定网络名称—label项,--bridge网桥名以及—bridge_interface网桥连接网卡。

nova-manage network create –label private 192.168.0.0/24 1 255 –bridge br100 –bridge_inteface eth1


2.没导入环境变量

问题1:

执行添加Keypair命令

euca-add-keypair test

返回结果

EC2_ACCESS_KEY environment variable must be set.

Connection failed

结果提示EC2_ACCESS_KEY环境变量尚未设置。这种情况在重登录服务器的时候出现,原因在于登出后原本的环境变量清空,需要重新设置环境变量。


解决办法

设置环境变量。具体添加环境变量的情况有两种:一是没有使用Keystone作为身份认证系统的Nova平台;二是使用Keystone作为身份认证系统的Nova平台,参考书本前面章节。


问题2:

执行命令

nova list

返回结果

You must provide a username, eithervia --username or via env[NOVA_USERNAME]

结果提示需要提供用户名或者设置环境变量,这种问题和问题1的出错原因是一样的。

解决办法:

设置环境变量。具体添加环境变量的情况有两种:一是没有使用Keystone作为身份认证系统的Nova平台;二是使用Keystone作为身份认证系统的Nova平台,参考书本前面章节。


3.导入错误的环境变量

执行命令查看虚拟机

euca-describe-instances

返回结果

Warning: failed to parse error message from AWS: <unknown>:1:0: syntax error

None: None

    返回结果提示语法错误,即环境变量的设置错误。出现问题的原因可能是使用了Keystone身份认证系统的OpenStack平台导入了使用过去的身份认证系统的环境变量(即nova-manage project zipfile命令产生的环境变量)。

解决办法:

    导入正确的环境变量。具体设置参考书本前面章节。

4.服务进程不可用

执行命令查看服务状态

nova-manage service list 

返回结果

nova-compute ubuntu01-machine nova enabled XXX 2011-11-21 07:05:02

    返回结果中nova-compute服务状态为不可用(XXX)。而可用的服务状态为-:)。

原因1:

nova-compute服务没有开启

解 决办法:在相应的节点上开启相应的服务。如例子的为:在ubuntu04-machine的节点上运行service nova- compute start,开启nova-compute服务。有时候配置错误的情况下nova-服务可能会在开启后自动关闭,执行 ps –ef|grep nova-compute命令查看进程中是否该服务正常运行。

原因2:

rabbitmq-server没有开启,导致不能通信。

解决办法:

开启rabbitmq-server服务进程

/etc/init.d/rabbitmq-server start

原因3:

服务器时间没有同步。

解决办法:

    使用ntp服务进行服务器时间同步。具体步骤参考书本前面章节内容。


执行命令

swift –A http://172.0.0.1:5000 –U admin –K password stat –V 2


返回结果

[Errno 111] ECONNREFUSED

返回结果只提示拒绝连接,查看Swift的服务日志/var/log/swift,发现没有任何记录。根据思考,swift使用keystone作为了身份认证系统,因此很有可能是Keystone服务出错。认真搜索日志文件,发现下面信息

Mar 14 08:31:18 nova-compute-3 init: keystone main process (7584) terminated with status 255

由此可见,Keystone服务被终结,导致访问Swift失败。

解决原因:

开启Keystone服务


5.端口占用

执行命令:

开启glance-api服务

service glance-api start

返回结果:

Starting the Token Authentication component

Traceback (most recent call last):

  File "/usr/bin/glance-api", line 66, in <module>

    server.start(app, int(conf['bind_port']), conf['bind_host'])

  File "/usr/lib/pymodules/python2.6/glance/common/wsgi.py", line 65, in start

    socket = eventlet.listen((host, port), backlog=backlog)

  File "/usr/lib/pymodules/python2.6/eventlet/convenience.py", line 38, in listen

    sock.bind(addr)

  File "<string>", line 1, in bind

socket.error: [Errno 98] Address already in use

返回的结果提示”Address already in use”。通过搜索引擎搜索,得出端口被占用的原因。出现问题应该是有其他进程占用了glance-api要使用的端口导致glance-api进程启动失败。

解决办法:

    终结占用端口的进程,或者修改glance-api服务进程使用的端口。修改glance-api服务端口需要在glance-api.conf配置文件中—bind_port配置项指定。


© 著作权归作者所有

Sophia_tj
粉丝 16
博文 86
码字总数 125580
作品 0
天津
程序员
私信 提问
OpenStack安装部署管理中常见问题解决方法(OpenStack-Lite-FAQ)

原文: OpenStack安装部署管理中常见问题解决方法(OpenStack-Lite-FAQ) 原文链接:http://blog.csdn.net/ugyn109/article/details/7752755...

长平狐
2012/08/24
355
0
白皮书:OpenStack与容器的相遇相知(上)

导 读 本文由OpenStack基金会官方发布,来自基金会、用户、厂商的16位专家作者联合撰写,原文请访问:https://www.openstack.org/containers/whitepaper 想象一下,你的任务是从头开始构建整...

lq1ns259ej3okyvk4jf
2018/05/28
0
0
使用 OpenStack 实现云计算和存储

Infrastructure as a Service (IaaS) 云平台种类繁多,例如像 Nebula 和 Eucalyptus 这样为人熟知的解决方案。而此领域的一个新来者已展示了其不俗的增长,不仅包括用户数量的增长,还包括支...

IBMdW
2012/09/11
18.1K
14
OpenStack 基金会发布白皮书,推进容器技术

最近的一项调查显示,69% 的公司将会在下一年在生产环境中使用容器。为了更好地说明容器现下如此广受关注的原因,OpenStack 基金会近期发布了一篇名为《探索机遇:容器与 OpenStack》的白皮书...

oschina
2015/09/09
1K
6
【开源访谈】陈沙克:OpenStack 的现在与未来

随着云计算在国内的大规模落地,OpenStack在国内的关注度也越来越高,知名度、影响力,以及厂商的参与度、支持度都达到了前所未有的高度。OpenStack是如何克服困难一路发展至今?现状究竟如何...

王练
2016/10/30
2.6K
2

没有更多内容

加载失败,请刷新页面

加载更多

Java 判断实体类属性是否为空工具类

import org.apache.commons.lang.StringUtils;import java.lang.reflect.Field;import java.lang.reflect.Method;/** * 判断对象是否为空 * @param obj * @return */pub......

骑羊放狼灬
21分钟前
0
0
基于nginx搭建RTMP服务器

安装nginx 下载ngnix源码 git clone https://github.com/nginx/nginx.gitgit clone https://github.com/arut/nginx-rtmp-module.git 编译安装 ./configure --add-module=../nginx-rtmp-mod......

cloudjx
34分钟前
0
0
从 Spark 到 Kubernetes — MaxCompute 的云原生开源生态实践之路

2019年5月14日,喜提浙江省科学技术进步一等奖的 MaxCompute 是阿里巴巴自研的 EB 级大数据计算平台。该平台依托阿里云飞天基础架构,是阿里巴巴在10年前做飞天系统的三大件之分布式计算部分...

迷你芊宝宝
37分钟前
0
0
5个Vue.js项目的模板

开发人员查看使用SPA,Webpack,身份验证,GraphQL,文档和测试的Vue开发人员的资源。 你准备开始一个重要的Vue项目吗?为了确保从坚实的基础开始,您可以使用模板(也就是样板,骨架,起动器...

写字的男孩儿
37分钟前
0
0
epoll 的本质是什么?

从事服务端开发,少不了要接触网络编程。epoll 作为 Linux 下高性能网络服务器的必备技术至关重要,nginx、Redis、Skynet 和大部分游戏服务器都使用到这一多路复用技术。 epoll 很重要,但是...

编辑部的故事
41分钟前
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部