diff --git a/ui/public/locales/en.json b/ui/public/locales/en.json
index bd3e6e6a54c..26e8358779b 100644
--- a/ui/public/locales/en.json
+++ b/ui/public/locales/en.json
@@ -750,7 +750,9 @@
"label.disk.size": "Disk size",
"label.disk.usage.info": "Disk usage information",
"label.diskbytesreadrate": "Disk read rate (BPS)",
+"label.diskbytesreadratemax": "Max disk read rate (BPS)",
"label.diskbyteswriterate": "Disk write rate (BPS)",
+"label.diskbyteswriteratemax": "Max disk write rate (BPS)",
"label.diskiopsmax": "Max IOPS",
"label.diskiopsmin": "Min IOPS",
"label.diskiopsreadrate": "Disk read rate (IOPS)",
diff --git a/ui/public/locales/pt_BR.json b/ui/public/locales/pt_BR.json
index 54481775a09..fec66ba4cef 100644
--- a/ui/public/locales/pt_BR.json
+++ b/ui/public/locales/pt_BR.json
@@ -548,7 +548,9 @@
"label.disk.size": "Tamanho do disco",
"label.disk.usage.info": "Informa\u00e7\u00f5es sobre o uso de disco",
"label.diskbytesreadrate": "Taxa de leitura de bytes do disco (BPS)",
+"label.diskbytesreadratemax": "Taxa m\u00e1xima de leitura de bytes do disco (BPS)",
"label.diskbyteswriterate": "Taxa de escrita de bytes no disco (BPS)",
+"label.diskbyteswriteratemax": "Taxa m\u00e1xima de escrita de bytes no disco (BPS)",
"label.diskiopsmax": "M\u00e1x IOPS",
"label.diskiopsmin": "M\u00edn IOPS",
"label.diskiopsreadrate": "Taxa de leitura do disco (IOPS)",
diff --git a/ui/src/config/section/offering.js b/ui/src/config/section/offering.js
index 8521512d6c0..8e4be8b0423 100644
--- a/ui/src/config/section/offering.js
+++ b/ui/src/config/section/offering.js
@@ -228,7 +228,9 @@ export default {
columns: ['name', 'displaytext', 'state', 'disksize', 'domain', 'zone', 'order'],
filters: ['active', 'inactive'],
details: () => {
- var fields = ['name', 'id', 'displaytext', 'disksize', 'provisioningtype', 'storagetype', 'iscustomized', 'disksizestrictness', 'iscustomizediops', 'diskIopsReadRate', 'diskIopsWriteRate', 'diskBytesReadRate', 'diskBytesWriteRate', 'miniops', 'maxiops', 'tags', 'domain', 'zone', 'created', 'encrypt']
+ var fields = ['name', 'id', 'displaytext', 'disksize', 'provisioningtype', 'storagetype', 'iscustomized', 'disksizestrictness', 'iscustomizediops',
+ 'diskIopsReadRate', 'diskIopsWriteRate', 'diskBytesReadRate', 'diskBytesReadRateMax', 'diskBytesWriteRate', 'diskBytesWriteRateMax', 'miniops', 'maxiops', 'tags',
+ 'domain', 'zone', 'created', 'encrypt']
if (store.getters.apis.createDiskOffering &&
store.getters.apis.createDiskOffering.params.filter(x => x.name === 'storagepolicy').length > 0) {
fields.splice(6, 0, 'vspherestoragepolicy')
diff --git a/ui/src/views/offering/AddDiskOffering.vue b/ui/src/views/offering/AddDiskOffering.vue
index 576721d48cc..5cb1ff8bde9 100644
--- a/ui/src/views/offering/AddDiskOffering.vue
+++ b/ui/src/views/offering/AddDiskOffering.vue
@@ -124,6 +124,14 @@
v-model:value="form.diskbytesreadrate"
:placeholder="apiParams.bytesreadrate.description"/>
+
+
+
+
+
+
@@ -132,6 +140,14 @@
v-model:value="form.diskbyteswriterate"
:placeholder="apiParams.byteswriterate.description"/>
+
+
+
+
+
+
@@ -362,7 +378,9 @@ export default {
{ type: 'number', validator: this.validateNumber }
],
diskbytesreadrate: [{ type: 'number', validator: this.validateNumber }],
+ diskbytesreadratemax: [{ type: 'number', validator: this.validateNumber }],
diskbyteswriterate: [{ type: 'number', validator: this.validateNumber }],
+ diskbyteswriteratemax: [{ type: 'number', validator: this.validateNumber }],
diskiopsreadrate: [{ type: 'number', validator: this.validateNumber }],
diskiopswriterate: [{ type: 'number', validator: this.validateNumber }],
diskiopsmin: [{ type: 'number', validator: this.validateNumber }],
@@ -504,9 +522,15 @@ export default {
if (values.diskbytesreadrate != null && values.diskbytesreadrate.length > 0) {
params.bytesreadrate = values.diskbytesreadrate
}
+ if (values.diskbytesreadratemax != null && values.diskbytesreadratemax.length > 0) {
+ params.bytesreadratemax = values.diskbytesreadratemax
+ }
if (values.diskbyteswriterate != null && values.diskbyteswriterate.length > 0) {
params.byteswriterate = values.diskbyteswriterate
}
+ if (values.diskbyteswriteratemax != null && values.diskbyteswriteratemax.length > 0) {
+ params.byteswriteratemax = values.diskbyteswriteratemax
+ }
if (values.diskiopsreadrate != null && values.diskiopsreadrate.length > 0) {
params.iopsreadrate = values.diskiopsreadrate
}