Child pages
  • Manage Billing Entity

This documentation is for a previous version of Flexiant Cloud Orchestrator. The most recent version is v5.0. For the most recent documentation please see here

Skip to end of metadata
Go to start of metadata

 

The Manage Billing Entity dialog shows more details about an individual Billing Entity.  From here you can make any modification or status changes to the Billing Entity required.

From this page the user can edit the following information about a Billing Entity

  • Name
  • Control panel web site address (this must begin with the text 'https://')
  • Admin control panel web site address (this must begin with the text 'https://')
  • Address
  • VAT/Tax Number

IP, DNS and Port management for Billing Entities

Flexiant Cloud Orchestrator supports three mechanisms for using multiple billing entities:

  1. Each Billing Entity has its own fully qualified domain name (FQDN) for the control panel and the admin control panel (e.g. cp.example.com and admincp.example.com). These share the same IP address, which is also shared by other Billing Entities on the same platform. The end user or admin user accesses the control panel using a URL like http://cp.example.com/ or http://admincp.example.com/ (over http on port 80), which (by looking at the URL passed) redirects the user to an https URL. Each of the https URLs run on a different port. For instance, the following table might describe the redirections:

    HTTP URLIP:portHTTPS URLIP:port
    http://cp.example.com192.200.0.1:80https://cp.example.com192.200.0.1:443
    http://admincp.example.com192.200.0.1:80https://admincp.example.com:1443192.200.0.1:1443
    http://cp.example2.com192.200.0.1:80https://cp.example2.com:444192.200.0.1:444
    http://admincp.example2.com192.200.0.1:80https://admincp.example2.com:1444192.200.0.1:1444
  2. Each Billing Entity has its own fully qualified domain name (FQDN) for the control panel and the admin control panel (e.g. cp.example.com and admincp.example.com). These have individual IP addresses, which are also not shared by other Billing Entities on the same platform. The end user or admin user accesses the control panel using a URL like http://cp.example.com/ or http://admincp.example.com/ (over http on port 80), which (by looking at the URL passed) redirects the user to an https URL. Each of the https URLs run on a the same port. For instance, the following table might describe the redirections:

    HTTP URLIP:portHTTPS URLIP:port
    http://cp.example.com192.200.0.1:80https://cp.example.com192.200.0.1:443
    http://admincp.example.com192.200.0.1:80https://admincp.example.com192.200.0.2:443
    http://cp.example2.com192.200.0.1:80https://cp.example2.com192.200.0.3:443
    http://admincp.example2.com192.200.0.1:80https://admincp.example2.com192.200.0.4:443
  3. A combination of 1 and 2. Each Billing Entity has its own fully qualified domain name (FQDN) for the control panel and the admin control panel (e.g. cp.example.com and admincp.example.com). These might share the same IP address or might not. This might also be shared by other Billing Entities on the same platform. The end user or admin user accesses the control panel using a URL like http://cp.example.com/ or http://admincp.example.com/ (over http on port 80), which (by looking at the URL passed) redirects the user to an https URL. Where an https IP address is shared, the URLs run on a different port. For instance, the following table might describe the redirections:

    HTTP URLIP:portHTTPS URLIP:portComment
    http://cp.example.com192.200.0.1:80https://cp.example.com192.200.0.1:443192.200.0.1 shared across first two BEs
    http://admincp.example.com192.200.0.1:80https://admincp.example.com:1443192.200.0.1:1443192.200.0.1 shared across first two BEs
    http://cp.example2.com192.200.0.1:80https://cp.example2.com:444192.200.0.1:444192.200.0.1 shared across first two BEs
    http://admincp.example2.com192.200.0.1:80https://admincp.example.com:1444192.200.0.1:1444192.200.0.1 shared across first two BEs
    http://cp.example3.com192.200.0.1:80https://cp.example3.com192.200.0.2:443192.200.0.2 dedicated to example3 but shared between services
    http://admincp.example3.com192.200.0.1:80https://admincp.example3.com:1443192.200.0.2:1443192.200.0.2 dedicated to example3 but shared between services
    http://cp.example4.com192.200.0.1:80https://cp.example4.com192.200.0.3:443192.200.0.3 dedicated to example4 customer cp
    http://admincp.example4.com192.200.0.1:80https://admincp.example4.com192.200.0.4:443192.200.0.4 dedicated to example4 admin cp

The advantage of mode 1 is simplicity. It is only necessary to add your own DNS. Flexiant Cloud Orchestrator will do the rest for you. The advantage of route 2 is that as all secure services run on port 443, you will have fewer problems with outbound firewall restrictions at customer sites. Route 3 gives a compromise, but allows for more possibilities for error.

Flexiant Cloud Orchestrator automatically supports all of these modes of operation. You do not need to tell it which mode you are using. However, you must ensure that you do not configure two billing entities with the domain names which resolve to the same IP address if they also share the same secure port, or one of them will not work. There is no restriction on them sharing the same IP and using the same port (80) for redirects.

Whichever mode you are using, ensure that no two secure billing entity URLs share the same port and the same IP (or names that resolve to the same IP).

The address to use for Manage Billing Entity is the full HTTPS URL including the port number (unless you are using port 443, i.e. the default port). In the examples above, this would be the data in the column headed 'HTTPS URL'. So, in the first example, the URL to use for AdminCP for the first BE would be https://admincp.example.com:1443

 

Flexiant Cloud Orchestrator will automatically generate the redirects (i.e. the HTTP URLs above) to the correct HTTPS URL.

Managing your DNS

Whatever method you uses, you need to ensure that appropriate DNS entries are generated for your billing entities. You will want DNS entries for both the customer cp and the admin cp. These can point at either an existing interface (if you are using mode 1 above) or a new interface (if you are using mode 2 above), or either (if you are using mode 3).

Using NAT

Flexiant Cloud Orchestrator determines the IP addresses on which to listen using DNS. So, if you specify a URL of https://cp.example.com//, and cp.example.com looks up to 192.200.0.1, Flexiant Cloud Orchestrator will look up cp.example.com in DNS and conclude it should listen on IP address 192.200.0.1. This assumption is almost always correct. However, in some advanced configurations this assumption does not work. For instance, if the control panel concerned is behind a NATing firewall, the external IP address might be 192.200.0.1, but the internal IP address (on which the server should listen) is 10.100.100.1. In this case, Flexiant Cloud Orchestrator has no way of knowing that it should listen on 10.100.100.1 rather than 192.200.0.1. You can specify this manually by using the /etc/extility/amber/hosts.override file, which overrides hosts lookup when building the apache configuration, and makes Flexiant Cloud Orchestrator listen on the specified IP address. The format is broadly the same as the /etc/hosts file. In this instance, the relevant entry would be:

 
10.100.100.1 cp.example.com
 

Managing your network interface configuration

If you are using mode 2 above, or mode 3 with a new network interface, you will also need to add a new network interface to the machine. Use the standard Ubuntu techniques to do this. In brief:

  1. Find an unused IP in the range allocated for the management server.
     
  2. Still on the management server go to /etc/network.
     
  3. Edit the /etc/network/interfaces file on FCO management server.
     

  4. Add an entry similar to the following to the bottom of the file
     


    auto eth0:1
    iface eth0:1 inet static
            address 192.200.0.2
            netmask 255.255.255.0
  5. Adjust the above such that:
    1. The characters before the colon interface name ('eth0:1' above) represent the correct outbound facing interface
    2. The number 1 (in 'eth0:1' ) is unique and in sequence
    3. The interface name is the same in both places
    4. The IP address is a unique IP address on the same IP range as the existing entry
    5. The netmask matches the netmask you are using.
       
  6. Save the changes
     
  7. Bring the interface up by typing the following (substituting the interface name used)

    ifup eth0:1

It is worthwhile testing the CP and AdminCP URLs with the Fully Qualified Domain Name (FQDN) and the numeric IP URL to ensure that each Billing Entity is pointing at the correct Control Panel.

Important Considerations

The control panel URLs must begin with 'https://'.

If you add or change billing entity URLs, then you must rebuild the configuration - see Rebuilding Config.

Billing entity web sites will not be configured or function properly unless the DNS settings for the URL point to the control panel machine in question.

As the control panel sites are accessed over a secure connection using the https protocol, they need an SSL certificate to function correctly. Flexiant Cloud Orchestrator will generate a 'self-signed' certificate if no certificate exists. These self-signed certificates are not signed by a trusted certification authority, and thus will produce security warnings on browsers. The certificate public and private keys are held in /etc/extility/ssl/certs and /etc/extility/ssl/private (for the public and private components of the certificate respectively). They will be named with file names similar to 'extility-amber-custcp-01aa0c54-bb52-3554-8137-bb217059f78a.crt' and 'extility-amber-admincp-fc3913bb-58c8-3cab-8f28-c86d56322512.crt', the filename indicating the customer control panel or the admin control panel, and the UUID of the billing entity. You can replace these with your own certificate. If the host name for the customer and admin control panels is the same, you can use the same certificate for each. We strongly recommend you keep a master copy of the certificate somewhere other than on the machine in question.

 

The Manage Billing Entity dialog also has a number of subsections, which can be used to display and manage information related to the Billing Entity:

Admin Customers Section

This section shows a list of customers who are Administrators of that Billing Entity.  You can click on the Manage dialog next to one to manage that customer if required.

 

Default Customer Section

The default customer section specifies the UUID of the default customer.  Any new customers that are created automatically copy their settings such as tabs, widgets, limits etc, from the default customer.  This makes it very easy for Billing Entities to customise the default look and feel for their customers.

 

Branding Section

The Branding section allows the user to specify the various branding settings for that Billing Entity, they are as follows:

  • Colours
  • Header Logo
  • Login Splash Logo
  • Admin Login Splash Logo
  • Custom Javascript
  • Custom CSS

Payment Processing

The payment processing section allows Billing Entities to define what Payment methods and processes will be used

Image Fields

The Image fields section takes a JSON encoded list of variables which can be used to describe Images available in that Billing Entity.  This is to allow the Billing Entity to customise how images are represented.


Typical examples are:

  • Operating System
  • Version
  • Publisher
  • Category

Related Resources & UUIDs Section

This section allows you to see all resources which have a direct relationship with the resource you are managing and their UUIDs.  Where relevant there is also links to the Manage Dialog for that particular resource.

UUIDs are useful if you are wanting to interact with a resource at the API level, or if you have a support request regarding a specific resource.

Keys Section

Keys are one of the key areas in which Extility allows the end user to view, manage and manipulate their resources.  A full explanation of keys and their usage is available here

The Keys section allows you to add and remove Keys, values and weights (if applicable) to any particular resource

  • No labels