OpenStack多节点设置未在仪表板上显示VM映像

时间:2018-09-22 20:26:11

标签: openstack devstack openstack-horizon openstack-glance

我是OpenStack的新手,我使用DevStack来配置多节点开发环境,该环境目前由一个控制器和两个节点组成。 我遵循official documentation,并使用了official git repo中的DevStack开发版本。该控制器是在全新的Ubuntu Server 16.04中设置的。 我使用here提供的一些脚本使文档中描述的所有步骤自动化。

问题是我注册的VM映像没有出现在仪表板上。图片页面只是空白。当我安装单节点安装程序时,一切正常。

当我运行openstack image listglance image-list时,在安装过程中注册的映像如下所示,但未显示在仪表板上。

----------------------------------------------------------
| ID                 | Name                     | Status | 
----------------------------------------------------------
| f1db310f-56d6-4f38 | cirros-0.3.5-x86_64-disk | active |
----------------------------------------------------------

openstack --version openstack 3.16.1

glance --version一眼2.12.1。

我在Google上搜索了很多,但一无所知。 有什么特殊的配置可以使图像在多节点设置中可用吗? 谢谢。

更新1

我尝试将图像设置为使用共享 glance image-update --visibility shared f1db310f-56d6-4f38-b5da-11a714203478,然后使用命令openstack project list将其添加到所有列出的项目(openstack image add project image_name project_name)中,但是它也不起作用。

更新2

我已经在我的source /opt/stack/devstack/openrc admin admin文件中包含了命令~/.profile,以便设置所有环境变量。它将用户名和项目名称定义为 admin ,但是我已经尝试使用默认的 demo 项目和 demo 用户名。

该脚本定义的所有env变量如下所示。

declare -x OS_AUTH_TYPE="password"
declare -x OS_AUTH_URL="http://10.105.0.40/identity"
declare -x OS_AUTH_VERSION="3"
declare -x OS_CACERT=""
declare -x OS_DOMAIN_NAME="Default"
declare -x OS_IDENTITY_API_VERSION="3"
declare -x OS_PASSWORD="stack"
declare -x OS_PROJECT_DOMAIN_ID="default"
declare -x OS_PROJECT_NAME="admin"
declare -x OS_REGION_NAME="RegionOne"
declare -x OS_TENANT_NAME="admin"
declare -x OS_USERNAME="admin"
declare -x OS_USER_DOMAIN_ID="default"
declare -x OS_USER_DOMAIN_NAME="Default"
declare -x OS_VOLUME_API_VERSION="3"

当我输入openstack domain list时,我会在下面看到域列表。

----------------------------------------------------
| ID      | Name    | Enabled | Description        |
----------------------------------------------------
| default | Default | True    | The default domain |
----------------------------------------------------

如env变量所示,该域被设置为默认域。

1 个答案:

答案 0 :(得分:0)

查看所有安装过程后,该问题 是由于local.conf文件中定义的浮动IP范围不正确。

此类文件中的FLOATING_RANGE变量必须定义为节点网络的子网。例如,我的控制器IP为10.105.0.40/24,而浮动IP范围为10.105.0.128/25。

我只是忘记更改FLOATING_RANGE变量(我使用的是here所示的默认值)。