OpenStack Dalmatian : How to use CloudKitty2024/10/16 |
This is how to use OpenStack Rating Service (CloudKitty). This example is based on the environment like follows. ------------+--------------------------+--------------------------+------------ | | | eth0|10.0.0.30 eth0|10.0.0.50 eth0|10.0.0.51 +-----------+-----------+ +-----------+-----------+ +-----------+-----------+ | [ dlp.srv.world ] | | [ network.srv.world ] | | [ node01.srv.world ] | | (Control Node) | | (Network Node) | | (Compute Node) | | | | | | | | MariaDB RabbitMQ | | Open vSwitch | | Libvirt | | Memcached Nginx | | Neutron Server | | Nova Compute | | Keystone httpd | | OVN-Northd | | Open vSwitch | | Glance Nova API | | Nginx iSCSI Target | | OVN Metadata Agent | | Cinder API | | Cinder Volume | | OVN-Controller | | | | Gnocchi httpd | | Ceilometer Compute | | | | Ceilometer Central | | | | | | CloudKitty API | | | +-----------------------+ +-----------------------+ +-----------------------+ |
[1] | Add [cloudkitty] user in [rating] role for each project you like to rate. |
[root@dlp ~(keystone)]# openstack project list +----------------------------------+-----------+ | ID | Name | +----------------------------------+-----------+ | 756e2b4937c44d3991028e294f92d89a | hiroshima | | aff8e7e402dc4d9e849bbe0e34fa4538 | service | | b19d04cd37254937a4eaebcd0f0f0a43 | admin | +----------------------------------+-----------+[root@dlp ~(keystone)]# openstack role add --user cloudkitty --project hiroshima rating |
[2] | Enable [Hashmap] module. |
[root@dlp ~(keystone)]# openstack rating module list +-----------+---------+----------+ | Module | Enabled | Priority | +-----------+---------+----------+ | hashmap | False | 1 | | noop | True | 1 | | pyscripts | False | 1 | +-----------+---------+----------+[root@dlp ~(keystone)]# openstack rating module enable hashmap +---------+---------+----------+ | Module | Enabled | Priority | +---------+---------+----------+ | hashmap | True | 1 | +---------+---------+----------+[root@dlp ~(keystone)]# openstack rating module list +-----------+---------+----------+ | Module | Enabled | Priority | +-----------+---------+----------+ | hashmap | True | 1 | | noop | True | 1 | | pyscripts | False | 1 | +-----------+---------+----------+ |
[3] | Set rate to Instance Uptime. When users in the project set on [1] create and start instances with [flavor_id] you set, target project is charged at the rate you set every interval of the [period] you set in [cloudkitty.conf]. |
# add service matching rule [root@dlp ~(keystone)]# openstack rating hashmap service create instance +----------+--------------------------------------+ | Name | Service ID | +----------+--------------------------------------+ | instance | e3070563-51a8-42cf-b37d-765cd95eabf3 | +----------+--------------------------------------+ # add field matching rule [root@dlp ~(keystone)]# openstack rating hashmap field create e3070563-51a8-42cf-b37d-765cd95eabf3 flavor_id +-----------+--------------------------------------+--------------------------------------+ | Name | Field ID | Service ID | +-----------+--------------------------------------+--------------------------------------+ | flavor_id | 389abee2-ef46-43fa-ae54-73707b75f129 | e3070563-51a8-42cf-b37d-765cd95eabf3 | +-----------+--------------------------------------+--------------------------------------+[root@dlp ~(keystone)]# openstack flavor list +----+-----------+-------+------+-----------+-------+-----------+ | ID | Name | RAM | Disk | Ephemeral | VCPUs | Is Public | +----+-----------+-------+------+-----------+-------+-----------+ | 1 | m1.tiny | 2048 | 10 | 0 | 1 | True | | 2 | m1.small | 4096 | 10 | 0 | 2 | True | | 3 | m1.medium | 8192 | 10 | 0 | 4 | True | | 4 | m1.large | 16384 | 10 | 0 | 8 | True | | 5 | m2.large | 16384 | 10 | 10 | 8 | True | +----+-----------+-------+------+-----------+-------+-----------+ # add mapping rule # set a cost of [0.5] to instances with [flavor_id] = [2] [root@dlp ~(keystone)]# openstack rating hashmap mapping create 0.5 \ --field-id 389abee2-ef46-43fa-ae54-73707b75f129 \ --value 2 -t flat +--------------------------------------+-------+--------------------------------+------+--------------------------------------+------------+----------+------------+ | Mapping ID | Value | Cost | Type | Field ID | Service ID | Group ID | Project ID | +--------------------------------------+-------+--------------------------------+------+--------------------------------------+------------+----------+------------+ | 4c0e4b31-d7c2-4097-9de6-85b470fd4397 | 2 | 0.5000000000000000000000000000 | flat | 389abee2-ef46-43fa-ae54-73707b75f129 | None | None | None | +--------------------------------------+-------+--------------------------------+------+--------------------------------------+------------+----------+------------+ |
[4] | Verify settings with an user who is in the project you set on [1] to create or start an instance. |
[cent@dlp ~(keystone)]$ openstack server list +--------------------------------------+------------+---------+-------------------------------------+----------------+----------+ | ID | Name | Status | Networks | Image | Flavor | +--------------------------------------+------------+---------+-------------------------------------+----------------+----------+ | 3d753408-6705-4cbf-acd8-2e09d975b973 | CentOS-St9 | SHUTOFF | private=10.0.0.206, 192.168.100.103 | CentOS-Stream9 | m1.small | +--------------------------------------+------------+---------+-------------------------------------+----------------+----------+
[cent@dlp ~(keystone)]$
openstack server start CentOS-St9
# after a certain period of time, costs are charged [cent@dlp ~(keystone)]$ openstack rating summary get +----------------------------------+---------------+------+---------------------+---------------------+ | Tenant ID | Resource Type | Rate | Begin Time | End Time | +----------------------------------+---------------+------+---------------------+---------------------+ | 756e2b4937c44d3991028e294f92d89a | ALL | 0.5 | 2024-10-01T00:00:00 | 2024-11-01T00:00:00 | +----------------------------------+---------------+------+---------------------+---------------------+ # if the instance continues to run, costs are charged every [period] of time [cent@dlp ~(keystone)]$ openstack rating summary get +----------------------------------+---------------+------+---------------------+---------------------+ | Tenant ID | Resource Type | Rate | Begin Time | End Time | +----------------------------------+---------------+------+---------------------+---------------------+ | 756e2b4937c44d3991028e294f92d89a | ALL | 1.0 | 2024-10-01T00:00:00 | 2024-11-01T00:00:00 | +----------------------------------+---------------+------+---------------------+---------------------+ # display data frames [cent@dlp ~(keystone)]$ openstack rating dataframes get +---------------------+---------------------+----------------------------------+------------------------------- | Begin | End | Project ID | Resources +---------------------+---------------------+----------------------------------+------------------------------- | 2024-10-16T00:50:00 | 2024-10-16T01:00:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.0', 'service': | 2024-10-16T01:00:00 | 2024-10-16T01:10:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.0', 'service': | 2024-10-16T01:10:00 | 2024-10-16T01:20:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.0', 'service': | 2024-10-16T01:30:00 | 2024-10-16T01:40:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.5', 'service': | 2024-10-16T01:40:00 | 2024-10-16T01:50:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.5', 'service': +---------------------+---------------------+----------------------------------+------------------------------- ----------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------- 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'volume.size', 'desc': {'volume_type': '1bae2cfb-d3b9-4bcc-8262-7f6350a52d00', 'id': '9116852b-c923-4797-8e34-5c3481cacee8', 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', ----------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------- 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', --------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------+ | ------------------------------------------------------------------------------------------------------------------------------------------------------+ 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.0000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.0000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1E+1', 'rate_value': '0.0000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.5000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.5000'}] | ------------------------------------------------------------------------------------------------------------------------------------------------------+ |
[5] | Set rate to Volume Size. When users in the project set on [1] create cinder volumes, target project is charged at the rate you set per gigabyte. |
# add service matching rule [root@dlp ~(keystone)]# openstack rating hashmap service create volume.size +-------------+--------------------------------------+ | Name | Service ID | +-------------+--------------------------------------+ | volume.size | 22d52f5f-6ad4-493a-a359-ced99ce3c227 | +-------------+--------------------------------------+ # add mapping rule # set a cost of [1.5] per gigabyte [root@dlp ~(keystone)]# openstack rating hashmap mapping create 1.5 \ -s 22d52f5f-6ad4-493a-a359-ced99ce3c227 \ -t flat +--------------------------------------+-------+--------------------------------+------+----------+--------------------------------------+----------+------------+ | Mapping ID | Value | Cost | Type | Field ID | Service ID | Group ID | Project ID | +--------------------------------------+-------+--------------------------------+------+----------+--------------------------------------+----------+------------+ | 42cee9ba-f01e-4722-af07-849ee8e35110 | None | 1.5000000000000000000000000000 | flat | None | 22d52f5f-6ad4-493a-a359-ced99ce3c227 | None | None | +--------------------------------------+-------+--------------------------------+------+----------+--------------------------------------+----------+------------+ # set a 10% discount on over 30 GB volumes [root@dlp ~(keystone)]# openstack rating hashmap threshold create 30 0.90 \ -s 22d52f5f-6ad4-493a-a359-ced99ce3c227 \ -t rate +--------------------------------------+-------------+--------------------------------+------+----------+--------------------------------------+----------+------------+ | Threshold ID | Level | Cost | Type | Field ID | Service ID | Group ID | Project ID | +--------------------------------------+-------------+--------------------------------+------+----------+--------------------------------------+----------+------------+ | b5434ec4-d58c-4be3-b5a0-e5ab1639cec9 | 30.00000000 | 0.9000000000000000222044604925 | rate | None | 22d52f5f-6ad4-493a-a359-ced99ce3c227 | None | None | +--------------------------------------+-------------+--------------------------------+------+----------+--------------------------------------+----------+------------+ |
[6] | Verify settings with an user who is in the project you set on [1] to create volumes. |
[cent@dlp ~(keystone)]$ openstack rating summary get
+----------------------------------+---------------+------+---------------------+---------------------+
| Tenant ID | Resource Type | Rate | Begin Time | End Time |
+----------------------------------+---------------+------+---------------------+---------------------+
| 756e2b4937c44d3991028e294f92d89a | ALL | 2.0 | 2024-10-01T00:00:00 | 2024-11-01T00:00:00 |
+----------------------------------+---------------+------+---------------------+---------------------+
[cent@dlp ~(keystone)]$ openstack volume create --size 10 disk01
[cent@dlp ~(keystone)]$ openstack volume list +--------------------------------------+--------+-----------+------+-------------+ | ID | Name | Status | Size | Attached to | +--------------------------------------+--------+-----------+------+-------------+ | 031d0ed4-58bd-49af-abca-3cfc45a15a34 | disk01 | available | 10 | | +--------------------------------------+--------+-----------+------+-------------+ # after a certain period of time, costs are charged [cent@dlp ~(keystone)]$ openstack rating summary get +----------------------------------+---------------+------+---------------------+---------------------+ | Tenant ID | Resource Type | Rate | Begin Time | End Time | +----------------------------------+---------------+------+---------------------+---------------------+ | 756e2b4937c44d3991028e294f92d89a | ALL | 17.0 | 2024-10-01T00:00:00 | 2024-11-01T00:00:00 | +----------------------------------+---------------+------+---------------------+---------------------+[cent@dlp ~(keystone)]$ openstack rating dataframes get +---------------------+---------------------+----------------------------------+------------------------------- | Begin | End | Project ID | Resources +---------------------+---------------------+----------------------------------+------------------------------- | 2024-10-16T00:50:00 | 2024-10-16T01:00:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.0', 'service': | 2024-10-16T01:00:00 | 2024-10-16T01:10:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.0', 'service': | 2024-10-16T01:10:00 | 2024-10-16T01:20:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.0', 'service': | 2024-10-16T01:30:00 | 2024-10-16T01:40:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.5', 'service': | 2024-10-16T01:40:00 | 2024-10-16T01:50:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.5', 'service': | 2024-10-16T01:50:00 | 2024-10-16T02:00:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.5', 'service': | 2024-10-16T02:00:00 | 2024-10-16T02:10:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.5', 'service': | 2024-10-16T02:10:00 | 2024-10-16T02:20:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '15.0', 'service': +---------------------+---------------------+----------------------------------+------------------------------- ----------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------- 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'volume.size', 'desc': {'volume_type': '1bae2cfb-d3b9-4bcc-8262-7f6350a52d00', 'id': '9116852b-c923-4797-8e34-5c3481cacee8', 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'volume.size', 'desc': {'volume_type': '__DEFAULT__', 'id': '031d0ed4-58bd-49af-abca-3cfc45a15a34', 'project_id': '756e2b493 ----------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------- 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 7c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'day_of_the_year': '290' --------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------+ | ------------------------------------------------------------------------------------------------------------------------------------------------------+ 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.0000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.0000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1E+1', 'rate_value': '0.0000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.5000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.5000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.5000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.5000'}] | , 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1E+1', 'rate_value': '1.5000'}] | ------------------------------------------------------------------------------------------------------------------------------------------------------+[cent@dlp ~(keystone)]$ openstack volume create --size 30 disk02 [cent@dlp ~(keystone)]$ openstack volume list +--------------------------------------+--------+-----------+------+-------------+ | ID | Name | Status | Size | Attached to | +--------------------------------------+--------+-----------+------+-------------+ | 9a4d9b97-6cbf-44e3-86fe-6527c69615b5 | disk02 | available | 30 | | | 031d0ed4-58bd-49af-abca-3cfc45a15a34 | disk01 | available | 10 | | +--------------------------------------+--------+-----------+------+-------------+ # after a certain period of time, costs are charged # 1.5 x 30 x 0.9 = 40.5 [cent@dlp ~(keystone)]$ openstack rating summary get +----------------------------------+---------------+------+---------------------+---------------------+ | Tenant ID | Resource Type | Rate | Begin Time | End Time | +----------------------------------+---------------+------+---------------------+---------------------+ | 756e2b4937c44d3991028e294f92d89a | ALL | 57.5 | 2024-10-01T00:00:00 | 2024-11-01T00:00:00 | +----------------------------------+---------------+------+---------------------+---------------------+[cent@dlp ~(keystone)]$ openstack rating dataframes get +---------------------+---------------------+----------------------------------+------------------------------- | Begin | End | Project ID | Resources +---------------------+---------------------+----------------------------------+------------------------------- | 2024-10-16T00:50:00 | 2024-10-16T01:00:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.0', 'service': | 2024-10-16T01:00:00 | 2024-10-16T01:10:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.0', 'service': | 2024-10-16T01:10:00 | 2024-10-16T01:20:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.0', 'service': | 2024-10-16T01:30:00 | 2024-10-16T01:40:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.5', 'service': | 2024-10-16T01:40:00 | 2024-10-16T01:50:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.5', 'service': | 2024-10-16T01:50:00 | 2024-10-16T02:00:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.5', 'service': | 2024-10-16T02:00:00 | 2024-10-16T02:10:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '0.5', 'service': | 2024-10-16T02:10:00 | 2024-10-16T02:20:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '15.0', 'service': | 2024-10-16T02:20:00 | 2024-10-16T02:30:00 | 756e2b4937c44d3991028e294f92d89a | [{'rating': '40.5', 'service': +---------------------+---------------------+----------------------------------+------------------------------- ----------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------- 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'volume.size', 'desc': {'volume_type': '1bae2cfb-d3b9-4bcc-8262-7f6350a52d00', 'id': '9116852b-c923-4797-8e34-5c3481cacee8', 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'instance', 'desc': {'flavor_name': 'm1.small', 'flavor_id': '2', 'vcpus': '', 'id': '3d753408-6705-4cbf-acd8-2e09d975b973', 'volume.size', 'desc': {'volume_type': '__DEFAULT__', 'id': '031d0ed4-58bd-49af-abca-3cfc45a15a34', 'project_id': '756e2b493 'volume.size', 'desc': {'volume_type': '__DEFAULT__', 'id': '9a4d9b97-6cbf-44e3-86fe-6527c69615b5', 'project_id': '756e2b493 ----------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------- 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'project_id': '756e2b4937c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 7c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'day_of_the_year': '290' 7c44d3991028e294f92d89a', 'user_id': '19c7530debb54eb0bfe6dc47aae3df32', 'week_of_the_year': '41', 'day_of_the_year': '290' --------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------+ | ------------------------------------------------------------------------------------------------------------------------------------------------------+ 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.0000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.0000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1E+1', 'rate_value': '0.0000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.5000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.5000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.5000'}] | 'day_of_the_year': '290', 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1', 'rate_value': '0.5000'}] | , 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '1E+1', 'rate_value': '1.5000'}] | , 'month': '10', 'year': '2024', 'tenant_id': '756e2b4937c44d3991028e294f92d89a'}, 'volume': '3E+1', 'rate_value': '1.3500'}] | ------------------------------------------------------------------------------------------------------------------------------------------------------+ |
Sponsored Link |