ECS : L’unité de capacité d’ECS diffère entre l’interface utilisateur et l’API REST (Gio ou Go)
Summary: Par exemple, la capacité de 10 Go affichée par svc_bucket est apparemment prise directement dans la sortie de suivi d’utilisation de l’interface utilisateur (ou inversement), c’est-à-dire qu’avec la même valeur, elle n’est affichée qu’en Gio. ...
Symptoms
Notez l’unité Go dans les commandes de l’API REST et de l’interface de ligne de commande :
admin@ecsnode1:~> svc_bucket info chris-s3-bkt
svc_bucket v1.1.1 (svc_tools v2.20.0) Started 2024-11-22 15:51:33
Bucket ID chris-ns.chris-s3-bkt
Name chris-s3-bkt
Namespace chris-ns
Owner User chris-s3-user
Owner VDC Name VDC1
Owner zone/VDC ID urn:storageos:VirtualDataCenterData:8af5b9c3-9c0c-43b5-9402-14d181ade5bf
Keypool Hash ID 43344cc6ad534c4e600dc0a32d90e5104a8f718d99487938bf9f273f2100f248
Bucket Deletion Status None
Replication Group (vpool) Name local_vdc
Replication Group (vpool) ID urn:storageos:ReplicationGroupInfo:9eaa2c9d-4ed5-4f40-90f1-e347f8f3f3fd:global
Bucket Creation Date 2024-11-22 15:13:33 (1732288413155)
Temp Failed (TSO) False
API Type S3
FS Access Enabled False
Encryption Enabled False
Versioning State Disabled
ADO Enabled False
ADO Read-Only False
Object Lock Enabled False
Auto commit period (seconds) None
Enforce Retention False
Lifecycle Policy None
Keypool Policy None
Bucket ACL:
Type Affects Name
user file/dir chris-s3-user FULL_CONTROL
Object count 2
Total Object Size 11 GB
admin@ecsnode1:~>
admin@ecsnode1:~> svc_rest_cmd /object/billing/buckets/chris-ns/chris-s3-bkt/info | xmllint --format -
svc_rest_cmd 1.0.17
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<bucket_billing_info>
<total_size_deleted>0</total_size_deleted>
<total_objects_deleted>0</total_objects_deleted>
<name>chris-s3-bkt</name>
<uptodate_till>2023-06-15T18:25:45Z</uptodate_till>
<namespace>chris-ns</namespace>
<sample_time>2024-11-27T14:23:38Z</sample_time>
<TagSet/>
<total_mpu_parts>0</total_mpu_parts>
<total_mpu_size>0</total_mpu_size>
<total_objects>2</total_objects>
<total_size>11</total_size>
<total_size_unit>GB</total_size_unit>
<vpool_id>urn:storageos:ReplicationGroupInfo:9eaa2c9d-4ed5-4f40-90f1-e347f8f3f3fd:global</vpool_id>
</bucket_billing_info>
admin@ecsnode1:~>
Mais en vérifiant les informations de suivi d’utilisation de l’interface utilisateur, nous voyons la même lecture en Gio au lieu de Go, ce qui ne semble pas être correct :

Si vous placez le pointeur de la souris sur 11,00 Gio, il s’affiche en octets.
11 Go = 11 * 1000^3 = 11000000000 octets
11 Gio = 11 * 1024^3 = 11811160064 octets
Cause
Les valeurs renvoyées dans l’interface utilisateur et la ligne de commande sont toutes deux en Gio. Sur la ligne de commande, l’unité s’affiche en tant que Go au lieu de Gio, ce qui est incorrect.
Les valeurs Gio indiquées sur la page de suivi d’utilisation sont donc correctes.
Resolution
La mesure de la capacité des commandes de l’interface de ligne de commande ou de l’API REST est correcte et correspond à la mesure de l’interface utilisateur. Une future version du code ECS corrige les unités de capacité de l’API CLI/REST à partir de Go en Gio.