glance服务监听两个端口:9191和9292

其中9292端口是对外提供服务的,9191是服务组件间使用的。

1.安装glance组件

yum --enablerepo=centos-openstack-queens clean metadata

yum install openstack-glance -y

报错:

Error downloading packages:
  python-networkx-core-1.10-1.el7.noarch: [Errno 256] No more mirrors to try.

所以,重新配置yum源,这次使用网易yum源。

首先将/etc/yum.repo.d/下的文件都删除掉。

然后参考step1:

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo

yum  clean metadata

yum remove centos-release-openstack-queens  -y

yum install centos-release-openstack-queens -y

再次安装glance:

yum install openstack-glance -y

再次报同样的错误。

不要放弃,这次配置中科大yum源,同样先删掉/etc/yum.repo.d/下的所有文件。

然后参考step1:

yum clean all

wget -O /etc/yum.repos.d/CentOS-Base.repo https://lug.ustc.edu.cn/wiki/_export/code/mirrors/help/centos?codeblock=3

yum clean metadata

yum remove centos-release-openstack-queens  -y

yum install centos-release-openstack-queens -y

再次安装glance:

还是报同样的错误。呵呵,,

看来不是yum源的问题,于是我换回了阿里的yum源。

解决方法如下:

yum install scipy -y     #这是安装python-networkx-core-1.10-1.el7.noarch.rpm需要的依赖包。

wget http://mirror.centos.org/centos/7/cloud/x86_64/openstack-queens/python-networkx-core-1.10-1.el7.noarch.rpm

开启虚拟机虚拟化技术。不会开的客官可以上网搜搜如何开启vmware虚拟化技术。(当然,客官也可能遇不到和我同样的情况)

rpm -ivh python-networkx-core-1.10-1.el7.noarch

yum install openstack-glance -y       #这次就可以顺利执行了。

2.在mariadb数据库中为glance组件创建glance数据库,为glance组件创建账号和密码,并授予对glance数据库的所有操作权限:

mysql -uroot -p

create database glance;

grant all privileges on glance.* to 'glance'@'localhost' identified by 'glance';

grant all privileges on glance.* to 'glance'@'%' identified by 'glance';

flush privileges;

3.配置/etc/glance/glance-registry.conf,以便glance-registry组件可以访问mariadb数据库,mariadb数据库存放的是镜像的元数据,也就是镜像的描述信息,比如镜像的大小等。

mariadb数据库中的glance数据库,只需要保证glance-registry可以访问即可,不需要在glance-api中添加[database]。

vim /etc/glance/glance-registry.conf
在[database]下,添加:
connection = mysql+pymysql://glance:glance@controller1/glance

保存退出。

4.将glance组件中的表导入到mariadb中的glance数据库中:

su -s /bin/sh -c "glance-manage db_sync" glance                       #导入进去的表并没有数据,只是具有表结构。

查看glance数据库,发现我的有15张表。

5.在keystone服务组件中,为glance服务组件创建账号和密码以及授予相应的权限。

source admin-openrc

在default域中创建glance用户:

openstack user create --domain default --password-prompt glance     #回车要求你输入glance用户的密码,我输入的密码是glance,客官请随意。

将admin角色关联到service项目和glance用户上:

openstack role add --project service --user glance admin         #相当于为用户授予权限。

查看角色与用户的对应关系:openstack role assignment list     #这是一个补充的知识点。

6.glance组件也需要向keystone服务组件请求token身份令牌,在第五步中,keystone已经为glance组件创建好了账号,那么这里就配置glance组件使用keystone创建好的账号去连接keystone服务组件:

需要同时配置glance-api组件和glance-registry组件的配置文件,添加相同的内容:

vim  /etc/glance/glance-api.conf
vim  /etc/glance/glance-registry.conf

在[keystone_authtoken]下,添加:

auth_uri = http://controller1:5000
auth_url = http://controller1:35357
memcached_servers = controller1:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = glance
password = glance

在[paste_deploy]下,添加:

flavor = keystone

保存退出。

7.配置glance中镜像实际数据(非元数据)的存放,可以使用多种存储库,比如对象存储,Cinder、S3、Ceph、常规文件系统等,初次我使用本地文件系统存储,来存放镜像文件。

一般将镜像文件存放在/var/lib/glance/images/目录下。

记住:这个images目录千万不要自己去创建,否则在上传镜像的时候会报错:

410 Gone: Error in store configuration. Adding images to store is disabled. (HTTP N/A)

这个images目录在glance服务启动后,会自己创建的。所以我们就不用瞎操心它了。

这个镜像文件的配置需要在glance-api配置文件中进行,因为glance-store组件配置入口被放入到glance-api的配置文件中了。

vim /etc/glance/glance-api.conf

在[glance_store]下,添加:

stores = file,http
default_store = file
filesystem_store_datadir = /var/lib/glance/images/

保存退出。

8.在keystone组件中,创建keystone服务实体和API端点:

source admin-openrc

openstack service create --name glance --description "OpenStack Image" image

openstack endpoint create --region RegionOne image public http://controller1:9292
openstack endpoint create --region RegionOne image internal http://controller1:9292
openstack endpoint create --region RegionOne image admin http://controller1:9292

备注:如果误创建了服务实体,导致出现重复的服务实体的话,执行下面的命令进行删除:

openstack service delete [service-id]

9.启动glance服务,并设置开机自启。

systemctl enable openstack-glance-api.service openstack-glance-registry.service
systemctl start openstack-glance-api.service  openstack-glance-registry.service

10.验证

下载一个镜像:

wget http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img

将镜像上传到glance服务,指定磁盘格式为raw,指定裸容器格式bare和公开可见性public,以便所有项目都可以访问它:

openstack image create "cirros" --file cirros-0.4.0-x86_64-disk.img --disk-format raw --container-format bare --public      #我是上传成功了。

查看上传的镜像的状态,状态为active就表示镜像是可用的:

openstack image list

本篇教程初版已经写完了,感谢各位客官的观看,关于glance更多的操作,还有待研究,之后我会继续添加的。

OpenStack控制节点上搭建Q版glance服务(step4)的更多相关文章

  1. OpenStack控制节点上搭建Q版nova服务(step5)

    placement组件监听的端口号是:8778 nova组件监听的端口号是:6080.8774.8775 其中6080端口号是novncproxy监听的端口号. 1.安装服务组件 yum instal ...

  2. OpenStack控制节点上搭建Q版keystone服务(step3)

    keystone服务监听两个端口:5000和35357 一.安装和配置 1.安装keystone组件 yum install openstack-keystone httpd mod_wsgi -y ...

  3. OpenStack上搭建Q版的公共环境准备(step1)

    vmware14 centos7.5minimal版 controller1节点虚拟硬件配置: CPU:1颗2核 Memory:2G 硬盘:20G 网卡: VMnet1(仅主机模式):关闭DHCP,手 ...

  4. OpenStack-Ocata版+CentOS7.6 云平台环境搭建 — 5.在控制节点上部署计算服务Nova

    计算服务Nova使用OpenStack Compute来托管和管理云计算系统. OpenStack Compute是基础架构即服务(IaaS)系统的主要部分. 主要模块用Python实现.OpenSt ...

  5. OpenStack搭建Q版在控制节点上的环境准备(step2)

    接下来是只需要在控制节点上准备的环境配置.其中虽然NTP服务需要在所有节点上都安装,但NTP服务在控制节点和其他的节点上的配置是不同的,所以不把它放在step1的公共配置中进行准备.如下: 1.配置N ...

  6. OpenStack-Ocata版+CentOS7.6 云平台环境搭建 — 6.在计算节点上安装并配置计算服务Nova

    安装和配置计算节点这个章节描述如何在计算节点上安装和配置计算服务. 计算服务支持几种不同的 hypervisors.为了简单起见,这个配置在计算节点上使用 :KVM <kernel-based ...

  7. OpenStack搭建Q版只属于计算节点上的环境准备(step6)

    配置NTP服务 1.安装chronyd yum install chrony -y 2.修改配置文件,使计算节点与控制节点同步时间 vim /etc/chrony.conf 注释掉下面四行: #ser ...

  8. openstack 部署(Q版)-----glance镜像服务安装配置

    一.创建数据库 CREATE DATABASE glance; GRANT ALL PRIVILEGES ON glance.* TO '; GRANT ALL PRIVILEGES ON glanc ...

  9. openstack 控制节点大流量对外发包,nf_conntrack,table full droping packets

    某些人很MJJ,挂了N多代理来疯狂采集,把服务器带宽都耗尽了,没办法只好封掉一些! 目前发现的问题openStack kilo for ubuntu manuual运行一段时间后 云平台的控制节点p5 ...

随机推荐

  1. windows7 下jdk1.8 改为 1.7过程,及环境变量配置;

    一. 安装完成后 当然是配置环境变量: JAVA_HOME 是我们以后用到jdk所在位置的内容时为了方便,给jdk起的名字,也是java程序约定的变量名,如果没有,当你在cmd 输入 java  ja ...

  2. 北大poj- 1007

    DNA排序 逆序数可以用来描述一个序列混乱程度的量.例如,“DAABEC”的逆序数为5,其中D大于他右边的4个数,E大于他右边的1个数,4+1=5:又如,“ZWQM”的逆序数为3+2+1+0=6. 现 ...

  3. windows与sql身份登录

    windows身份验证:1.“.”代表本地2.127.0.0.1代表本地3.本地ip地址,在dos中可查4.localhost代表本地 sql身份验证:首先用windows登上去,之后再安全性中找到登 ...

  4. 5--Postman上传文件

    请求: charles抓到请求信息: request: --21b63bd3-1543-46cf-ab25-eaa5adf82688Content-Disposition: form-data; na ...

  5. 2018-软工机试-D-定西

    单点时限: 1.0 sec 内存限制: 256 MB 这么多年你一个人一直在走 方向和天气的节奏会让你忧愁 你说你遇见了一大堆奇怪的人 他们看上去好像都比你开心 ——李志<定西> 这首歌的 ...

  6. linux 中 修改权限的命令 chmod

    今天被这个命令给黄了, 连这个都记不住,是该好好的复习复习了,问了一个问题,就是说这个tomcat 如何去修改关于这个权限的问题:一下子把我弄蒙了,不说了,心累: 修改linux文件权限命令:chmo ...

  7. 本地搭建json-server

    1.前言 为了前端项目获取数据,需要在本地搭建json-server,这样保证可以在本地实现增删改查的操作. 2.安装 全局安装: npm -g json-server 3.创建一个json-serv ...

  8. 动态改变Spring定时任务执行频率

    @Component@EnableSchedulingpublic class updateCronTask implements SchedulingConfigurer { public stat ...

  9. vue 监听手机键盘是否弹出及input是否聚焦成功

    //定义移动端类型 function pageStats() { let u = navigator.userAgent, app = navigator.appVersion; let obj = ...

  10. web渗透学习方向

    本章写给新加入我们破晓工作室的学弟学妹. 我现在写的是渗透方向的学习方向.因为我参加了线上培训班,听了专门培训渗透的课程后.所以感觉我们工作室自学太累了.如果没有一个“正确”的学习方向都不知道该学些什 ...