Configure Abiquo UI

This page describes how to configure the Abiquo user interface with UI configuration properties. 

Changes to UI configuration

See Changes to UI configuration

Create custom UI configuration

To create custom UI configuration:

  1. Go to the UI configuration file location which is as follows

    /var/www/html/ui/config
    

    and find the default configuration file.

    client-config-default.json

    Do not change client-config-default.json because the platform will overwrite your changes when you upgrade

  2. To customize UI configuration properties, create a new custom file in the same folder called:

    client-config-custom.json
  3. Copy any default properties you want to change to this file and enter the new configuration values. See below for the full the list of UI configuration properties and the sample configuration file.

    • Do NOT copy the whole default file to the custom file
    • Only add necessary customizations to avoid inadvertently overriding future default values
    • For each customization add a top level element with a complete set of values because your new configuration will override elements at all levels, for example, if the element is a list, add a full list of values

    If your client endpoint is different to the API endpoint, set the config.endpoint. See #Configure API Endpoint

    For example, set the config.languages to keep the English language and add the Spanish language to your user interface. Abiquo will load the Spanish language file.

    {  
       "config.endpoint": "http://a.differenturl.com/api",
       "config.languages" : [
            {
    			"value":"en_US",
    			"name":"English",
    			"isDefault":true,
    			"lcid": "1033",
    			"flagIconUrl": "theme/abicloudDefault/img/country_flags/united-states-of-america.svg"
    		}, {
    			"value":"es_ES",
    			"name":"Español",
    			"isDefault":false,
    			"lcid": "1034",
    			"flagIconUrl": "theme/abicloudDefault/img/country_flags/spain.svg"
    		}
        ]
  4. Check your JSON format using a JSON validator, for example, http://jsonformatter.curiousconcept.com/#jsonformatter and remember:

    1. Check there are no commas after the last entry in the file, and that there are no missing commas between entries

      The UI will not load with an invalid configuration

  5. Save your file in UTF-8 format
  6. To activate your changes, reload the UI. 
  7. The platform will automatically load the new configuration but users should delete the cache and reload the UI in their browsers.

UI configuration properties

The default values are set in the client-config-default.json file. You can override the default values in the client-config-custom.json file.  

Property

_______________________

Description

_______________________

Example

config.languages

Language definitions for each language file with a set of translated labels. Consists of:

  • language code for filename
  • language name for the login menu 
  • default setting
  • optional: locale code ID in decimal
  • optional: flag for locale

See  Abiquo UI Client Language Configuration

{"value":"en_US","name":"English","isDefault":true,"flagIconUrl": "theme/abicloudDefault/img/country_flags/united-states-of-america.svg"}


{"value":"es_ES","name":"Spanish","lcid": "1034","flagIconUrl": "theme/abicloudDefault/img/country_flags/spain.svg}"

{"value":"fr_FR","name":"French","lcid":"1036"}

config.keymaps

For configuring VM keyboards on ESXi hypervisors, users can select a keymap from the pulldown list. See VM general information. Configure keymaps in VMware first and then enter the Vmware keymap value and a name. See VMware Keyboard Map Documentation. The hypervisor's default keyboard map is the US101 keyboard map (US English). To configure a different default keyboard map, set the  "RemoteDisplay.vnc.keyMap" property in the Abiquo Configuration Properties for Remote Services and then set the isDefault value to true for that keyboard. Warning: On ESXi for certain locales, when using remote access from a web client, some keystrokes do not translate. See https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2071245

{"value":"us", "name":"US English", "isDefault":true},
{"value":"uk", "name":"UK English"},
{"value":"es", "name":"Español"}

client.autoscaling.action.defaultDefault values for the automatic scaling action. See Configure default autoscaling actions
client.ostype.icon.{osType}Full or relative URI of an icon to load for a template if it doesn't have an iconUrl. The osType of the template must exactly match the osType given here. If not, a generic icon will be used.

"client.ostype.icon.CENTOS": "theme/abicloudDefault/img/icon-ostype-centos.png",

client.ostype.icon.generics

List of the client.ostype.icon marked as generic for an osType (non-strict osType compare). Example: WINDOWS_MYCUSTOM_VERSION will be resolved as client.ostype.icon.WINDOWS

"CENTOS"

config.protocols

  • Predefined values for firewall protocols. 
    • When users edit a firewall rule, they can select from the "Common protocols" as a guide to the standard ports for these protocols. As this is a guide only, users can edit all of the values as required. 
    • The port values for ALL PROTOCOL selections are fixed and users cannot edit the ports after they select these guides. In this case the user can only edit the Protocol and the Sources. To clear the port values, the user can change to another option

To get an idea of how these protocols look in the UI, see Manage Firewalls


config.loadbalancerprotocols

Predefined protocols and preset options for load balancers. Very similar to the Firewall protocols.

To get an idea of how these protocols look in the UI, see Manage Load Balancers


config.loadbalanceralgorithms 
config.loadbalancerroutingrulesprotocols 
config.loadbalancerhealthcheckprotocols 
config.loadbalancerhealthcheck.default.interval

Default interval value when creating load balancer healthcheck (in second).

Can be empty (no default value).


config.loadbalancerhealthcheck.default.timeout

Default timeout value when creating load balancer healthcheck (in second). Can be empty.

Can be empty (no default value).


config.loadbalancerhealthcheck.default.attempts

Default attempts value when creating load balancer healthcheck (value between 0 and 10).

Can be empty (no default value).


config.loadbalanceraddressesreuse 
config.loadbalanceraddressestype

Override load balancer addresses type by hypervisor/device.

Default value is an empty object(config.loadbalanceraddressestype: {})

To define values for an hypervisor/device, add a new property with the name of the hypervisor/device and set the list of accepted values.

Values accepted: ["PRIVATE","PUBLIC","PRIVATE_AND_PUBLIC","NATIP","PRIVATE_AND_NATIP"]

When private IPs are not allowed, do not display the private subnets section

"config.loadbalanceraddressestype" : {
"nsx-nat":["NATIP"]
}

config.loadbalancer.targetgrouphealthcheckprotocols

For AWS application load balancers, the default list of common health check protocols for target groups.
config.loadbalancersubnetstype

Override load balancer subnets type by hypervisor/device.

Default value is an empty object(config.loadbalancersubnetstype: {})

To define values for an hypervisor/device, add a new property with the name of the hypervisor/device and set the list of accepted values.

Values accepted: ["PRIVATE","EXTERNAL"]

"config.loadbalancersubnetstype" : {
"nsx-nat":["PRIVATE"]
}

config.monitoringstatistics

Monitoring statistics can restrict the available metrics
config.monitoringperiods 

egg.speak

Speak error messages with Egg Speak. By default, this experimental feature is not enabled

config.endpoint

  • URL of the API where the client can connect to the API
  • Abiquo users require direct access to the Abiquo API because the UI client interacts with the API directly. 
  • You would usually install the Abiquo UI together with the Abiquo Server, but you can install it separately. 
  • As part of the post-install configuration process, Abiquo asks you for the API endpoint and sets it. However, you can change this value to point to a load balancer, etc.

api.version

  • Mandatory version of the API to specify version for mediatypes in API requests
  • As part of the post-install configuration process, Abiquo sets this version and updates it during upgrades

client.id
  • Custom integration parameter

client.backto.url

  • If there is no value set for the Redirect to this URL after logout (empty -> login screen) system property in Configuration View, when the user logs out, Abiquo will check for this URL and redirect to it. If it is not supplied, Abiquo will redirect to the login screen
  • This URL is also used when a redirect is necessary before the user has fully logged in. At this time, the application cannot access the logout redirect URL system property because it does not have access to the database yet

client.modalblocker.timeout.milliseconds
  • Control the timeout for browser popup blocker

client.themes

See Abiquo Branding Guide and Abiquo Branding Admin Guide

client.window.title

Browser tab title for Abiquo window


client.google.analytics.id 
client.google.analytics.url 
rdpaccess.usesslproxyIf false, allow insecure HTTP connections to Hyper-V VMs (not recommended).
client.captcha.publickey

Captcha public key. When users can reset their passwords in Abiquo, you can use ReCaptcha. To enable ReCaptcha for Abiquo, request keys from this link: https://www.google.com/recaptcha/admin#createsite.

Set the private key value for abiquo.captcha.private.key in abiquo.properties. See Abiquo Configuration Properties#captcha. See also Configuration View#Password


client.external.js.loader.url
  • Load custom JavaScript or HTML

  • You may want to add customized Javascript or HTML content to the UI. You can select a file which will be loaded in all Abiquo UI pages and may help you integrate UI with 3rd-party products or enhance a particular aspect of Abiquo

  • The default HTML file (externaljsloadertemplate.html) is located in the root path of the UI
  • You can add content to this file or you can specify the URL of a custom file

client.google.maps.enabled

  • If your environment is not connected to the Internet, disable Google maps

client.google.maps.key

client.password.recovery

If the system property to Allow password reset is false (see Configuration View#Password), set this option to false to hide the "Forgot your password" link.
client.offline
  • Use the Abiquo UI in offline mode, which will prevent Abiquo from loading external libraries, set this option to true.

config.enterprise.properties
config.enterprise.onlyuseprovidersIf true, group regions by provider and group vCloud Director regions by endpoint when editing tenants to allow access to provider regions and when creating, editing, and displaying scopes, and so ontrue
client.backup.policies.poweredvmeditableIf true, allow user to edit backup policies in VMs that are powered on
client.backup.policies.multipleselectionallowedIf true, allow user to select multiple policies for a VM
client.backup.restore.allowreplicabackuprestoreIf true, display Restore link for backups with replication, allowing the user to restore these backups

client.openid.skip.login.view (minus)

Deprecated in Abiquo 4.7.1 for UI 5. Use client.skip.login.view. By default, when in OpenID mode, Abiquo shows an initial screen with a link to the Authentication portal. If this property is set to true, then Abiquo will not display the initial screen and will redirect users directly to the Authentication portal.


client.skip.login.view

Set to true to go directly to the SAML or OpenID Connect login or false to go to the Abiquo user interface when using the SAML or OpenID Connect integration. See Abiquo OpenID Connect Integration and SAML Integration


client.header.link.usersmanagementURL of external link to open from users management button in main menu. See Add external link in Abiquo header menu
client.footer.about.hideHide external About link in footer
client.footer.support.hideHide external Support link in footerfalse
client.wiki.versionWiki space to use for wiki links to Abiquo documentation, for example, "doc" for current version or "ABI40" after a new version is released"doc"
config.harddiskcustomcontrollertypesList of controller types to display pull-down list when user adds a virtual disk to a VM. See Display custom list of controllers when adding virtual disk to VM. 
config.harddiskcustomcontrollers
List of controllers to display pull-down list when user adds a virtual disk to a VM. See Display custom list of controllers when adding virtual disk to VM.   

client.classicfirewalls.enabled

Display classic firewalls tab in the UIfalse
client.cookies.policy.urlURL of your privacy policy file. See Configure a cookie message and privacy policy"https://www.abiquo.com/Privacy-Policy/ "
client.cookies.cookiespolicy.urlURL of your cookies policy file. See Configure a cookie message and privacy policy""
client.header.externalurliconsList of URL objects with role IDs and symbols. See Add role based external links to the main menu

"client.header.externalurlicons" : [
{
"url": "https://www.abiquo.com",
"icon":"fa fa-user",
"label":"Abiquo",
"labelCode":"",
"roleIds": [ 1,2,3]
},
{
"url": "https://www.google.com",
"icon":"fa fa-google",
"label":"Google",
"labelCode":"google",
"roleIds": [1]
}
]

client.dashboard.widgets.defaultvaluesStarting threshold for highest and lowest usage panels for CPU and RAM on the Optimization dashboard. See Optimization

"client.dashboard.widgets.defaultvalues": {
"maxCPU": 80,
"maxRAM": 80,
"minCPU": 30,
"minRAM": 30
}

client.dashboard.widgets.mindaysdeployedStarting threshold for longest time deployed panel on the Optimization dashboard. See Optimization
90
client.dashboard.widgets.lastbills.lastmonthsOn the Hybrid billing dashboard, the number of months to display bills for.5
client.dashboard.widgets.lastbills.currenciesconversions

On the Hybrid billing dashboard, currency and conversion to another currency with a conversion rate. The inside currencyCode currency is multiplied by the conversion value to give the amount in the outside currencyCode currency. The example shows a conversion from euros to US dollars. The value of month is set to default, but you can specify a value for each month of the year (from 1 (January) to 12 (December)). You have to specify the year too (mandatory). If a specific value is present for the current month and year, the platform will use it; otherwise, it will use the default.

The currencies will display on the dashboard in the order you use in this property, and the first currency will be the default on the dashboard.

For each currency, add a new currencyLabel in each lang_xx_XX_custom.json with the corresponding currencyCode

Ex: "dashboard.lastbills.label.currency.USD":"Dollar",

Otherwise the currency will display as "dashboard.lastbills.label.currency.currencyCode".

{
"currencyCode": "USD",
"symbol": "$",
"conversions": [
{
"currencyCode": "EUR",
"values":[
{
"month": "default",
"value": 1.1
},

{

"month": 12,
"year": 2019,
"value": 1.3

}]
}]
}

client.dashboard.widgets.lastbills.additionalprovidersAdditional providers to display on the Billing dashboard, as a comma separated list. If you use a hypervisor type, the platform will display its friendly name. E.g. to display VMware ESX Host, add "VMX_04"["VMX_04", "Private"]

client.dashboard.widgets.availableitems

The list of widgets to display in the dashboard widgets catalog. To turn off display of one or more widgets, copy the full list to client-config-custom.json and for the selected widgets, set the "available" values to false.

"client.dashboard.widgets.availableitems": [
  {
    "name":"enterpriseresources",
    "available": false   
  },

...

]

client.asynctask.missingvars.schema

JSON schema to define the required variables for creating a virtual datacenter with NSX-ECMP or NSX-T. See Create more than one VDC in NSX ECMP and Configure the Abiquo NSX-T integration
client.budget.currenciesCurrencies to use for budgets. If an enterprise in a hierarchy uses another currency and it has an enterprise property for a conversion_factor, use this property to perform the conversion.{"label": "€", "value": "EUR"}
client.login.modulesAbiquo login modules to use with options for Basic Auth (default), Open ID, and SAML. See client-config-default.json for configuration examples. SAML and Open ID have cookies to store the user's login module in order to load it when the user opens the UI.

client.2fa.activated

If false, do not display the option in the username menu to allow customers to activate 2fa, even if it is available on the platform

true

client.vm.datastoretiers.useonlyrecommended

If set to true, if VM is not deployed, then display recommended DS tiers only, and if the VM is deployed, display all compatible tiers.

false

client.publiccredentials.accountsinfo

Use to display additional information for each public provider credential. You can add new ones using the following format

  • Name the new entry with hypervisor type name (ORACLE_VM, digitalocean2, etc...)
    • portalLink: the hypervisor's official portal
    • separator: if the accountId is a concatenation of several values, split those values with the separator

      • ex. in Azure: subscription-id#app-id#tenant-id

    • accountInfo: this label will be used in each lang_xX.json to display the account ID property
      • ex: "enterprise.popup.credentials.label.subscriptionid":"subscription ID"
      • ex: "enterprise.popup.credentials.label.appid":"app ID"
      • ex: "enterprise.popup.credentials.label.tenantid":"tenant ID"

"client.publiccredentials.accountsinfo": {
"AMAZON": {
"portalLink": "https://aws.amazon.com/",
"accountInfo": ["accountnumber"]
},
"azurecompute-arm": {
"portalLink": "https://azure.microsoft.com/en-us/features/azure-portal/",
"separator":"#",
"accountInfo": ["subscriptionid", "appid", "tenantid"]
},
"VCD": {
"portalLink": "https://vcloud.example.com/",
"accountInfo": ["organizationname"]
}
}

client.tmp.button.createvm.enabled (minus)

Previous property for Create VM shortcut. (minus) Replaced by client.creatvmpopup.button.enabled which is true by default
client.createvmpopup.button.enabledIf true, display the shortcut button to create a VM from anywhere. Changes to this property will display for users the next time they log in. See Create and deploy a VM from anywhere. By default, this property is truefalse
client.monitoring.button.alwaysdisplayedIf true, display the monitoring button on virtual appliance cards. See Display metrics for a virtual appliance. By default, this property is true.false


Default UI configuration 

A sample UI config file for the current version is included here. 

Abiquo 5.4.1 client-config-default.json

Note that Abiquo will replace the api.location and api.version variables during the install process. 

 Click here to expand...
{
    "config.languages" : [
        {	
			"value":"en_US", 
			"name":"English", 
			"isDefault":true, 
			"lcid": "1033",
			"flagIconUrl": "theme/abicloudDefault/img/country_flags/united-states-of-america.svg"
		}
    ],
    "config.keymaps" : [
        {"value":"us", "name":"US English", "isDefault":true},
        {"value":"uk", "name":"UK English"},
        {"value":"es", "name":"Español"}
    ],

    "__comment": "Default values for autoscaling action.",
    "client.autoscaling.action.default": {
        "alarmOut": {
            "name": "SCALINGGROUPNAME_autoscaling_action_out",
            "statistic": "average",
            "formula": "greaterthan",
            "threshold": 80
        },
        "alarmIn": {
            "name": "SCALINGGROUPNAME_autoscaling_action_in",
            "statistic": "average",
            "formula": "lessthan",
            "threshold": 20
        },
        "alarm" : {
            "timeRangeMinutes": 60,
            "period": 60,
            "clientData": {}
        },
        "actionPlanOut": {
            "name": "SCALINGGROUPNAME_autoscaling_action_out"
        },
        "actionPlanIn": {
            "name": "SCALINGGROUPNAME_autoscaling_action_in"
        },
        "alertOut": {
            "name": "SCALINGGROUPNAME_autoscaling_action_out"
        },
        "alertIn": {
            "name": "SCALINGGROUPNAME_autoscaling_action_in"
        }
    },

    "__comment": "Icons to load on a template if it doesn't have an iconUrl. Strict osType compare.",
	"client.ostype.icon.CENTOS": "theme/abicloudDefault/img/icon-ostype-centos.png",
	"client.ostype.icon.CENTOS_64": "",
	"client.ostype.icon.DEBIAN": "theme/abicloudDefault/img/icon-ostype-debian.png",
	"client.ostype.icon.DEBIAN_64": "",
	"client.ostype.icon.ECOMSTATION_32": "",
	"client.ostype.icon.ESXI": "theme/abicloudDefault/img/icon-ostype-esx.png",
	"client.ostype.icon.FREEBSD": "",
	"client.ostype.icon.FREEBSD_64": "",
	"client.ostype.icon.LINUX": "theme/abicloudDefault/img/icon-ostype-linux.png",
	"client.ostype.icon.LINUX_2_4": "",
	"client.ostype.icon.LINUX_2_4_64": "",
	"client.ostype.icon.LINUX_2_6": "",
	"client.ostype.icon.LINUX_2_6_64": "",
	"client.ostype.icon.LINUX_64": "",
	"client.ostype.icon.MACOS": "",
	"client.ostype.icon.MANDRIVA": "theme/abicloudDefault/img/icon-ostype-mandriva.png",
	"client.ostype.icon.MANDRIVA_64": "",
	"client.ostype.icon.NETBSD": "theme/abicloudDefault/img/icon-ostype-netbsd.png",
	"client.ostype.icon.NOT_APPLICABLE": "",
	"client.ostype.icon.NOVELL_OES": "",
	"client.ostype.icon.OPENBSD": "theme/abicloudDefault/img/icon-ostype-openbsd.png",
	"client.ostype.icon.ORACLE_ENTERPRISE_LINUX": "theme/abicloudDefault/img/icon-ostype-oraclelinux.png",
	"client.ostype.icon.ORACLE_ENTERPRISE_LINUX_64": "theme/abicloudDefault/img/icon-ostype-oraclelinux.png",
	"client.ostype.icon.OTHER": "theme/abicloudDefault/img/icon-ostype-generic.png",
	"client.ostype.icon.OTHER_64": "",
	"client.ostype.icon.RHEL": "theme/abicloudDefault/img/icon-ostype-redhat.png",
	"client.ostype.icon.RHEL_64": "",
	"client.ostype.icon.SLES": "theme/abicloudDefault/img/icon-ostype-suse.png",
	"client.ostype.icon.SLES_64": "",
	"client.ostype.icon.SOLARIS": "",
	"client.ostype.icon.SOLARIS_64": "",
	"client.ostype.icon.SUSE": "theme/abicloudDefault/img/icon-ostype-suse.png",
	"client.ostype.icon.SUSE_64": "",
	"client.ostype.icon.TURBOLINUX": "theme/abicloudDefault/img/icon-ostype-turbolinux.png",
	"client.ostype.icon.TURBOLINUX_64": "theme/abicloudDefault/img/icon-ostype-turbolinux.png",
	"client.ostype.icon.UBUNTU": "theme/abicloudDefault/img/icon-ostype-ubuntu.png",
	"client.ostype.icon.UBUNTU_64": "",
	"client.ostype.icon.UNRECOGNIZED": "",
	"client.ostype.icon.WINDOWS": "theme/abicloudDefault/img/icon-ostype-windows.png",
	"client.ostype.icon.WINDOWS_7": "",
	"client.ostype.icon.WINDOWS_8": "",
	"client.ostype.icon.WINDOWS_8_64": "",
	"client.ostype.icon.WINDOWS_SERVER_2003": "",
	"client.ostype.icon.WINDOWS_SERVER_2003_64": "",
	"client.ostype.icon.WINDOWS_SERVER_2008": "",
	"client.ostype.icon.WINDOWS_SERVER_2008_64": "",
	"client.ostype.icon.WINDOWS_SERVER_2008_R2": "",
	"client.ostype.icon.WINDOWS_SERVER_2011": "",
	"client.ostype.icon.WINDOWS_SERVER_2012": "",

	"__comment": "client.ostype.icon marked as generic for osTypes (non osType strict compare). Example: WINDOWS_MYCUSTOM_VERSION will be solved as client.ostype.icon.WINDOWS",
	"client.ostype.icon.generics": [
        "CENTOS",
        "DEBIAN",
        "MANDRIVA",
		"LINUX",
		"OTHER",
        "RHEL",
        "SLES",
        "SUSE",
        "UBUNTU",
		"WINDOWS"
	],
    "config.protocols" : [
        {"value":"Custom protocol", "protocol":"", "port":"" },
        {"value":"Own TCP rule", "protocol":"TCP", "port":"" },
        {"value":"Own UDP rule", "protocol": "UDP", "port":"" },
        {"value":"All Traffic", "protocol":"ALL", "port":"ALL" },
        {"value":"All TCP", "protocol":"TCP", "port":"ALL" },
        {"value":"All UDP", "protocol":"UDP", "port":"ALL" },
        {"value":"All ICMP", "protocol":"ICMP", "port":"ALL" },
        {"value":"SSH", "protocol":"TCP", "port":22 },
        {"value":"SMTP", "protocol":"TCP",  "port":25 },
        {"value":"DNS", "protocol":"UDP", "port":53 },
        {"value":"HTTP", "protocol":"TCP",   "port":80 },
        {"value":"POP3", "protocol":"TCP",  "port":110 },
        {"value":"IMAP", "protocol":"TCP", "port":143 },
        {"value":"LDAP", "protocol":"TCP", "port":389 },
        {"value":"HTTPS", "protocol":"TCP", "port":443 },
        {"value":"SMTPS", "protocol":"TCP", "port":465 },
        {"value":"IMAPS", "protocol":"TCP", "port":993 },
        {"value":"POP3S", "protocol":"TCP", "port":995 },
        {"value":"MS SQL", "protocol":"TCP", "port":1433 },
        {"value":"MYSQL", "protocol":"TCP", "port":3306 },
        {"value":"RDP", "protocol":"TCP", "port":3389 },
        {"value":"Echo Request", "protocol":"ICMP", "port":8},
        {"value":"Echo Reply", "protocol":"ICMP", "port":0}
    ],
    "config.loadbalancerprotocols" : [
        {"value":"ALL", "protocol":"ALL", "port":0},
        {"value":"DNS_TCP", "protocol":"TCP", "port":53},
        {"value":"DNS_UDP", "protocol":"UDP", "port":53},
        {"value":"FTP", "protocol":"FTP", "port":21},
        {"value":"HTTP", "protocol":"HTTP", "port":80},
        {"value":"HTTPS", "protocol":"HTTPS", "port":443},
        {"value":"ICMP", "protocol":"ICMP", "port":""},
        {"value":"IMAPS", "protocol":"IMAPS", "port":993},
        {"value":"IMAPv2", "protocol":"IMAP", "port":143},
        {"value":"IMAPv3", "protocol":"IMAP", "port":220},
        {"value":"IMAPv4", "protocol":"IMAP", "port":143},
        {"value":"LDAP", "protocol":"LDAP", "port":389},
        {"value":"LDAPS", "protocol":"LDAPS", "port":636},
        {"value":"MYSQL", "protocol":"MYSQL", "port":3306},
        {"value":"POP3", "protocol":"POP3", "port":110},
        {"value":"POP3S", "protocol":"POP3S", "port":995},
        {"value":"SFTP", "protocol":"SFTP", "port":22},
        {"value":"SMTP", "protocol":"SMTP", "port":25},
        {"value":"TCP", "protocol":"TCP", "port":"" },
        {"value":"TCP_CLIENT_FIRST", "protocol":"TCP", "port":"" },
        {"value":"UDP", "protocol":"UDP", "port":"" },
        {"value":"UDP_STREAM", "protocol":"UDP", "port":"" },
        {"value":"SSL", "protocol":"SSL", "port":443 }
    ],
    "config.loadbalanceralgorithms" : ["ROUND_ROBIN","LEAST_CONNECTIONS","SOURCE_IP"],
    "config.loadbalancerroutingrulesprotocols" : ["TCP","HTTP","HTTPS"],
    "config.loadbalancerhealthcheckprotocols" : ["PING","TCP","HTTP","HTTPS"],
    "config.loadbalancerhealthcheck.default.interval" : "",
    "config.loadbalancerhealthcheck.default.timeout" : "",
    "config.loadbalancerhealthcheck.default.attempts" : "",
    "config.loadbalanceraddressessreuse" : false,
    "config.loadbalanceraddressessliteral": false,
    "config.loadbalanceraddressestype" : {},
    "config.loadbalancer.targetgrouphealthcheckprotocols" : [
        {"value":"HTTP", "protocol":"HTTP", "port":80},
        {"value":"HTTPS", "protocol":"HTTPS", "port":443},
        {"value":"TCP", "protocol":"TCP", "port":80 },
        {"value":"TLS", "protocol":"TLS", "port":443 },
        {"value":"UDP", "protocol":"UDP", "port":53 },
        {"value":"TCP_UDP", "protocol":"TCP_UDP", "port":53 },
        {"value":"GENEVE", "protocol":"GENEVE", "port":6081 }
    ],
    "config.monitoringstatistics" : [
        {"value":"average", "name":"Average"},
        {"value":"maximum", "name":"Maximum"},
        {"value":"minimum", "name":"Minimum"},
        {"value":"sum", "name":"Sum"},
        {"value":"count", "name":"Count"},
        {"value":"dev", "name":"Deviation"}
    ],
    "config.monitoringperiods" : [
        {"value":"hours", "name":"Hours"},
        {"value":"days", "name":"Days"}
    ],
    "egg.speak": "false",
    "config.endpoint": "${api.location}",
    "api.version":"${api.version}",
    "client.id":"abiquo_client_id",
    "client.license.warning.days.to.expire": 30,
    "client.backto.url": "",
    "client.modalblocker.timeout.milliseconds": 800,
    "client.themes" : [
        "abicloudDefault"
    ],
    "client.window.title": "Abiquo",
    "client.poweredby.hide" : false,
    "client.google.analytics.id":"UA-51859366-1",
    "client.google.analytics.url":"abiquo.com",
    "rdpaccess.usesslproxy":true,
    "client.captcha.publickey" : "",
    "client.external.js.loader.url" : "externaljsloadertemplate.html",
    "client.google.maps.enabled": true,
    "client.google.maps.key": "",
    "client.password.recovery": true,
    "client.remoteaccess.novnc.host": "",
    "client.remoteaccess.novnc.port": "41337",
    "client.offline":false,
    "config.enterprise.properties" : [],
    "config.enterprise.onlyuseproviders" : false,
    "client.backup.policies.poweredvmeditable": false,
    "client.backup.policies.multipleselectionallowed": false,
    "client.backup.restore.allowreplicabackuprestore": true,
    "client.debug.metrics.create": false,
    "client.module.tickets.enabled": false,
    "client.virtualmachine.services.patchingcycles.enabled": false,
    "client.virtualmachine.services.endpoint": "",
    "client.virtualmachine.services.translate.labels": ["title", "name", "stepLabel", "serviceDisplayText", "displayText", "description", "validationMessage", "placeholder"],
    "client.virtualmachine.services.translate.labels.filter": ["template", "helpvalue"],
    "client.virtualmachine.services.credentials.user": "",
    "client.virtualmachine.services.credentials.password": "",
    "client.virtualmachine.services.nodes.pagination.limit": 45,
    "client.virtualmachine.services.added.pagination.limit": 10,
    "client.skip.login.view": false,
    "client.header.link.usersmanagement":"",
    "client.footer.about.hide" : false,
    "client.footer.support.hide" : false,
    "client.wiki.version" : "doc",
    "client.classicfirewalls.enabled": false,
    "client.cookies.policy.url" : "https://www.abiquo.com/Privacy-Policy/ ",
    "client.cookies.cookiespolicy.url" : "",
    "client.header.externalurlicons": [],
    "client.asynctask.missingvars.schema": {
          "$schema" : "http://json-schema.org/draft-04/schema#",
          "type" : "object",
          "additionalProperties" : false,
          "properties" : {
            "nsx.gateway.network-id" : {
              "type" : "integer",
              "description" : "V(X)LAN tag for the uplink network"
            },
            "nsx.gateway.network" : {
              "type" : "string",
              "description" : "CIDR of the uplink network"
            },
            "nsx.gateway.datacenter" : {
              "type" : "integer",
              "description" : "Id of the datacenter where the uplink portgroup will be created"
            },
            "nsx.gateway.dvs" : {
              "type" : "integer",
              "description" : "Id of the distributed virtual switch where the uplink port group will be attached"
            },
            "nsx.gateway.bgp.as" : {
              "type" : "string",
              "description" : "BGP AS used in the gateway"
            },
            "nsx.edge.bgp.peers" : {
              "type" : "array",
              "items" : {
                "type" : "string"
              },
              "description" : "IP addresses for the BGP peers at the edge."
            },
            "nsx.edge.uplink.ips" : {
              "type" : "array",
              "items" : {
                "type" : "string"
              },
              "description" : "IP addresses for the ESG uplinks"
            },
            "nsx.edge.bgp.as" : {
              "type" : "string",
              "description" : "BGP AS used in the ESGs"
            },
            "nsx.edge.bgp.hold-down-timer" : {
              "type" : "integer",
              "description" : "Hold down time for edge BGP"
            },
            "nsx.edge.bgp.keep-alive-timer" : {
              "type" : "integer",
              "description" : "Keep alive time for edge BGP"
            },
            "nsx.edge.bgp.weight" : {
              "type" : "integer",
              "description" : "Weight for edge BGP"
            },
            "nsx.local.bgp.as" : {
              "type" : "string",
              "description" : "Local AS used in the internal BGP"
            },
            "nsx.local.bgp.hold-down-timer" : {
              "type" : "integer",
              "description" : "Hold down time for local BGP"
            },
            "nsx.local.bgp.keep-alive-timer" : {
              "type" : "integer",
              "description" : "Keep alive time for local BGP"
            },
            "nsx.local.bgp.weight" : {
              "type" : "integer",
              "description" : "Weight for local BGP"
            },
            "nsx.transit.network" : {
              "type" : "string",
              "description" : "Transit network"
            },
            "nsx.gateway.bgp.from-edge-password" : {
              "type" : "string",
              "description" : "Password for edge BGP"
            },
            "nsx.edge.bgp.from-local-password" : {
              "type" : "string",
              "description" : "Password for local BGP"
            },
            "nsx.virtualwire.teaming" : {
              "type" : "string",
              "enum" : [ "failover_explicit", "loadbalance_ip", "loadbalance_loadbased", "loadbalance_srcid", "loadbalance_srcmac" ],
              "description" : "VirtualWires teaming mode"
            },
            "nsx.edge.esg.size" : {
              "type" : "string",
              "enum" : [ "compact", "large", "quadlarge", "xlarge" ],
              "description" : "ApplianceSize for edge ESG"
            },
            "nsx.edge.dhcp.size" : {
              "type" : "string",
              "enum" : [ "compact", "large", "quadlarge", "xlarge" ],
              "description" : "ApplianceSize for edge DHCP"
            },
            "abiquo.nsxt.infra.dhcp-conf-name" : {
                "type" : "string",
                "description" : "Name of the NSX-T DHCP Profile used to create Tier-1 VPCs. NSX-T UI path is: Policy - Networking - IP Management - DCHP "
            },
            "abiquo.nsxt.infra.edge-cluster-name" : {
                "type" : "string",
                "description" : "Name of the NSX-T Edge Cluster used to create Tier-1 VPCs. NSX-T UI path is: Policy - System - Fabric - Nodes - Edge Clusters"
            },
            "abiquo.nsxt.infra.tier0-name" : {
                "type" : "string",
                "description" : "Name of the NSX-T Tier-0 used to create the Tier-1 VPCs. NSX-T UI path is: Policy - Networking - Tier-0 Gateway"
            },
            "abiquo.nsxt.infra.transport-zone-name" : {
                "type" : "string",
                "description" : "Name of the NSX-T Transport Zone (overlay) used to create segments / networks. NSX-T UI path is: Policy - System - Fabric - Transport Zones"
            },
            "abiquo.nsxt.infra.tier0-external-ip" : {
                "type" : "string",
                "description" : "External IP used by the Tier-0"
            }
        }
    },
    "client.dashboard.widgets.defaultvalues": {
        "maxCPU": 80,
        "maxRAM": 80,
        "minCPU": 30,
        "minRAM": 30
    },
    "client.dashboard.widgets.mindaysdeployed": 90,
    "client.dashboard.widgets.lastbills.lastmonths": 5,
    "client.dashboard.widgets.lastbills.currenciesconversions": [
    {
        "currencyCode": "USD",
        "symbol": "$",
        "conversions": [
        {
            "currencyCode": "EUR",
            "values":[
            {
                "month": "default",
                "value": 1.1
            }]

        }]
    },
    {
        "currencyCode": "EUR",
        "symbol": "€",
        "conversions": [
        {
            "currencyCode": "USD",
            "values":[
            {
                "month": "default",
                "value": 0.9
            }]
        }]
    }],
    "client.dashboard.widgets.lastbills.additionalproviders": [],
    "client.dashboard.widgets.availableitems": [
    {
        "name":"enterpriseresources",
        "available": true    
    },
    {
        "name":"virtualdatacenters",
        "available": true    
    },
    {
        "name":"virtualappliances",
        "available": true    
    },
    {
        "name":"virtualmachines",
        "available": true    
    },
    {
        "name":"virtualmachineslastdeployed",
        "available": true    
    },
    {
        "name":"alerts",
        "available": true    
    },
    {
        "name":"events",
        "available": true    
    },
    {
        "name":"monitoring",
        "available": true    
    },
    {
        "name":"lastbills",
        "available": true    
    },
    {
        "name":"estimatedbills",
        "available": true    
    },
    {
        "name":"workload",
        "available": true    
    },
    {
        "name":"virtualmachinescount",
        "available": true    
    },
    {
        "name":"resourceusage",
        "available": true    
    },
    {
        "name":"virtualmachinesmosttimeon",
        "available": true    
    },
    {
        "name":"publicips",
        "available": true    
    },
    {
        "name":"loadbalancers",
        "available": true    
    },
    {
        "name":"budget",
        "available": true    
    },
    {
        "name":"idlevolumes",
        "available": true    
    },
    {
        "name":"abstractdatastoretiers",
        "available": true    
    }],
    "client.budget.currencies": [
        {"label": "€", "value": "EUR"}
    ],
    
    "__comment": "Example with all login modules available:",
    "---client.login.modules": [
        {
            "label": "Basic Auth",
            "description": "Basic Auth login",
            "templateUrl": "modules/login/authenticationmodules/basicauthentication/partials/basicauthenticationloginview.html",
            "cookieName": ""
        },
        {
            "label": "Open ID",
            "description": "Open ID login",
            "templateUrl": "modules/login/authenticationmodules/openid/partials/openidloginview.html",
            "cookieName": "ABQOIDCTOKENS"
        },
        {
            "label": "SAML",
            "description": "SAML login",
            "templateUrl": "modules/login/authenticationmodules/saml/partials/samlloginview.html",
            "cookieName": "ABQSAMLTOKENS"
        },
        {
            "label": "SAML + user",
            "description": "SAML login with user domain",
            "templateUrl": "modules/login/authenticationmodules/samlform/partials/samlformloginview.html",
            "cookieName": "ABQSAMLTOKENS"
        }
    ],
    "client.login.modules": [
        {
            "label": "Basic Auth",
            "description": "Basic Auth login",
            "templateUrl": "modules/login/authenticationmodules/basicauthentication/partials/basicauthenticationloginview.html",
            "cookieName": ""
        }
    ],
    "client.2fa.activated":true,
    "client.vm.datastoretiers.useonlyrecommended": false,
    "client.publiccredentials.accountsinfo": {
        "AMAZON": {
            "portalLink": "https://aws.amazon.com/",
            "accountInfo": ["accountnumber"]           
        },
        "azurecompute-arm": {
            "portalLink": "https://azure.microsoft.com/en-us/features/azure-portal/",
            "separator":"#",
            "accountInfo": ["subscriptionid", "appid", "tenantid"]         
        },
        "VCD": {
            "portalLink": "https://e1c.etisalatdigital.ae/",
            "accountInfo": ["organizationname"]           
        }
    },
    "client.createvmpopup.button.enabled": true,
    "client.monitoring.button.alwaysdisplayed": true
}

More configuration pages

Other pages in this section describe more UI configuration.

Copyright © 2006-2022, Abiquo Holdings SL. All rights reserved