mirror of
https://github.com/OpenNebula/one.git
synced 2025-03-23 22:50:09 +03:00
F #3045: Add QoS attributes in sunstone
This commit is contained in:
parent
e1e6a8bfaf
commit
d936cab66a
@ -127,6 +127,52 @@
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset>
|
||||
<legend>{{tr "Override Network Inbound Traffic QoS"}}</legend>
|
||||
<div class="row">
|
||||
<div class="medium-4 columns">
|
||||
<label>
|
||||
{{tr "Average bandwidth (KBytes/s)"}}
|
||||
<input type="number" wizard_field="INBOUND_AVG_BW"/>
|
||||
</label>
|
||||
</div>
|
||||
<div class="medium-4 columns">
|
||||
<label>
|
||||
{{tr "Peak bandwidth (KBytes/s)"}}
|
||||
<input type="number" wizard_field="INBOUND_PEAK_BW"/>
|
||||
</label>
|
||||
</div>
|
||||
<div class="medium-4 columns">
|
||||
<label>
|
||||
{{tr "Peak burst (KBytes)"}}
|
||||
<input type="number" wizard_field="INBOUND_PEAK_KB"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset>
|
||||
<legend>{{tr "Override Network Outbound Traffic QoS"}}</legend>
|
||||
<div class="row">
|
||||
<div class="medium-4 columns">
|
||||
<label>
|
||||
{{tr "Average bandwidth (KBytes/s)"}}
|
||||
<input type="number" wizard_field="OUTBOUND_AVG_BW"/>
|
||||
</label>
|
||||
</div>
|
||||
<div class="medium-4 columns">
|
||||
<label>
|
||||
{{tr "Peak bandwidth (KBytes/s)"}}
|
||||
<input type="number" wizard_field="OUTBOUND_PEAK_BW"/>
|
||||
</label>
|
||||
</div>
|
||||
<div class="medium-4 columns">
|
||||
<label>
|
||||
{{tr "Peak burst (KBytes)"}}
|
||||
<input type="number" wizard_field="OUTBOUND_PEAK_KB"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset>
|
||||
<legend>{{tr "Hardware"}}</legend>
|
||||
<div class="row">
|
||||
|
@ -260,6 +260,7 @@ define(function(require) {
|
||||
|
||||
$.extend(network_json, WizardFields.retrieve($("#vnetCreateGeneralTab", context)));
|
||||
$.extend(network_json, WizardFields.retrieve($("#vnetCreateBridgeTab", context)));
|
||||
$.extend(network_json, WizardFields.retrieve($("#vnetCreateQoSTab", context)));
|
||||
$.extend(network_json, WizardFields.retrieve($("#vnetCreateContextTab", context)));
|
||||
|
||||
var secgroups = this.securityGroupsTable.retrieveResourceTableSelect();
|
||||
@ -349,6 +350,7 @@ define(function(require) {
|
||||
|
||||
WizardFields.fill($("#vnetCreateGeneralTab", context), element.TEMPLATE);
|
||||
WizardFields.fill($("#vnetCreateBridgeTab", context), element.TEMPLATE);
|
||||
WizardFields.fill($("#vnetCreateQoSTab", context), element.TEMPLATE);
|
||||
WizardFields.fill($("#vnetCreateContextTab", context), element.TEMPLATE);
|
||||
|
||||
if ($('#network_mode', context).val() == undefined){
|
||||
|
@ -33,6 +33,11 @@
|
||||
<i class="fa fa-shield"></i>
|
||||
<br>{{tr "Security"}}</a>
|
||||
</dd>
|
||||
<dd class="tabs-title">
|
||||
<a href="#vnetCreateQoSTab">
|
||||
<i class="fa fa-wrench"></i>
|
||||
<br>{{tr "QoS"}}</a>
|
||||
</dd>
|
||||
<dd class="tabs-title">
|
||||
<a href="#vnetCreateContextTab">
|
||||
<i class="fa fa-folder"></i>
|
||||
@ -194,6 +199,61 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tabs-panel" id="vnetCreateQoSTab">
|
||||
<fieldset>
|
||||
<legend>{{tr "Inbound traffic"}}</legend>
|
||||
<div class="row">
|
||||
<div class="medium-4 columns">
|
||||
<label>
|
||||
{{tr "Average bandwidth (KBytes/s)"}}
|
||||
<input type="number" wizard_field="INBOUND_AVG_BW"/>
|
||||
</label>
|
||||
</div>
|
||||
<div class="medium-4 columns">
|
||||
<label>
|
||||
{{tr "Peak bandwidth (KBytes/s)"}}
|
||||
<input type="number" wizard_field="INBOUND_PEAK_BW"/>
|
||||
</label>
|
||||
</div>
|
||||
<div class="medium-4 columns">
|
||||
<label>
|
||||
{{tr "Peak burst (KBytes)"}}
|
||||
<input type="number" wizard_field="INBOUND_PEAK_KB"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset>
|
||||
<legend>{{tr "Outbound traffic"}}</legend>
|
||||
<div class="row">
|
||||
<div class="medium-4 columns">
|
||||
<label>
|
||||
{{tr "Average bandwidth (KBytes/s)"}}
|
||||
<input type="number" wizard_field="OUTBOUND_AVG_BW"/>
|
||||
</label>
|
||||
</div>
|
||||
<div class="medium-4 columns">
|
||||
<label>
|
||||
{{tr "Peak bandwidth (KBytes/s)"}}
|
||||
<input type="number" wizard_field="OUTBOUND_PEAK_BW"/>
|
||||
</label>
|
||||
</div>
|
||||
<div class="medium-4 columns">
|
||||
<label>
|
||||
{{tr "Peak burst (KBytes)"}}
|
||||
<input type="number" wizard_field="OUTBOUND_PEAK_KB"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="row">
|
||||
<div class="large-12 columns">
|
||||
<span class="radius secondary label">
|
||||
<i class="fa fa-info-circle"/> {{tr "These values apply to each VM interface individually, they are not global values for the Virtual Network"}}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tabs-panel" id="vnetCreateContextTab">
|
||||
<div class="row">
|
||||
<div class="medium-6 columns">
|
||||
|
@ -68,8 +68,20 @@ define(function(require) {
|
||||
var permissionsTableHTML = PermissionsTable.html(TAB_ID, RESOURCE, this.element);
|
||||
|
||||
// TODO: simplify interface?
|
||||
var hiddenKeys = [
|
||||
"SECURITY_GROUPS",
|
||||
"INBOUND_AVG_BW",
|
||||
"INBOUND_PEAK_BW",
|
||||
"INBOUND_PEAK_KB",
|
||||
"OUTBOUNDD_AVG_BW",
|
||||
"OUTBOUND_PEAK_BW",
|
||||
"OUTBOUND_PEAK_KB" ];
|
||||
|
||||
var strippedTemplate = $.extend({}, this.element.TEMPLATE);
|
||||
delete strippedTemplate["SECURITY_GROUPS"];
|
||||
|
||||
$.each(hiddenKeys, function(i, key){
|
||||
delete strippedTemplate[key];
|
||||
});
|
||||
|
||||
var templateTableHTML = TemplateTable.html(strippedTemplate, RESOURCE,
|
||||
Locale.tr("Attributes"));
|
||||
@ -106,18 +118,34 @@ define(function(require) {
|
||||
}
|
||||
|
||||
function _setup(context) {
|
||||
var that = this;
|
||||
|
||||
RenameTr.setup(TAB_ID, RESOURCE, this.element.ID, context);
|
||||
PermissionsTable.setup(TAB_ID, RESOURCE, this.element, context);
|
||||
|
||||
// TODO: simplify interface?
|
||||
var hiddenKeys = [
|
||||
"SECURITY_GROUPS",
|
||||
"INBOUND_AVG_BW",
|
||||
"INBOUND_PEAK_BW",
|
||||
"INBOUND_PEAK_KB",
|
||||
"OUTBOUNDD_AVG_BW",
|
||||
"OUTBOUND_PEAK_BW",
|
||||
"OUTBOUND_PEAK_KB" ];
|
||||
|
||||
var strippedTemplate = $.extend({}, this.element.TEMPLATE);
|
||||
delete strippedTemplate["SECURITY_GROUPS"];
|
||||
|
||||
$.each(hiddenKeys, function(i, key){
|
||||
delete strippedTemplate[key];
|
||||
});
|
||||
|
||||
var hiddenValues = {};
|
||||
|
||||
if (this.element.TEMPLATE.SECURITY_GROUPS != undefined){
|
||||
hiddenValues.SECURITY_GROUPS = this.element.TEMPLATE.SECURITY_GROUPS;
|
||||
}
|
||||
$.each(hiddenKeys, function(i, key){
|
||||
if (that.element.TEMPLATE[key] != undefined){
|
||||
hiddenValues[key] = that.element.TEMPLATE[key];
|
||||
}
|
||||
});
|
||||
|
||||
TemplateTable.setup(strippedTemplate, RESOURCE, this.element.ID, context, hiddenValues);
|
||||
//===
|
||||
|
@ -42,6 +42,60 @@
|
||||
{{{permissionsTableHTML}}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="medium-6 columns">
|
||||
<table class="dataTable">
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="3">{{tr "Inbound QoS"}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="key_td">{{tr "Average bandwidth"}}</td>
|
||||
<td class="value_td">{{valOrDefault element.TEMPLATE.INBOUND_AVG_BW "--"}}
|
||||
<td class="value_td">{{tr "KBytes/s"}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="key_td">{{tr "Peak bandwidth"}}</td>
|
||||
<td class="value_td">{{valOrDefault element.TEMPLATE.INBOUND_PEAK_BW "--"}}
|
||||
<td class="value_td">{{tr "KBytes/s"}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="key_td">{{tr "Peak burst"}}</td>
|
||||
<td class="value_td">{{valOrDefault element.TEMPLATE.INBOUND_PEAK_KB "--"}}
|
||||
<td class="value_td">{{tr "KBytes"}}</td>
|
||||
</tr>
|
||||
<tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="medium-6 columns">
|
||||
<table class="dataTable">
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="3">{{tr "Outbound QoS"}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="key_td">{{tr "Average bandwidth"}}</td>
|
||||
<td class="value_td">{{valOrDefault element.TEMPLATE.OUTBOUNDD_AVG_BW "--"}}
|
||||
<td class="value_td">{{tr "KBytes/s"}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="key_td">{{tr "Peak bandwidth"}}</td>
|
||||
<td class="value_td">{{valOrDefault element.TEMPLATE.OUTBOUND_PEAK_BW "--"}}
|
||||
<td class="value_td">{{tr "KBytes/s"}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="key_td">{{tr "Peak burst"}}</td>
|
||||
<td class="value_td">{{valOrDefault element.TEMPLATE.OUTBOUND_PEAK_KB "--"}}
|
||||
<td class="value_td">{{tr "KBytes/s"}}</td>
|
||||
</tr>
|
||||
<tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="large-9 columns">
|
||||
{{{templateTableHTML}}}
|
||||
|
Loading…
x
Reference in New Issue
Block a user