- Production Ready OpenStack:Recipes for Successful Environments
- Arthur Berezin
- 752字
- 2021-07-09 21:45:15
Installing Glance – images service
Glance images service provides services that allow us to store and retrieve operating system disk images to launch instances from. In our example, environment Glance service is installed on the controller node. Glance service consists of two services: Glance API, which is responsible for all API interactions, and glance-registry
, which manages image database registry. Each has a configuration file under /etc/glance/
.
Getting ready
Before configuring Glance, we need to create a database for it and grant the needed database credentials. We need to create user account for Glance in the Keystone user registry for Glance to be able to authenticate against Keystone. Finally, we will need to open appropriate firewall ports.
Use MySQL command with root a account to create the Glance database:
[root@controller ~(keystone_admin)]# mysql -u root -p
- Create Glance database:
MariaDB [(none)]> CREATE DATABASE glance_db;
- Create Glance database user account and grant access permissions, where
my_glance_db_password
is your password:MariaDB [(none)]> GRANT ALL ON glance_db.* TO 'glance_db_user'@'%' IDENTIFIED BY 'my_glance_db_password'; MariaDB [(none)]> GRANT ALL ON glance.* TO 'glance_db'@'localhost' IDENTIFIED BY 'my_glance_db_password';
- Flush all changes:
MariaDB [(none)]> FLUSH PRIVILEGES;
- At this point, we can quit the MariaDB client:
MariaDB [(none)]> quit
- Create Glance tables:
[root@controller glance(keystone_admin)]# glance-manage db_sync
Gain Keystone admin privileges to create Glance service account in Keystone:
[root@controller ~]# source keystonerc_admin
- Create a Keystone user account for Glance:
[root@controller ~(keystone_admin)]# keystone user-create --name glance --pass glance_password
- Add an
admin
role to theglance
user and servicestenants
:[root@controller ~(keystone_admin)]# keystone user-role-add --user glance --role admin --tenant services
- Create a
glance
service:[root@controller ~(keystone_admin)]# keystone service-create --name glance --type image --description "Glance Image Service"
- Create an endpoint for
glance
service:[root@controller ~(keystone_admin)]# keystone endpoint-create --service glance --publicurl "http://10.10.0.1:9292" --adminurl "http://10.10.0.1:9292" --internalurl "http://10.10.0.1:9292"
How to do it...
Follow these steps to configure Glance image service:
- Set the connection string for
glance-api
:[root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-api.conf DEFAULT sql_connection mysql://glance_db_user:glance_db_password@10.10.0.1/glance_db
- Set connection string for
glance-registry
:[root@el7-icehouse-controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-registry.conf DEFAULT sql_connection mysql://glance_db_user:glance_db_password@10.10.0.1/glance_db
- Configure the message broker using
openstack-config
command:# openstack-config --set /etc/glance/glance-api.conf DEFAULT \rpc_backend rabbit # openstack-config --set /etc/glance/glance-api.conf DEFAULT \rabbit_host 10.10.0.1 # openstack-config --set /etc/glance/glance-api.conf DEFAULT \rabbit_userid guest # openstack-config --set /etc/glance/glance-api.conf DEFAULT \rabbit_password guest_password
- Configure Glance to use Keystone as an authentication method:
[root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-api.conf paste_deploy flavor keystone [root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-api.conf keystone_authtoken auth_host 10.10.0.1 [root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-api.conf keystone_authtoken auth_port 35357 [root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-api.conf keystone_authtoken auth_protocol http [root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-api.conf keystone_authtoken admin_tenant_name services [root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-api.conf keystone_authtoken admin_user glance [root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-api.conf keystone_authtoken admin_password glance_password
- Now configure
glance-registry
to use Keystone for authentication:[root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-registry.conf paste_deploy flavor keystone [root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken auth_host 192.168.200.258 [root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken auth_port 35357 [root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken auth_protocol http [root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken admin_tenant_name services [root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken admin_user glance [root@controller ~(keystone_admin)]# openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken admin_password password
- Start and enable the service:
[root@controller ~]# systemctl start openstack-glance-api [root@controller ~]# systemctl start openstack-glance-registry
There's more…
If the installation and configuration was successful, we can upload our fist image to Glance registry. CirrOS Linux image is a good candidate as it is extremely small in size and functional enough to test most OpenStack's functionalities.
If glance was successfully installed and configured, we may upload our fist image.
- First, download a CirrOS image to the controller node:
[root@controller glance(keystone_admin)]# wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img Then, upload the image to Glance registry using glance image-create command: [root@controller glance(keystone_admin)]# glance image-create--name="cirros-0.3.2-x86_64" --disk-format=qcow2 --container-format=bare --is-public=true -–file cirros-0.3.2-x86_64-disk.img
- List all glance images using glance image-list command:
[root@controller glance(keystone_admin)]# glance image-list If the upload of the image was successful, the Cirros image will appear in the list.
- LaTeX Cookbook
- OpenCV 3和Qt5計(jì)算機(jī)視覺(jué)應(yīng)用開(kāi)發(fā)
- 零基礎(chǔ)學(xué)MQL:基于EA的自動(dòng)化交易編程
- Gradle for Android
- 深入淺出React和Redux
- 西門子S7-200 SMART PLC編程從入門到實(shí)踐
- GameMaker Essentials
- Oracle數(shù)據(jù)庫(kù)編程經(jīng)典300例
- Windows Phone 8 Game Development
- 超簡(jiǎn)單:Photoshop+JavaScript+Python智能修圖與圖像自動(dòng)化處理
- 透視C#核心技術(shù):系統(tǒng)架構(gòu)及移動(dòng)端開(kāi)發(fā)
- SAP HANA Cookbook
- Unity3D高級(jí)編程:主程手記
- 高性能Java架構(gòu):核心原理與案例實(shí)戰(zhàn)
- SQL優(yōu)化核心思想