目录

测试环境

OpenStack Liberty: 双节点(192.168.1.1/192.168.1.2), 后续内容中分别以 node1/node2 表示双节点.

vCenter 环境:

  • VMware vCenter Server Application(192.168.1.100) 账号: root/vmware
  • vCenter 层级结构:
vCenter
==> Datacenter-1(datastore1)
==> Cluster-1
==> Host(192.168.1.3)

Nova 配置(OpenStack 纳管 vCenter 虚拟机)

使用 vCenter 驱动配置. 参考文档

现阶段而言, OpenStack 对 vCenter 虚拟机的管理包括 虚拟机的创建/删除/启停/休眠/唤醒/挂起/迁移 等. 但一些高级的 vCenter 功能如 DRS/DAS 等仍然不被支持.

  • node1: vim /etc/nova/nova.conf
[DEFAULT]
...
force_config_drive=True ...
config_drive_format=iso9660
compute_driver=vmwareapi.VMwareVCDriver [vmware]
host_ip=192.168.1.100
host_username=root
host_password=vmware
cluster_name=Cluster-1
datastore_regex=datastore1
wsdl_location=https://192.168.1.100/sdk/vimService.wsdl
insecure=True
  • node2: vim /etc/nova/nova.conf
[DEFAULT]
...
force_config_drive=True
config_drive_format=iso9660 ...
compute_driver=vmwareapi.VMwareVCDriver [vmware]
host_ip=192.168.1.100
host_username=root
host_password=vmware
cluster_name=Cluster-1
datastore_regex=datastore1
wsdl_location=https://192.168.1.100/sdk/vimService.wsdl
insecure=True

Glance 配置(OpenStack 纳管 vCenter 镜像)

参考文档

实际上在接入 vCenter 之后, Glance 的镜像仍能够存放在本地, 但当 vCenter 需要使用这个镜像来启动一个虚拟机时, 首先会将本地的镜像文件上传到 vCenter Datastore 之后才能开始创建, 相当耗时, 所以建议将镜像文件都上传到 Datastore 中.

OpenStack 对 vCenter 镜像的管理包括: 上传/下载 等功能.

  • node1: vim /etc/glance/glance-api.conf
[DEFAULT]
...
known_stores = vmware
default_store = vsphere [glance_store]
stores = file,http,vmware
vmware_server_host = 192.168.1.100
vmware_server_username = root
vmware_server_password = vmware
vmware_datastore_name = datastore1
vmware_datacenter_path = Datacenter-1
vmware_datastores = Datacenter-1:datastore1
vmware_task_poll_interval = 5
vmware_store_image_dir = /openstack_glance
vmware_api_insecure = True

Cinder 配置(OpenStack 纳管 vCenter 块设备)

参考文档

其实这里与其说是 OpenStack 纳管 vCenter 块设备 不如说是 OpenStack Cinder 为 vCenter 提供块设备功能. 换句话来说, vCenter 能够使用 Cinder 提供的 Volumes 来创建虚拟机和作为存储使用. 除此之外, Cinder 仍能保持对块存储的管理功能, 如: Volumes 的 创建/删除/快照/挂载/卸载 等. 有以下两点需要注意:

  1. Volumes 的挂载与卸载操作需要关闭虚拟机电源
  2. Cinder 不支持 Volumes 的备份功能

    • node1: vim /etc/cinder/cinder.conf
[DEFAULT]
...
default_volume_type = vmware
enabled_backends = vmware [vmware]
vmware_insecure=True
vmware_host_ip=192.168.1.100
vmware_host_username=root
vmware_host_password=vmware
vmware_volume_folder=Volumes
vmware_wsdl_location=https://192.168.1.100/sdk/vimService.wsdl
volume_driver=cinder.volume.drivers.vmware.vmdk.VMwareVcVmdkDriver
vmware_insecure = True
  • node2: vim /etc/cinder/cinder.conf
[DEFAULT]
...
default_volume_type = vmware
enabled_backends = vmware [vmware]
vmware_insecure = true
vmware_host_ip=192.168.1.100
vmware_host_username=root
vmware_host_password=vmware
vmware_wsdl_location=https://192.168.1.100/sdk/vimService.wsdl
volume_driver = cinder.volume.drivers.vmware.vmdk.VMwareVcVmdkDriver
vmware_insecure = True

NOTE: 需要创建名为 vmware 的类型

cinder type-create vmware

Ceilometer 配置

参考文档

VMware 暴露的监控最小采集频率是 300s, OpenStack Ceilometer 目前仅提供了对虚拟机的监控能力, 但能够通过其他的 vSphere API 来拿到更多 Datacenter/Cluster/Host/VirtualMachine 的 runtime information, 基本上包含了 CPU/Mem/DiskIO/网络流量 四个常规的监控对象.

  • node1: vim /etc/ceilometer/ceilometer.conf
[DEFAULT]
...
hypervisor_inspector=vsphere [node]
virt_inspector=vmware [vmware]
host_ip=192.168.1.100
host_username=root
host_password=vmware
wsdl_location=https://192.168.1.100/sdk/vimService.wsdl
insecure=True [service_credentials]
# 如果是多region,请更改下面配置项
#os_region_name = <RegionName>
  • node2: vim /etc/ceilometer/ceilometer.conf
[DEFAULT]
...
hypervisor_inspector=vsphere [node]
virt_inspector=vmware [vmware]
host_ip=192.168.1.100
host_username=root
host_password=vmware
wsdl_location=https://192.168.1.100/sdk/vimService.wsdl
insecure=True [service_credentials]
# 如果是多region,请更改下面配置项
#os_region_name = <RegionName>

测试

  • Step1: 重启相关服务
# node1
systemctl restart openstack-nova-compute.service openstack-nova-api.service openstack-nova-consoleauth.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service systemctl restart openstack-glance-api.service systemctl restart openstack-cinder-api.service openstack-cinder-volume.service systemctl restart openstack-ceilometer-collector.service openstack-ceilometer-api.service # node2
systemctl restart openstack-nova-compute.service openstack-nova-api.service systemctl restart openstack-cinder-api.service openstack-cinder-volume.service systemctl restart openstack-ceilometer-collector.service openstack-ceilometer-api.service
  • Step2: 尝试上传镜像文件, 在上传镜像的时候, 我们需要注意以下两点:

NOTE 1: 首先需要知道镜像文件的「disktype 和 adaptertype」, 使用指令 head -20 <vmdk_image_file> 就能够查看相关类型.

[root@seed ~]# head -20 cirros-0.3.2-i386-disk.vmdk
KDMV�9�� # Disk DescriptorFile
version=1
CID=5350c0c0
parentCID=ffffffff
createType="monolithicSparse" # Extent description
RW 80325 SPARSE "cirros-0.3.2-i386-disk.vmdk" # The Disk Data Base
#DDB ddb.virtualHWVersion = "4"
ddb.geometry.cylinders = "79"
ddb.geometry.heads = "16"
ddb.geometry.sectors = "63"
ddb.adapterType = "ide" # adaptertype == ide
���������

NOTE 2: 如果使用指令 qemu-img 将 qcow2/img 格式的镜像文件转换成 vmdk 格式镜像文件时, vmware_disktype 通常为 sparse, 而 vmware_adaptertype 通常为 ide, 所以相应的可以使用下面的镜像上传指令:

glance image-create \
--name fanguiju-test-2 \
--container-format bare \
--disk-format vmdk \
--property vmware_disktype="sparse" \
--property vmware_adaptertype="ide" \
< cirros-0.3.2-i386-disk.vmdk
+--------------------+----------------------------------------------------------------------------------+
| Property | Value |
+--------------------+----------------------------------------------------------------------------------+
| checksum | 3fd19141ff969dcb4926b610769e5ba4 |
| container_format | bare |
| created_at | 2017-04-19T08:27:25Z |
| direct_url | vsphere://192.168.1.100/folder/openstack_glance/70d581d4-1829-45c1-ac6c- |
| | ac1755da1650?dcPath=Datacenter-1&dsName=datastore1 |
| disk_format | vmdk |
| id | 70d581d4-1829-45c1-ac6c-ac1755da1650 |
| locations | [{"url": "vsphere://192.168.1.100/folder/openstack_glance/70d581d4-1829-45c1 |
| | -ac6c-ac1755da1650?dcPath=Datacenter-1&dsName=datastore1", "metadata": {}}] |
| min_disk | 0 |
| min_ram | 0 |
| name | fanguiju-test |
| owner | 1774b99ae7374d9b948fb4146fbf49fb |
| protected | False |
| size | 17104896 |
| status | active |
| tags | [] |
| updated_at | 2017-04-19T08:27:28Z |
| virtual_size | None |
| visibility | private |
| vmware_adaptertype | ide |
| vmware_disktype | sparse |
+--------------------+----------------------------------------------------------------------------------+

PS: 建议使用测试镜像文件.

NOTE 3: 如果上传镜像文件失败, 并且通过 glance/api.log 看出为 glance_store 相关的 ERROR, 可以尝试升级 glance_store 的版本. L版管理vmware需要升级 glance-store 的步骤:

[root@seed yum.repos.d]# rpm -ivh https://repos.fedorapeople.org/repos/openstack/openstack-mitaka/rdo-release-mitaka-5.noarch.rpm
[root@seed yum.repos.d]# vim rdo-release.repo
[root@seed yum.repos.d]# yum makecache
[root@seed yum.repos.d]# yum update python-glance-store

Datastore 创建了 openstack_glance 目录:

  • Step 3: 启动虚拟机

vCenter 任务流:

在 vCenter 中启动成功:

  • Step4: 创建 Cinder volumes 后能在 vCenter「虚拟机与模板」界面看到对应的 Volumes, 然后就可以使用这个 Volumes 来创建虚拟机或作为存储使用了.

OpenStack 多节点纳管 vCenter 5.5的更多相关文章

  1. 理解 OpenStack Swift (1):OpenStack + 三节点Swift 集群+ HAProxy + UCARP 安装和配置

    本系列文章着重学习和研究OpenStack Swift,包括环境搭建.原理.架构.监控和性能等. (1)OpenStack + 三节点Swift 集群+ HAProxy + UCARP 安装和配置 ( ...

  2. 020-VMware虚拟机作为OpenStack计算节点,上面的虚拟机无法启动问题解决

      问题描述: VMware虚拟机作为OpenStack计算节点,如果安装的操作系统是CentOS7.3,则在此计算节点放置的虚拟机无法正常启动,报如下错误: 在创建计算节点时,为了能让 KVM 能创 ...

  3. 学习OpenStack之(5):在Mac上部署Juno版本OpenStack 四节点环境

    0. 前沿 经过一段时间的折腾,终于在自己的Mac上装好了Juno版本的四节点环境.这过程中,花了大量的时间,碰到了许多问题,学到不少知识,折腾过不少其实不需要折腾的东西,本文试着来对这过程做个总结. ...

  4. openstack 控制节点大流量对外发包,nf_conntrack,table full droping packets

    某些人很MJJ,挂了N多代理来疯狂采集,把服务器带宽都耗尽了,没办法只好封掉一些! 目前发现的问题openStack kilo for ubuntu manuual运行一段时间后 云平台的控制节点p5 ...

  5. OpenStack keystone节点搭建(官方2018年4月份文档)

    参考文档:https://docs.openstack.org/install-guide/common/conventions.html https://docs.openstack.org/mit ...

  6. openstack swift节点安装手册3-最后的安装配置及验证

    以下步骤都在controller节点上执行 1.远程获取/etc/swift/swift.conf文件: curl -o /etc/swift/swift.conf https://git.opens ...

  7. openstack swift节点安装手册1-节点配置

    本文参照官方教程:http://docs.openstack.org/project-install-guide/object-storage/draft/environment-networking ...

  8. OpenStack(四)——使用Kolla部署OpenStack多节点云

    (1).实验环境 主机名 IP地址 角色 内存 网卡 CPU 磁盘 OpenStack-con 192.168.128.110 controller(控制) 8G 桥接网卡ens32和ens33 4核 ...

  9. kolla部署openstack多节点高可用并对接ceph后端存储(17)

    部署节点执行: 安装基础包和docker yum install python-devel libffi-devel gcc openssl-devel git python-pip -y 升级一下 ...

随机推荐

  1. linux安装mysql8(完整图文笔记)

    基本命令 安装 : yum install mysql-community-server 启动 : service mysqld start/restart 停止 : service mysqld s ...

  2. vue项目1-pizza点餐系统9-axios实现数据存储

    一.安装.引入axios 1.终端输入cnpm install axios 2.在main.js中引入 import axios from ‘axios’ 3.配置路径 axios.defaults. ...

  3. 基于Nginx+nginx-rtmp-module+ffmpeg搭建rtmp、hls流媒体服务器

    上篇文章是基于Red5与ffmpeg实现rtmp处理NVR或摄像头的监控视频处理方案,有兴趣的朋友可以查看. Nginx及nginx-rtmp-module安装 新建目录 mkdir /usr/loc ...

  4. bak文件恢复成 SQL2005 数据库 的全程讲解

    经常会碰到客户给我们发的是一个bak的数据库备份文件,而不是一个数据库.这就需要我们把这数据文件还原成数据库的形式. 如将demo.bak数据库恢复到mssql2005下 打开SQL2005,打开后就 ...

  5. 学习R的悬疑录(不定期更新)

    在使用caret包建模时候,没有导入机器学习包,如rpart.randomForest等,并不会对结果有影响.不知道是不是caret包内置了机器学习模块. # 加载r包 library(data.ta ...

  6. Python自动化学习--批量执行.py用例

    这段时间在摸索自动化,学到执行测试用例的时候发现,执行单用例的时候很简单,如果想多条用例执行的话就没那么简单了,经过几番查找,找到如下方法: unittest模块中的TestLoader类有一个dis ...

  7. win10文件夹共享

    1.开启server服务就可以使用net share 命令 2.查看目前已共享的文件夹 3.关闭默认共享 只有用administrator(且有密码)才能连上win10上的默认共享了,只有admini ...

  8. 手写与copy

    m_Font.CreateFont( 14, // 字体高度 0 , // 宽度由系统确定 0 , // 文本不倾斜 0 , // 字体不倾斜 FW_NORMAL, // 字体粗度 0 , // 非斜 ...

  9. Linux中查看某 个软件的安装路径

    本人qq群也有许多的技术文档,希望可以为你提供一些帮助(非技术的勿加). QQ群:   281442983 (点击链接加入群:http://jq.qq.com/?_wv=1027&k=29Lo ...

  10. mysql 分页查询及优化

    1.分页查询 select * from table limit startNum,pageSize 或者 select * from table limit pageSize offset star ...