Cinder 自身不提供存储技术,而是作为一个抽象的中间管理层,北向提供稳定而统一的 Block Storage 资源模型、南向通过 Plug-in 和 Drivers 模型对接多样化的后端存储设备(e.g. LVM、CEPH、NetApp、Datastore etc.)。
back-end storage pools
对于后端存储池信息,OpenStack为我们提供了接口进行查询。
API
仅管理员。列出调度器服务已知的所有后端存储池。
GET /v2/{project_id}/scheduler-stats/get_pools
response:
Response Example:
{
"pools": [
{
"name": "pool1",
"capabilities": {
"updated": "2014-10-28T00:00:00-00:00",
"total_capacity_gb": 1024,
"free_capacity_gb": 100,
"volume_backend_name": "pool1",
"reserved_percentage": 0,
"driver_version": "1.0.0",
"storage_protocol": "iSCSI",
"QoS_support": false
}
},
{
"name": "pool2",
"capabilities": {
"updated": "2014-10-28T00:00:00-00:00",
"total_capacity_gb": 512,
"free_capacity_gb": 200,
"volume_backend_name": "pool2",
"reserved_percentage": 0,
"driver_version": "1.0.1",
"storage_protocol": "iSER",
"QoS_support": true
}
}
]
}
命令行
$ cinder get-pools --detail
+-----------------------------+------------------------------------------------------------------------------+
| Property | Value |
+-----------------------------+------------------------------------------------------------------------------+
| allocated_capacity_gb | 200 |
| backend_state | up |
| driver_version | 1.2.0 |
| filter_function | None |
| free_capacity_gb | 53041.92 |
| goodness_function | None |
| location_info | ceph:/etc/ceph/ceph.conf:ff9e5fc7-7cbd-4a50-b64d-e7e6f3c10a53:cinder:volumes |
| max_over_subscription_ratio | 20.0 |
| multiattach | True |
| name | control@rbd-1#rbd-1 |
| provisioned_capacity_gb | 456.0 |
| replication_enabled | False |
| reserved_percentage | 0 |
| storage_protocol | ceph |
| thin_provisioning_support | True |
| timestamp | 2022-10-11T13:35:09.346218 |
| total_capacity_gb | 53041.92 |
| vendor_name | Open Source |
| volume_backend_name | rbd-1 |
+-----------------------------+------------------------------------------------------------------------------+
参数说明
-
total_capacity_gb
: 实际的物理总容量 -
provisioned_capacity_gb
: 表示物理存储中已分配的空间。例如:用户A从后端A在Cinder上创建了2x10G的卷,用户B不使用Cinder直接从后端A创建了3x10G的卷。假设这些是在后端a上提供的所有卷。总的provisioning ed_capacity将是50G。
-
allocated_capacity_gb
: Cinder使用这个来跟踪通过Cinder分配了多少容量。根据上面的示例,“allocated_capacity”为20G,因为这是通过Cinder发放的容量。这里记录allocated_capacity以区别于新参数provisioned_capacity。
-
free_capacity_gb
: 实际空闲的容量 -
total_capacity_gb
: 容量的总大小 -
max_over_subscription_ratio
: 最大超配比文章来源:https://www.toymoban.com/news/detail-485472.html如果
(provisioned_capacity_gb + 请求的容量) / total_capacity_gb > max_over_subscription_ratio
那么Cinder Backend 无法继续创建新的 Volume。文章来源地址https://www.toymoban.com/news/detail-485472.html
到了这里,关于Cinder — back-end storage pools的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!