初識openstack之——安裝Image
阿新 • • 發佈:2018-06-30
poi posit ria BE 名稱 pos 創建數據庫 put mct 一、實驗說明
按照官方文檔搭建queens版本openstack,拓撲如下圖所示:
二、Image service介紹
image server,代碼名稱為galnce,用於存放虛擬機的映像文件,他通過一個REST API接口供用戶查找映像文件的metadata並獲得實際的映像文件。虛擬機映像文件可以存在本地文件系統中或者類似swift的對象存儲中,metadata由終端用戶或者openstack的compute組建定義。
image server通過幾個周期性的進程來為其提供緩存和確保集群中映像文件的一致性和高可用。
image server由以下幾個組件構成:
- glance-api
- glance-registry
存儲、處理和檢索有關image的元數據。元數據包括大小和類型等項。註意:不要將該組建暴漏給用戶。 - Database
存儲image元數據,可以使用MySQL或SQLite數據庫。 - Storage repository for image files
支持各種存儲庫類型,包括普通文件系統、對象存儲等。註意,有些存儲庫只支持只讀使用。 - Metadata definition service
提供通用API,讓用戶自定義元數據。元數據可用於image、volume等不同的資源類型三、操作步驟
為簡單起見,將image server安裝在controller節點並將數據保存在本地文件系統上
安裝配置image server前需要先為其創建數據庫,服務憑證以及API endpiont - 創建數據庫並授權
[root@controller ~]# mysql MariaDB [(none)]> create database glance; MariaDB [(none)]> grant all privileges on glance.* to ‘glance‘@‘localhost‘ identified by ‘password1!‘; MariaDB [(none)]> grant all privileges on glance.* to ‘glance‘@‘%‘ identified by ‘password1!‘;
2.使用admin身份創建glance用戶並授權
[root@controller ~]# . admin-openrc [root@controller ~]# openstack user create --domain default --password-prompt glance
[root@controller ~]# openstack role add --project service --user glance admin
- 創建glance服務
[root@controller ~]# openstack service create --name glance --description "OpenStack Image" image
- 創建image服務API路徑
usage: openstack endpoint create <service> <interface> <url> [root@controller ~]# openstack endpoint create --region RegionOne image public http://controller:9292
[root@controller ~]# openstack endpoint create --region RegionOne image internal http://controller:9292
[root@controller ~]# openstack endpoint create --region RegionOne image admin http://controller:9292
安裝配置
- 安裝程序並創建映像文件存放目錄
[root@controller ~]# yum install openstack-glance [root@controller ~]# mkdir -pv /var/images
- 編輯/etc/glance/glance-api.conf配置文件
[database] connection = mysql+pymysql://glance:password1!@controller/glance [keystone_authtoken] auth_uri = http://controller:5000 auth_url = http://controller:5000 memcached_servers = controller:11211 auth_type = password project_domain_name = Default user_domain_name = Default project_name = service username = glance password = password1! [paste_deploy] flavor = keystone
註銷或刪除[keystone_authtoken]段的其他選項,在[glance_store]段設置映像文件存放位置
[glance_store] stores = file,http default_store = file filesystem_store_datadir = /var/images/
- 編輯/etc/glance/glance-registry.conf配置文件
[database] connection = mysql+pymysql://glance:password1!@controller/glance [keystone_authtoken] auth_uri = http://controller:5000 auth_url = http://controller:5000 memcached_servers = controller:11211 auth_type = password project_domain_name = Default user_domain_name = Default project_name = service username = glance password = password1! [paste_deploy] flavor = keystone
註銷或刪除[keystone_authtoken]段的其他選項
- 初始化image數據庫並驗證
[root@controller ~]# su -s /bin/sh -c "glance-manage db_sync" glance [root@controller ~]# mysql MariaDB [(none)]> show databases;
MariaDB [(none)]> use glance; MariaDB [glance]> show tables;
啟動服務並設置開機自啟
[root@controller ~]# systemctl enable openstack-glance-api.service openstack-glance-registry.service
[root@controller ~]# systemctl start openstack-glance-api.service openstack-glance-registry.service
初識openstack之——安裝Image