Install and configure billing packages
You will need a server with MariaDB running with access to the Abiquo API, Abiquo database, and public cloud providers.
- Install the "abiquo-billing-arm" package
Create the local billing databases for Azure and import schemas
mysql -e "create database arm_billing" mysql -h -p -u arm_billing < /opt/abiquo-billing-arm/lib/app/schema.sql
Grant privileges to a user for the local billing databases
Configure the billing packages, edit the config.yml file. By default for Azure, this is file is located at /opt/abiquo-billing-arm/config/config.yml and the following example file shows the values that you must replace.
abiquo_database: host: 10.10.10.36 user: user password: password port: 3306 billing_database: host: 10.10.10.38 user: user password: password port: 3306 abiquo: api_url: http://10.10.10.32/api user: admin password: xabiquo seed:
Notes:The billing database is the one you created in the above steps, so it can be hosted on localhost
"seed" is the name of a custom seed that encrypts the Abiquo database. Copy the custom seed into the same directory as the config.yml file for each provider
- For the Abiquo database, grant select privileges from this host to the abiquo_database user that will run the billing scripts
Configure CSP accounts
If your tenants use a CSP account, do the following steps:
Create a CSP billing configuration file at the following location:
/opt/abiquo-billing-arm/lib/app/config/csp.yml
Add the billing credentials for the CSP subscription used by each tenant. Create a unique random string to use as a tenant key for each entry.
4caba317: token_expender: https://login.windows.net/reseller.onmicrosoft.com/oauth2/token?api-version=2.1 username: 'brokermulticloud@csp.onmicrosoft.com' password: 'Password' client_id: 'A1CD905A-C9AA-418B-8BD1-62BEA2CC3622' grant_type: 'password' resource: 'https://api.partnercenter.microsoft.com' scope: 'openid profile'
- In Abiquo, edit the enterprise and create the following enterprise properties:
- "OfferDurableID" with the value of the CSP subscription and the tenant in the format "CSP_ID_[UUID_key_from_csp.yml_file]". So from the above example, for the tenant with ID 4caba317, this would be CSP_ID_4caba317.
- "CSP_discount" with the value of the discount applied by Azure to partner providers. To find the PVP, the values on the bills must be divided by (1- CSP_discount). The default is 0.15.
- "CSP_PriceFactor" with the value of the discount applied by the partner to the end user. The default value is 1.
Configure standard Azure accounts
If your tenant has a standard Azure account, do the following steps first.
- Grant access to billing records to the app role created in Azure for your account
- Obtain the OfferDurableID from the offer agreement for your enterprise by going to your subscription → Administer
- Also obtain the Currency, Locale, and RegionInfo.
- In Abiquo and create the following enterprise properties:
- "OfferDurableID" with the value from your subscription, e.g., "MS-AZR-0003P"
- "Currency", the default is "USD"
- "Locale", the default is "en-US"
- "RegionInfo", the default is "US", which is a two digit ISO code representing the country where you purchased the subscription
Complete user configuration in Abiquo
- In Abiquo, check that the Abiquo API user has the Manage bills privilege
- Assign Abiquo users the privileges to Display hybrid dashboard tab, View bills, and optionally to Display VM cost view widget (hybrid tab). See Configure dashboard display