OpenStack学习笔记05-镜像服务Glance

OpenStack学习笔记05-镜像服务Glance

对着《云操作系统(OpenStack)》第五章做的。

一、Glance基本概念

Glance包含四个组件:

  • Glance-api
  • Database
  • Storage repository for image files
  • Metadata definition service

Glance部署在控制节点上。

二、数据库配置

1. 登录MySQL数据库

mysql -uroot -p

2. 创建Glance数据库

CREATE DATABASE glance;

3. 设置授权用户和密码

这里所指定的密码要和后面设置的密码以及配置文件中所定的密码相一致。

GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY '111111';
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY '111111';
exit

enter description here
enter description here

三、创建服务凭证和API端点

1. 使admin用户的环境变量生效

cd /root
source admin-openrc.sh

2. 创建服务凭证

2-1. 创建名为glance的用户(user):

openstack user create --domain default --password-prompt glance

输入两遍密码,我给glance设置的密码是111111
enter description here

2-2. 进行关联,即添加admin角色到glance用户和service项目

openstack role add --project service --user glance admin

2-3. 创建Glance服务实体认证

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

enter description here
enter description here

3. 创建镜像服务的API端点

3-1. 创建公共端点

openstack endpoint create --region RegionOne image public http://controller:9292

enter description here
enter description here

3-2. 创建外部端点

openstack endpoint create --region RegionOne image internal http://controller:9292

enter description here
enter description here

3-3. 创建管理端点

openstack endpoint create --region RegionOne image admin http://controller:9292

enter description here
enter description here

四、安装并配置Glance

1. 安装Glance所需软件包

yum install openstack-glance -y

enter description here
enter description here

2. 配置Glance所需组件

vi /etc/glance/glance-api.conf

2-1. 编辑[database]部分(大概在2071行)

[database]
connection=mysql+pymysql://glance:111111@controller/glance

2-2. 编辑[keystone_authtoken](大概在4859行)和[paste_deploy](大概在5503行),配置keystone认证服务访问

[keystone_authtoken]
www_authenticate_uri=http://controller:5000
auth_url=http://controller:5000
memecached_servers=controller:11211
auth_type=password
project_domain_name=default
user_domain_name=default
project_name=service
username=glance
password=111111
[paste_deploy]
flavor=keystone

2-3. 编辑[glance_store](大概在3394行)部分,配置本地文件系统存储和镜像位置

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

3. 同步数据库

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

enter description here
enter description here

3-1. 验证是否同步成功

mysql -uroot -p000000;
show databases;
use glance;
show tables;
exit

enter description here
enter description here

3-2. 启动Glance并设置开机自启动

systemctl enable openstack-glance-api
systemctl start openstack-glance-api

五、验证Glance服务

1. 生效admin用户环境变量

source admin-openrc.sh

2. 下载镜像

使用的是cirros镜像,可以从OpenStack get images网站上下载,我这里下载之后的文件名是cirros-0.5.1-x86_64-disk.img,我把这个文件放在了控制节点的/目录下。
enter description here

3. glance上传镜像

glance image-create --name "cirros" --file /cirros-0.5.1-x86_64-disk.img --disk-format qcow2 --container-format bare --visibility public

enter description here
enter description here

4. glance查看镜像

enter description here
enter description here

5. openstack查看上传镜像

enter description here
enter description here

六、制作CentOS 7虚拟机镜像

1. 准备CentOS 7安装镜像

1-1. 我把CentOS-7-x86_64-Minimal-2009-kernel-3.10.0-1160.el7.x86_64.iso这个系统安装镜像放在了控制节点的/opt下面。

enter description here
enter description here

1-2. 到/tmp目录中,创建一个10GB大小的磁盘镜像文件,名字为centos7_mini

cd /tmp/
qemu-img create -f raw centos7_mini.img 10G

1-3. 安装KVM(所以第二章做的事情还是不应该删除的)

yum install qemu-kvm libvirt virt-install virt-manager virt-top libguestfs-tools mesa-libGLES-devel.x86_64 mesa-dri-drivers virt-viewer -y

enter description here
enter description here

1-4. 部署虚拟机

virt-install --name centos_mini --ram 1024 --vcpus=1 --disk path=/tmp/centos7_mini.img --network network:default,model=virtio --arch=x86_64 --os-type=linux --graphics vnc,port=5910 --cdrom /opt/CentOS-7-x86_64-Minimal-2009-kernel-3.10.0-1160.el7.x86_64.iso --boot cdrom

enter description here
enter description here

接下来,执行安装过程。

1-5. 安装完成后的操作

1-5-1. 查看虚拟机状态

virsh list --all

1-5-2. 关闭虚拟机

virsh destroy centos_mini

1-5-3. 再次查看虚拟机

virsh list --all

enter description here
enter description here

1-6. 镜像格式转换

img格式转换为qcow2格式。

qemu-img convert -f raw -O qcow2 /tmp/centos7_mini.img /centos7_mini.qcow2

然后就可以用这个镜像了。

第五章做完了。

posted @ 2024-04-08 08:02  南宫二狗  阅读(85)  评论(0编辑  收藏  举报