Difference between revisions of "ProxCP Admin - LXC"

From ProxCP Documentation
Line 1: Line 1:
 
== LXC Templates ==
 
== LXC Templates ==
  
Before creating a new LXC service, you must add one or more LXC templates to ProxCP. Proxmox provides a bunch of pre-made LXC templates available for download.
+
Before creating a new LXC service, you must add one or more LXC templates to ProxCP. Proxmox provides a bunch of pre-made LXC templates available for download or you can make your own. ProxCP does not supply any LXC templates as the Proxmox-specific templates are preferred.
  
To add a LXC template, click ADMIN > Manage LXC Templates. In the Friendly Name field, enter a name for the template such as "CentOS 7". In the volume ID field, enter the volume ID of the template. The format for this is {storage_name}:vztmpl/{file_name}. For example, if the LXC template was stored in the "local-lvm" Proxmox storage, the volume ID would be local-lvm:vztmpl/template.tar.gz.
+
To add a LXC template, click ''ADMIN > LXC > Manage LXC Templates''. This page will scan your first Proxmox node for LXC templates that are not yet added in ProxCP then allow you to add them.
  
 
ProxCP assumes that all LXC templates are available on all added Proxmox nodes.
 
ProxCP assumes that all LXC templates are available on all added Proxmox nodes.
 +
 +
Alternatively, you can add LXC templates manually. In the Friendly Name field, enter a name for the template such as "CentOS 7". In the volume ID field, enter the volume ID of the template. The format for this is {storage_name}:vztmpl/{file_name}. For example, if the LXC template was stored in the "local-lvm" Proxmox storage, the volume ID would be local-lvm:vztmpl/template.tar.gz.
  
 
== LXC Creation ==
 
== LXC Creation ==
  
ADMIN > Manage LXC
+
''ADMIN > LXC > Manage LXC''
  
* '''User ID:''' which user should this service be assigned to? You can find user IDs on the ADMIN > Manage Users page
+
* '''User ID:''' which user should this service be assigned to?
* '''Billing Account ID:''' What is the billing ID of this service? Generally, this should be synced with a service/account/billing ID from a billing platform like Hostbill, WHMCS, or Blesta but it can be any unique number
+
* '''Billing Account ID:''' what is the billing ID of this service? Generally, this should be synced with a service/account/billing ID from a billing platform like WHMCS or Blesta but it can be any globally unique number
* '''Pool ID:''' name of the Proxmox pool that should be created and used for this VPS. This can be in any format, but we recommend "client_{client_id}_{service_id}" such as "client_104_2"
+
* '''Pool ID:''' name of the Proxmox pool that should be created and used for this VPS. This can be in any format, but we recommend "client_{client_id}_{billing_id}" such as "client_104_2". This value should also be globally unique
 
* '''Node:''' which Proxmox node should this VPS be placed on?
 
* '''Node:''' which Proxmox node should this VPS be placed on?
 
* '''LXC Hostname:''' the arbitrary hostname of this VPS
 
* '''LXC Hostname:''' the arbitrary hostname of this VPS
 
* '''Operating System:''' the LXC template that should be used
 
* '''Operating System:''' the LXC template that should be used
 
* '''Operating System Type:''' the LXC template type
 
* '''Operating System Type:''' the LXC template type
 +
* '''LXC Nat Enabled:''' is this service NAT-enabled?
 +
** '''NAT Public Ports:''' how many NAT ports should this NAT service be allowed to use?
 +
** '''NAT Domain Forwarding:''' how many NAT domains should this NAT service be allowed to have?
 
* '''IPv4:''' the IPv4 address assigned to this VPS in CIDR format
 
* '''IPv4:''' the IPv4 address assigned to this VPS in CIDR format
 
* '''IPv4 Gateway:''' the IPv4 gateway that should be used
 
* '''IPv4 Gateway:''' the IPv4 gateway that should be used
Line 26: Line 31:
 
* '''LXC Storage Size:''' how big should the virtual disk for this VPS be?
 
* '''LXC Storage Size:''' how big should the virtual disk for this VPS be?
 
* '''LXC Bandwidth Limit:''' how much bandwidth should this VPS get each month?
 
* '''LXC Bandwidth Limit:''' how much bandwidth should this VPS get each month?
 +
* '''Network Speed Limit:''' optionally set a network speed limit on this service
 +
* '''MAC Address:''' optionally set your own MAC address for this service instead of a randomly generated MAC address
  
 
== LXC TUN/TAP ==
 
== LXC TUN/TAP ==
  
It may be convenient to allow your users to enable/disable the TUN/TAP interface on LXC services by themselves in ProxCP. Proxmox does not provide a convenient way to do this therefore ProxCP requires special permissions to do this. You can add those permissions on the ADMIN > Manage LXC TUN/TAP page. More details are shown there too.
+
It may be convenient to allow your users to enable/disable the TUN/TAP interface on LXC services by themselves in ProxCP. Proxmox does not provide a convenient way to do this therefore ProxCP requires special permissions to do this. You can add those permissions on the ''ADMIN > Settings > Manage Node SSH'' page. More details are shown there too.

Revision as of 15:44, 22 July 2020

LXC Templates

Before creating a new LXC service, you must add one or more LXC templates to ProxCP. Proxmox provides a bunch of pre-made LXC templates available for download or you can make your own. ProxCP does not supply any LXC templates as the Proxmox-specific templates are preferred.

To add a LXC template, click ADMIN > LXC > Manage LXC Templates. This page will scan your first Proxmox node for LXC templates that are not yet added in ProxCP then allow you to add them.

ProxCP assumes that all LXC templates are available on all added Proxmox nodes.

Alternatively, you can add LXC templates manually. In the Friendly Name field, enter a name for the template such as "CentOS 7". In the volume ID field, enter the volume ID of the template. The format for this is {storage_name}:vztmpl/{file_name}. For example, if the LXC template was stored in the "local-lvm" Proxmox storage, the volume ID would be local-lvm:vztmpl/template.tar.gz.

LXC Creation

ADMIN > LXC > Manage LXC

  • User ID: which user should this service be assigned to?
  • Billing Account ID: what is the billing ID of this service? Generally, this should be synced with a service/account/billing ID from a billing platform like WHMCS or Blesta but it can be any globally unique number
  • Pool ID: name of the Proxmox pool that should be created and used for this VPS. This can be in any format, but we recommend "client_{client_id}_{billing_id}" such as "client_104_2". This value should also be globally unique
  • Node: which Proxmox node should this VPS be placed on?
  • LXC Hostname: the arbitrary hostname of this VPS
  • Operating System: the LXC template that should be used
  • Operating System Type: the LXC template type
  • LXC Nat Enabled: is this service NAT-enabled?
    • NAT Public Ports: how many NAT ports should this NAT service be allowed to use?
    • NAT Domain Forwarding: how many NAT domains should this NAT service be allowed to have?
  • IPv4: the IPv4 address assigned to this VPS in CIDR format
  • IPv4 Gateway: the IPv4 gateway that should be used
  • IPv4 Netmask: the IPv4 netmask that should be used
  • LXC CPU Cores: how many CPU cores should this VPS have?
  • LXC RAM: how much RAM should this VPS have?
  • LXC Storage Location: where should the virtual disk for this VPS be located?
  • LXC Storage Size: how big should the virtual disk for this VPS be?
  • LXC Bandwidth Limit: how much bandwidth should this VPS get each month?
  • Network Speed Limit: optionally set a network speed limit on this service
  • MAC Address: optionally set your own MAC address for this service instead of a randomly generated MAC address

LXC TUN/TAP

It may be convenient to allow your users to enable/disable the TUN/TAP interface on LXC services by themselves in ProxCP. Proxmox does not provide a convenient way to do this therefore ProxCP requires special permissions to do this. You can add those permissions on the ADMIN > Settings > Manage Node SSH page. More details are shown there too.