设为首页 收藏本站
查看: 915|回复: 0

[经验分享] OpenStack实践系列③镜像服务Glance

[复制链接]

尚未签到

发表于 2017-6-27 07:49:17 | 显示全部楼层 |阅读模式
  OpenStack实践系列③镜像服务Glance
  3.5 Glance部署
  修改glance-api和glance-registry的配置文件,同步数据库



[iyunv@node1 ~]# vim /etc/glance/glance-api.conf
538 connection=mysql://glance:glance@192.168.3.199/glance

[iyunv@node1 ~]# vim /etc/glance/glance-registry.conf
363 connection=mysql://glance:glance@192.168.3.199/glance

[iyunv@node1 ~]# su -s /bin/sh -c "glance-manage db_sync" glance
No handlers could be found for logger "oslo_config.cfg"
/usr/lib64/python2.7/site-packages/sqlalchemy/engine/default.py:450: Warning: Duplicate index `ix_image_properties_image_id_name`. This is deprecated and will be disallowed in a future release.
cursor.execute(statement, parameters)(可以忽略)
  检查导入glance库的表情况



[iyunv@node1 httpd]# mysql -h192.168.3.199 -uglance -pglance
MariaDB [(none)]> use glance
Database changed
MariaDB [glance]> show tables;
+----------------------------------+
| Tables_in_glance |
+----------------------------------+
| artifact_blob_locations |
| artifact_blobs |
| artifact_dependencies |
| artifact_properties |
| artifact_tags |
| artifacts |
| image_locations |
| image_members |
| image_properties |
| image_tags |
| images |
| metadef_namespace_resource_types |
| metadef_namespaces |
| metadef_objects |
| metadef_properties |
| metadef_resource_types |
| metadef_tags |
| migrate_version |
| task_info |
| tasks |
+----------------------------------+
20 rows in set (0.00 sec)
  配置glance连接keystone,对于keystone,每个服务都要有一个用户连接keystone



[iyunv@node1 ~]# source admin-openrc.sh
[iyunv@node1 ~]# openstack user create --domain default --password=glance glance
+-----------+----------------------------------+
| Field | Value |
+-----------+----------------------------------+
| domain_id | default |
| enabled | True |
| id | 8f1bc013d4f04784886c852cd678e756 |
| name | glance |
+-----------+----------------------------------+
[iyunv@node1 ~]# openstack role add --project service --user glance admin
  修改glance-api配置文件,结合keystone和mysql
  # vim /etc/glance/glance-api.conf
  [keystone_authtoken] 部分加入如下配置:



auth_uri = http://192.168.3.199:5000
auth_url = http://192.168.3.199:35357
memcached_servers = 192.168.3.199:11211
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = glance
password = glance
  [paste_deploy] 部分修改:



flavor=keystone
  [default] 部分修改:



notification_driver = noop    # 镜像服务不需要使用消息队列
verbose=True    # 打开debug
  [glance_store] 部分:



default_store=file    # 镜像存放成文件
filesystem_store_datadir=/var/lib/glance/images/ # 镜像存放位置
  编辑/etc/glance/glance-registry.conf文件,并完成以下操作:



verbose=True
notification_driver = noop
  在[database]部分中,配置数据库访问
  [database]
...



connection=mysql://glance:glance@192.168.3.199/glance
  在[keystone_authtoken]和[paste_deploy]部分,配置认证服务访问
  [keystone_authtoken]
...



auth_uri = http://192.168.3.199:5000
auth_url = http://192.168.3.199:35357
memcached_servers = 192.168.3.199:11211
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = glance
password = glance
  [paste_deploy]
...



flavor = keystone
  检查glance修改过的配置



[iyunv@node1 ~]# grep -n '^[a-z]' /etc/glance/glance-api.conf
363:verbose=True
491:notification_driver = noop
538:connection=mysql://glance:glance@192.168.3.199/glance
642:default_store=file
701:filesystem_store_datadir=/var/lib/glance/images/
975:auth_uri = http://192.168.3.199:5000
976:auth_url = http://192.168.3.199:35357
977:memcached_servers = 192.168.3.199:11211
978:auth_plugin = password
979:project_domain_id = default
980:user_domain_id = default
981:project_name = service
982:username = glance
983:password = glance
1487:flavor=keystone


[iyunv@node1 ~]# grep -n '^[a-z]' /etc/glance/glance-registry.conf
188:verbose=True
316:notification_driver = noop
363:connection=mysql://glance:glance@192.168.3.199/glance
764:auth_uri = http://192.168.3.199:5000
765:auth_url = http://192.168.3.199:35357
766:memcached_servers = 192.168.3.199:11211
767:auth_plugin = password
768:project_domain_id = default
769:user_domain_id = default
770:project_name = service
771:username = glance
772:password = glance
1258:flavor=keystone
  对glance设置开机启动并启动glance服务



[iyunv@node1 glance]# systemctl enable openstack-glance-api
Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-glance-api.service to /usr/lib/systemd/system/openstack-glance-api.service.
[iyunv@node1 glance]# systemctl enable openstack-glance-registry
Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-glance-registry.service to /usr/lib/systemd/system/openstack-glance-registry.service.
[iyunv@node1 glance]# systemctl start openstack-glance-api
[iyunv@node1 glance]# systemctl start openstack-glance-registry
  查看galnce占用端口情况,其中9191是registry占用端口,9292是api占用端口



[iyunv@node1 glance]# netstat -lntup | egrep '9191|9292'
tcp 0 0 0.0.0.0:9292 0.0.0.0:* LISTEN 29094/python2
tcp 0 0 0.0.0.0:9191 0.0.0.0:* LISTEN 29120/python2
  让glance服务在keystone上注册,才可以允许其他服务调用glance



[iyunv@node1 ~]# source admin-openrc.sh
[iyunv@node1 ~]# openstack service create --name glance --description "OpenStack Image service" image
+-------------+----------------------------------+
| Field | Value |
+-------------+----------------------------------+
| description | OpenStack Image service |
| enabled | True |
| id | 7e931b709a444c13bac5611fb19b9a05 |
| name | glance |
| type | image |
+-------------+----------------------------------+
[iyunv@node1 ~]# openstack endpoint create --region RegionOne image public http://192.168.3.199:9292
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | 4ea9ed1557dc4e548c76cdf0f3d4fbdc |
| interface | public |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 7e931b709a444c13bac5611fb19b9a05 |
| service_name | glance |
| service_type | image |
| url | http://192.168.3.199:9292 |
+--------------+----------------------------------+
[iyunv@node1 ~]# openstack endpoint create --region RegionOne image internal http://192.168.3.199:9292
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | cef79d1f235c4fbe9eb2679c101edc15 |
| interface | internal |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 7e931b709a444c13bac5611fb19b9a05 |
| service_name | glance |
| service_type | image |
| url | http://192.168.3.199:9292 |
+--------------+----------------------------------+
[iyunv@node1 ~]# openstack endpoint create --region RegionOne image admin http://192.168.3.199:9292
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | b8012edc462a4d82b68b6a138b47cc94 |
| interface | admin |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 7e931b709a444c13bac5611fb19b9a05 |
| service_name | glance |
| service_type | image |
| url | http://192.168.3.199:9292 |
+--------------+----------------------------------+
  在admin和demo中加入glance的环境变量,告诉其他服务glance使用的环境变量,一定要在admin-openrc.sh的路径下执行



[iyunv@node1 ~]# echo "export OS_IMAGE_API_VERSION=2" | tee -a admin-openrc.sh demo-openrc.sh
export OS_IMAGE_API_VERSION=2
[iyunv@node1 ~]# tail -1 admin-openrc.sh
export OS_IMAGE_API_VERSION=2
[iyunv@node1 ~]# tail -1 demo-openrc.sh
export OS_IMAGE_API_VERSION=2
  报错记录:
[iyunv@node1 ~]# openstack service create --name glance --description "OpenStack Image service" image
An unexpected error prevented the server from fulfilling your request. (HTTP 500) (Request-ID: req-323c5997-7c34-418e-af7b-8dbb4f4fdd0f)
  解决办法:
重启keystone相关服务即可
[iyunv@node1 ~]# systemctl restart httpd.service
[iyunv@node1 ~]# systemctl restart memcached.service
  
如果出现以下情况,表示glance配置成功,由于没有镜像,所以看不到



[iyunv@node1 ~]# glance image-list
+----+------+
| ID | Name |
+----+------+
+----+------+
  验证Glance服务操作
  使用CirrOS,一个很小的Linux镜像,可以帮助测试OpenStack部署镜像服务是否正常下载一个镜像,上传镜像到glance,要在上一步所下载的镜像当前目录执行



[iyunv@node1 ~]# wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img
  将图像上传至使用QCOW2磁盘格式,因此所有的项目都可以访问它的服务



[iyunv@node1 ~]# glance image-create --name "cirros" --file cirros-0.3.4-x86_64-disk.img --disk-format qcow2 --container-format bare --visibility public --progress
[=============================>] 100%
+------------------+--------------------------------------+
| Property | Value |
+------------------+--------------------------------------+
| checksum | ee1eca47dc88f4879d8a229cc70a07c6 |
| container_format | bare |
| created_at | 2017-04-26T02:33:15Z |
| disk_format | qcow2 |
| id | 447ef14f-5ab2-4a69-af46-cf4331f45967 |
| min_disk | 0 |
| min_ram | 0 |
| name | cirros |
| owner | 7340dd86a8b14e73ac36b6d6385c689c |
| protected | False |
| size | 13287936 |
| status | active |
| tags | [] |
| updated_at | 2017-04-26T02:33:15Z |
| virtual_size | None |
| visibility | public |
+------------------+--------------------------------------+
  查看上传镜像



[iyunv@node1 ~]# glance image-list
+--------------------------------------+--------+
| ID | Name |
+--------------------------------------+--------+
| 447ef14f-5ab2-4a69-af46-cf4331f45967 | cirros |
+--------------------------------------+--------+
[iyunv@node1 ~]# cd /var/lib/glance/images/
[iyunv@node1 images]# ls
447ef14f-5ab2-4a69-af46-cf4331f45967 (和image-list中的id一致)

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-388492-1-1.html 上篇帖子: openstack私有云布署实践【5 数据库MariaDB 集群】 下篇帖子: OpenStack组件系列☞horizon搭建
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表