小白手动安装OpenStack踩的坑

很多人面对OpenStack时不知道该如何下手,不知道该从哪里学起,面对众多的概念也是一头雾水。对于初学者而言,不建议采用devstack的方式安装OpenStack,因为这对于了解OpenStack的各个服务之间的关系没什么作用,我认为先通过手动安装OpenStack,对服务有了一个基本的认识之后,再用devstack的方式快速安装好,进行下一步深入学习,这样是比较好的。这篇文章主要是给刚开始手动安装OpenStack的朋友一个参考。

OpenStack是一个分布式的云平台,它是由众多服务组成的,这些服务之间是松耦合的关系,用户可以根据自身需求来搭建自己的云平台。要想入门OpenStack必须要有一定的基础:Linux的操作和使用,计算机网络的基础知识,虚拟化的相关了解等。下面就介绍一些按照OpenStack的官方手动安装文档部署遇到的一些坑。

  • Linux版本:CentOS 7

  • OpenStack版本:Newton

  • 部署方式:一台控制节点,一台计算节点。

  1. 控制节点上运行身份认证服务,镜像服务,计算服务的管理部分,网络服务的管理部分,各种网络代理,Dashboard。还包括一些支持服务, MySQL、消息队列和NTP。

  2. 计算节点上运行计算服务中管理实例的管理程序,还包括网络代理服务。

错误一:控制节点安装NTP时报错:Could not resolve host: mirrorlist.centos.org

解决办法:DNS配置错误,重新按照实际环境配置DNS。

错误二:计算节点无法同步控制节点NTP服务。

解决办法:原因在于控制节点防火墙没关。这里也提醒一下,配置完网络后建议关闭防火墙和selinux。

错误三:创建域、项目、用户、角色时无法创建成功。

解决办法:实际控制节点主机名为controller1,而配置文件中写成了controller,最终卸载了keystone、httpd、wsgi,重新配置后执行正确。

这里也提醒一下各位,配置文件中有很多地方需要配置主机名,例如:

In the [keystone_authtoken] and [paste_deploy] sections, configure Identity service access:

[keystone_authtoken]
...
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = glance
password = GLANCE_PASS
[paste_deploy]
...
flavor = keystone

这里面就需要根据实际主机名来替换掉官方配置,或者干脆直接换成IP地址。类似这样的配置有很多,需要注意。

错误四:配置镜像服务出错,无法同步glance数据库,无法上传镜像。

解决办法: 查看openstack-glance-api.service状态时看到没有启动,提示启动太频繁。

根据网上的经验多方尝试,删除了glance数据库,重新同步,依然没有成功;后又将镜像保存位置权限修改为777,未果。使用su -s /bin/sh -c "glance-manage db_sync" glance命令同步(之前没有用su,因为一直是root用户)后发现IOError: [Errno 13] Permission denied: '/var/log/glance/api.log'

查看权限后发现有问题,# ll /var/log/glance/api.log,将其修改为glance组,glance用户,再次同步数据库,成功。

但是这里还是不能上传镜像,报错:410 Gone: Error in store configuration. Adding images to store is disabled. (HTTP N/A) 通过在网上查找相关资料,有人在安装J版本时遇到过这个问题,在这个文件中,/etc/glance/glance-api.conf ,选项[glance_store]中有一项default_store = file,最终注释掉这个参数。上传镜像成功!

这些就是初次手动安装OpenStack遇到的错误了,不论遇到什么错误,大部分都能通过修改配置文件解决。

在安装过程中,只要认真细心,按照文档一步一步来,一般不会有问题。另外,在安装OpenStack时,有许多密码,建议全部使用同一个密码,这样防止出错,包括:

  1. 数据库密码

  2. 消息队列密码

  3. Keystone密码

  4. Glance密码

  5. 域、项目、用户密码

  6. Nova密码

  7. Neutron密码

注意:在局域网环境中,通过浏览器访问http://controller/dashboard会出现找不到的情况,这是因为局域网无法解析主机地址,把controller换成IP地址就可以了。

OpenStack手动安装复杂,安装量大,一定要认真做好每一步配置,设置好每一个参数,还要根据自己的实际环境来修改配置,而不能全部照搬官方文档。

参考文档:

https://docs.openstack.org/newton/install-guide-rdo/

小白手动安装OpenStack踩的坑

小白手动安装OpenStack踩的坑

小白手动安装OpenStack踩的坑


上一篇:1.递归的本质


下一篇:openstack组件介绍