openstack mysql配置_OpenStack Glance安装配置过程记录

本文详细记录了OpenStack Glance的安装配置过程,包括其作为虚拟机镜像服务的角色、支持的镜像格式和容器格式。在Ubuntu 11.10环境下,通过安装必备软件、配置数据库、修改配置文件以及向Keystone注册服务,成功部署Glance。最后,通过上传和验证镜像,确认Glance服务正常运行。
摘要由CSDN通过智能技术生成

Glance是作为OpenStack的虚拟机的Image(镜像)服务, 它提供了一系列的REST API, 用来管理、查询虚拟机的镜像, 它支持多种后端存储介质, 例如用本地文件系统作为介质、Swift(OpenStack Object Storage)作为存储介质或者S3兼容的API作为存储介质。 Glance作为OpenStack的一个核心的系统, 被设计为:

基于组件的架构

高可用

可容错以及从错误中恢复

高度开放的标准和兼容性

镜像格式

Glance支持多种镜像的格式, 下面列出了目前已经支持的镜像格式:

raw – 非结构化的镜像格式

vhd – 一种通用的虚拟机磁盘格式, 可用于Vmware、Xen、Microsoft Virtual PC/Virtual Server/Hyper-V、VirtualBox等。

vmdk – Vmware的虚拟机磁盘格式, 同样也支持多种Hypervisor

vdi – VirtualBox、QEMU等支持的虚拟机磁盘格式

iso – 光盘存档格式

qcow2 – 一种支持QEMU并且可以动态扩展的磁盘格式

aki – Amazon Kernel 镜像

ari – Amazon Ramdisk 镜像

ami – Amazon 虚拟机镜像

镜像容器格式 (或者打包Package的虚拟机磁盘格式)

容器类似一个文件夹, 在Swift中, 它称之为Container(容器), 同样在Glance中支持多种打包的Container格式, 例如:

ovf – 开放式虚拟机磁盘格式, 由Vmware发起, 目前已被多种虚拟化设备支持

bare – 这表示镜像没有container或者元数据

aki – Amazon Kernel 镜像

ari – Amazon Ramdisk 镜像

ami – Amazon 虚拟机镜像

我们既然需要打造一个云计算的平台, 那么镜像服务非常重要, 它可以让我们在众多的已生成好的镜像中选择合适的, 并启动一个虚拟机的实例, 这样就让自动化部署方便了很多, 用过Amazon EC2的朋友一定对此非常了解, 在Amazon EC2中, 有成百上千中镜像可以选择, 一些来自Amazon官方的镜像, 另外一种是来自社区上传的镜像, 我们只需要找到适合自己的, 并且根据这个镜像启动实例就万事大吉了。

准备环境

我们使用一台单独的虚拟机作为Glance的运行环境。

os: ubuntu server 11.10

hostname: os-glance-01

ip address: 10.172.7.85

gateway: 10.172.7.1

role: glance-api glance-registry

安装Glance

先安装必要的软件和Python依赖项

sudo apt-get install build-essential git python-dev python-setuptools python-pip python-mysqldb

签出代码, 并安装到Python dist package

cd ~

git clone git://github.com/openstack/glance.git

cd glance

sudo pip install -r tools/pip-requires

sudo python setup.py install

配置数据库

还记得我们在keystone那台机器上配置过一次mysql server吗, 我们需要去那台机器上为glance创建一个数据库来保存镜像的matadata, 我们不需要为每台机器都安装mysql, 所以这里我们就去keystone的那台机器上为glace创建一个数据库

mysql -h 10.172.7.81 -u root -p

create database glance;

grant all on glance.* to ‘glance’@’%’ identified by ‘openstack’;

配置Glance

sudo mkdir /etc/glance

sudo cp ~/glance/etc/* /etc/glance

修改/etc/glance/glance-api.conf

default_store = file 修改为 default_store = swift

swift_store_auth_address = http://10.172.7.81:5000/v2.0/ #这里设置为你的keystone的服务器地址, 最后的 slash (/) 一定要加上

swift_store_auth_version = 2 #这个也非常重要, 不要漏掉, 否则无法通过keystone的认证

swift_store_user = adminTenant:admin #这个是tenantName:userName, 别弄错了哦

swift_store_key = openstack #这个是keystone里admin的密码

#在文件末尾加上

[paste_deploy]

flavor = keystone

修改 /etc/glance/glance-reigstry.conf

sql_connection = mysql://glance:openstack@10.172.7.81/glance #这里指向到你的mysql服务器, 我这里是使用keystone那台服务器的mysql

#在文件末尾加上

[paste_deploy]

flavor = keystone

修改 /etc/glance/glance-api-paste.ini 和 /etc/glance/glance-registry-paste.ini

#找到文件末尾, 修改为下面这样, 注意把ip地址改成你的 keystone服务器地址, 并且设置正确 tenantName user和password

[filter:authtoken]

paste.filter_factory = keystone.middleware.auth_token:filter_factory

service_protocol = http

service_host = 10.172.7.81

service_port = 5000

auth_host = 10.172.7.81

auth_port = 35357

auth_protocol = http

auth_uri = http://10.172.7.81:5000/

admin_tenant_name = adminTenant

admin_user = admin

admin_password = openstack

admin_token = ADMIN

控制Glance服务

通过上面的配置, 我们的glance基本上就安装完成了, 现在我们可以先初始化一下glance的数据库结构

sudo glance-manage db_sync

#刚才可能会报错, 但是忽略它, 不过你要看清楚是否数据库连接设置正确了。

我们可以通过下面的命令启动Glance

sudo glance-control api start

sudo glance-control registry start

向Keystone注册Glance服务

我们现在可以使用glance了吗? 还不行, 我们需要告诉keystone如何找到Glance服务, 回到Keystone那台服务器, 注册的方法和注册Swift相同

keystone service-create –name=Glance –type=image –description=”Glance Image Service”

这里会返回service的id, 或者你可以通过keystone service-list 来查看glance的service id是什么

keystone endpoint-create –service_id = 

–region RegionOne

–publicurl http://10.172.7.85:9292/v1

–adminurl http://10.172.7.85:9292/v1

–internalurl http://10.172.7.85:9292/v1

注意换成你的glance service id, 地址换成你的glance服务器的地址.

验证Glance服务

先导入下面的系统环境

export OS_USERNAME=admin

export OS_TENANT_NAME=adminTenant

export OS_PASSWORD=openstack

export OS_AUTH_URL=http://10.172.7.81:5000/v2.0

export OS_REGION_NAME=RegionOne

然后下载一个做好的镜像

cd ~ && mkdir images

cd images

wget http://smoser.brickies.net/ubuntu/ttylinux-uec/ttylinux-uec-amd64-12.1_2.6.35-22_1.tar.gz

tar zxvf ttylinux-uec-amd64-12.1_2.6.35-22_1.tar.gz

解压缩会有3个文件, 然后我们通过

glance add name=”tty-kernel” disk_format=aki container_format=aki 

如果没有出错, 应该显示

Uploading image ‘tty-kernel’

=================================================================================================================================================================[100%] 41.8M/s, ETA  0h  0m  0s

Added new image with ID: ccc6dd8e-4f6e-413c-b6ab-3d6f59a0cef6

这就是刚才上传的image id, 然后一次上传

glance add name=”tty-ramdisk” disk_format=ari container_format=ari 

记住刚才的id, 我这里是1641812a-93a8-46ae-b986-d51979f60857,

glance add name=”tty-linux” kernel_id=ccc6dd8e-4f6e-413c-b6ab-3d6f59a0cef6 ramdisk_id=1641812a-93a8-46ae-b986-d51979f60857 disk_format=ami container_format=ami 

然后通过

glance index

来查看我们刚才上传的镜像

stephen@os-glance-01:~/images$ glance index

ID                                   Name                           Disk Format          Container Format     Size

———————————— —————————— ——————– ——————– ————–

ec957588-b62c-4bcc-99ef-17876f45a41e tty                            ami                  ami                        25165824

1641812a-93a8-46ae-b986-d51979f60857 tty-ramdisk                    ari                  ari                         5882349

ccc6dd8e-4f6e-413c-b6ab-3d6f59a0cef6 tty-kernel                     aki                  aki                         4404752

至此, Glance服务就已经安装完成了。

总结

Glance由于用到Keystone和Swift, 所以配置上面虽然简单, 但是很容易出错, 我在配置Glance的时候, git里的代码还有Bug, 就是无法使用swift auth version参数, 传递给keystone, 所以一直用v1的验证服务, 导致一直出错, 所以我就通过修改代码的方式, 传递auth version = 1给keystone, 不过好在现在官方的git代码中已经修正了这个问题, 所以, 你应该会比较顺利安装Glance.

由于openstack的代码一直在升级, 可能会有出现各种各样的问题, 我欢迎大家和我交流, 并加入Openstack中国社区,有问题我也会尽量帮忙解答。

原创文章,作者:h,如若转载,请注明出处:http://www.178linux.com/87056

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、Virtual Box的安装 1、安装Virtual Box 2、 Virtual Box网络设定 3、 安装操作系统 二、 环境预配置 1、 网路设置 2、 分别修改三个虚拟机的主机名 3、 主机地址映射配置 4、 禁用selinux 5、 CentOS6本地yum源配置 注:先加载镜像 6、 NTP安装服务 三、 本地源制作 1. Centos6.6本地base、extra源制作 2. 本地base、extra源制作 3. 本地epel、openstack源制作 4. ftp服务安装 5. 修改yum源仓库指向文件 四、 keystone安装(上) 1. 安装Mysql服务 2. 安装rabbitmq消息队列 3. 为nova,neutron,cinder.heat创建用户并授权 五、 keystone安装(下) 1. 创建库和授权 2. 创建库和授权 3. 生成PKI认证所需要的证书文件 4. 同步keystone数据库,生成keystone所需的表 5. 启动keystone服务和校验服务状态 6. 创cron任务,配置定期清理过期的token 7. keystone创建user,tenant,role和endpoint 六、 Glance安装 1. Glance安装 2. 配置glance-api服务 3. 配置glance-registry服务 4. 启动并校验glance服务 57 七、 Nova安装 59 1. nova的安装配置 59 2. 安装配置nova 60 八、 Neutron安装 63 1. neutron的安装配置 63 2.Neutron使用二层组件 66 3. 配置OVS二层插件 67 4. 配置nova支持neutron 67 5. 启动neutron-server服务 68 6. 重启nova服务和neutron联动 69 7. 重启neutron-server 69 8. controller0上校验neutron的配置 69 九、 Horizon安装 71 1. Horizon组件的安装配置 71 十、 Compute0安装nova 74 1. nova的安装配置(compute0-10.20.0.30) 74 2. nova的安装配置 75 十一、 Compute0安装neutron 78 1. neutron的安装配置(compute0) 78 十二、 Network0安装neutron 83 1. neutron的安装配置 83 十三、 新建网络 91 1. 配置安全组规则 91 2. 新建网络 92 3 .创建云主机 99 4 .分配浮动ip 101 十四、 心得体会 107
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值