三、openstack安裝之Glance篇

一、glance簡介

 openstack鏡像服務使用戶能夠發現、登記並檢索虛擬機鏡像,代號glance。glance服務提供了一個REST API,使你能夠查詢虛擬機鏡像元數據和檢索實際鏡像。通過鏡像服務提供的虛擬機鏡像可以存儲在不同的位置,從簡單的文件系統對象存儲到類似openstack對象存儲系統。

 爲了簡單,本安裝鏡像服務使用普通文件系統做爲後端,也就是說上傳鏡像將被存儲在一個目錄裏,這個目錄是/var/lib/glance/p_w_picpath,你要確保這個目錄提供足夠的空間,然後再來存儲虛擬機的鏡像和快照。

 


二、鏡像服務組件

 1.Glance-API:承受鏡像API的探索,檢索和存儲鏡像的API調用。

 2.Glance-registry:存儲,處理和檢索有關鏡像的元數據,元數據大小、類型等等。

 3.Database:存儲鏡像元數據,你可以選擇你喜歡的數據庫,現在比較多的是mysql和sqlite

 鏡像文件存儲在存儲庫中,你可以選擇不同的存儲庫,比如正常文件系統、 RADOS、Amazon S3 HTTP,也有一些提供只讀使用,所以我們可以使用不同的分佈式文件系統來擴展。



三、安裝鏡像服務

 1.在controller節點上安裝鏡像服務

  # yum install -y openstack-glance python-glanceclient

 2.鏡像服務將鏡像的信息存儲在數據庫中。這個示例指引Mysql數據庫用於其他的openstack服務。在配置文件中指定數據庫的位置,鏡像服務提供glance-api和glance-registry服務,每個服務都有它自己的配置文件,你必須通過本節內容修改它們的配置文件。

  # openstack-config --set /etc/glance/glance-api.conf database \

   connection mysql://glance:glance@controller/glance

  # openstack-config --set /etc/glance/glance-registry.conf database \

   connection mysql://glance:glance@controller/glance

 3.登陸數據庫,創建glance用戶、數據庫以及授予訪問權限

  mysql> CREATE DATABASE glance;

  mysql> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' \

  IDENTIFIED BY 'glance';

  mysql> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' \

  IDENTIFIED BY 'glance';

  mysql> FLUSH PRIVILEGES;

  mysql> exit;

 4.填充glance數據庫

  # su -s /bin/sh -c "glance-manage db_sync" glance

  注意:這裏可能會有告錯,請按照下列網址上操作即可

  https://ask.openstack.org/en/question/28335/you-should-rebuild-using-libgmp-5-to-avoid-timing-attack-vulnerability-_warnnot-using-mpz_powm_sec-you-should-rebuild-using-libgmp-5-to-avoid-timing/

 5.爲鏡像服務創建glance用戶用作身份認證。

  # keystone user-create --name=glance --pass=openstack [email protected]

  # keystone user-role-add --user=glance --tenant=service --role=admin

 6.配置鏡像服務使用身份認證服務進行身份驗證 

  # openstack-config --set /etc/glance/glance-api.conf keystone_authtoken \

   auth_uri http://controller:5000

  # openstack-config --set /etc/glance/glance-api.conf keystone_authtoken \

   auth_host controller

  # openstack-config --set /etc/glance/glance-api.conf keystone_authtoken \

   auth_port 35357

  # openstack-config --set /etc/glance/glance-api.conf keystone_authtoken \

   auth_protocol http

  # openstack-config --set /etc/glance/glance-api.conf keystone_authtoken \

   admin_tenant_name service

  # openstack-config --set /etc/glance/glance-api.conf keystone_authtoken \

   admin_user glance

  # openstack-config --set /etc/glance/glance-api.conf keystone_authtoken \

   admin_password openstack

  # openstack-config --set /etc/glance/glance-api.conf paste_deploy \

   flavor keystone

  # openstack-config --set /etc/glance/glance-registry.conf \

   keystone_authtoken auth_uri http://controller:5000

  # openstack-config --set /etc/glance/glance-registry.conf \

   keystone_authtoken auth_host controller

  # openstack-config --set /etc/glance/glance-registry.conf \

   keystone_authtoken auth_port 35357

  # openstack-config --set /etc/glance/glance-registry.conf \

   keystone_authtoken auth_protocol http

  # openstack-config --set /etc/glance/glance-registry.conf \

   keystone_authtoken admin_tenant_name service

  # openstack-config --set /etc/glance/glance-registry.conf \

   keystone_authtoken admin_user glance

  # openstack-config --set /etc/glance/glance-registry.conf \

   keystone_authtoken admin_password openstack

  # openstack-config --set /etc/glance/glance-registry.conf paste_deploy \

   flavor keystone

 7.註冊鏡像服務和身份認證,以便其他openstack服務可以找到。註冊服務並創建端點:

  # keystone service-create --name=glance --type=p_w_picpath \

   --description="OpenStack Image Service"

  # keystone endpoint-create \

   --service-id=$(keystone service-list | awk '/ p_w_picpath / {print $2}') \

   --publicurl=http://controller:9292 \

   --internalurl=http://controller:9292 \

   --adminurl=http://controller:9292

 8.啓動服務並配置開機啓動

  # service openstack-glance-api start

  # service openstack-glance-registry start

  # chkconfig openstack-glance-api on

  # chkconfig openstack-glance-registry on



四、驗證鏡像服務安裝情況

 爲了驗證鏡像服務是否安裝正確,至少下載一個鏡像做測試。

 1.使用wget或者curl下載一個鏡像到專門的目錄中

  # mkdir /tmp/p_w_picpaths

  # cd /tmp/p_w_picpaths

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

 2.上傳鏡像到鏡像服務

  # source admin-openrc.sh

  # glance p_w_picpath-create --name "cirros-0.3.3-x86_64" --disk-format qcow2 \

   --container-format bare --is-public True --progress < cirros-0.3.3-x86_64-disk.img

  wKioL1VnTtuzMozaAAD0Ca7DB5E586.jpg

 3.確認鏡像上傳和顯示其屬性

  # glance p_w_picpath-list

  wKiom1VnTmTS4hwgAACdiXKjik0969.jpg

 4.現在可以刪除本地下載的鏡像,因爲現在存儲和使用都是通過鏡像服務

  # rm -fr /tmp/p_w_picpaths


至此,鏡像服務安裝完成!



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章